# Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@

# Copyright (C) 1994-2014 Free Software Foundation, Inc.

# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

@SET_MAKE@

VPATH = @srcdir@
am__is_gnu_make = { \
  if test -z '$(MAKELEVEL)'; then \
    false; \
  elif test -n '$(MAKE_HOST)'; then \
    true; \
  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
    true; \
  else \
    false; \
  fi; \
}
am__make_running_with_option = \
  case $${target_option-} in \
      ?) ;; \
      *) echo "am__make_running_with_option: internal error: invalid" \
              "target option '$${target_option-}' specified" >&2; \
         exit 1;; \
  esac; \
  has_opt=no; \
  sane_makeflags=$$MAKEFLAGS; \
  if $(am__is_gnu_make); then \
    sane_makeflags=$$MFLAGS; \
  else \
    case $$MAKEFLAGS in \
      *\\[\ \	]*) \
        bs=\\; \
        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
    esac; \
  fi; \
  skip_next=no; \
  strip_trailopt () \
  { \
    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
  }; \
  for flg in $$sane_makeflags; do \
    test $$skip_next = yes && { skip_next=no; continue; }; \
    case $$flg in \
      *=*|--*) continue;; \
        -*I) strip_trailopt 'I'; skip_next=yes;; \
      -*I?*) strip_trailopt 'I';; \
        -*O) strip_trailopt 'O'; skip_next=yes;; \
      -*O?*) strip_trailopt 'O';; \
        -*l) strip_trailopt 'l'; skip_next=yes;; \
      -*l?*) strip_trailopt 'l';; \
      -[dEDm]) skip_next=yes;; \
      -[JT]) skip_next=yes;; \
    esac; \
    case $$flg in \
      *$$target_option*) has_opt=yes; break;; \
    esac; \
  done; \
  test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
@SIMD_POWERPC_TRUE@am__append_1 = libsimd_altivec.la
subdir = simd
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
	$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h $(top_builddir)/jconfig.h \
	$(top_builddir)/jconfigint.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LTLIBRARIES = $(noinst_LTLIBRARIES)
@SIMD_POWERPC_TRUE@libsimd_la_DEPENDENCIES = libsimd_altivec.la
am__libsimd_la_SOURCES_DIST = jsimd_arm64.c jsimd_arm64_neon.S \
	jsimd_arm.c jsimd_arm_neon.S jsimd_i386.c jsimd.h \
	jsimdcfg.inc.h jsimdext.inc jcolsamp.inc jdct.inc \
	jpeg_nbits_table.inc jsimdcpu.asm jfdctflt-3dn.asm \
	jidctflt-3dn.asm jquant-3dn.asm jccolor-mmx.asm jcgray-mmx.asm \
	jcsample-mmx.asm jdcolor-mmx.asm jdmerge-mmx.asm \
	jdsample-mmx.asm jfdctfst-mmx.asm jfdctint-mmx.asm \
	jidctfst-mmx.asm jidctint-mmx.asm jidctred-mmx.asm \
	jquant-mmx.asm jfdctflt-sse.asm jidctflt-sse.asm \
	jquant-sse.asm jccolor-sse2.asm jcgray-sse2.asm \
	jchuff-sse2.asm jcsample-sse2.asm jdcolor-sse2.asm \
	jdmerge-sse2.asm jdsample-sse2.asm jfdctfst-sse2.asm \
	jfdctint-sse2.asm jidctflt-sse2.asm jidctfst-sse2.asm \
	jidctint-sse2.asm jidctred-sse2.asm jquantf-sse2.asm \
	jquanti-sse2.asm jsimd_mips.c jsimd_mips_dspr2_asm.h \
	jsimd_mips_dspr2.S jsimd_powerpc.c jsimd_altivec.h jcsample.h \
	jsimd_x86_64.c jfdctflt-sse-64.asm jccolor-sse2-64.asm \
	jcgray-sse2-64.asm jchuff-sse2-64.asm jcsample-sse2-64.asm \
	jdcolor-sse2-64.asm jdmerge-sse2-64.asm jdsample-sse2-64.asm \
	jfdctfst-sse2-64.asm jfdctint-sse2-64.asm jidctflt-sse2-64.asm \
	jidctfst-sse2-64.asm jidctint-sse2-64.asm jidctred-sse2-64.asm \
	jquantf-sse2-64.asm jquanti-sse2-64.asm
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@am_libsimd_la_OBJECTS = jsimd_x86_64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jfdctflt-sse-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jccolor-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jcgray-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jchuff-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jcsample-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jdcolor-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jdmerge-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jdsample-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jfdctfst-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jfdctint-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jidctflt-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jidctfst-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jidctint-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jidctred-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jquantf-sse2-64.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_FALSE@@SIMD_X86_64_TRUE@	jquanti-sse2-64.lo
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_FALSE@@SIMD_POWERPC_TRUE@am_libsimd_la_OBJECTS = jsimd_powerpc.lo
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_TRUE@am_libsimd_la_OBJECTS = jsimd_mips.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_FALSE@@SIMD_MIPS_TRUE@	jsimd_mips_dspr2.lo
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@am_libsimd_la_OBJECTS = jsimd_i386.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jsimdcpu.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jfdctflt-3dn.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctflt-3dn.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jquant-3dn.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jccolor-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jcgray-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jcsample-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jdcolor-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jdmerge-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jdsample-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jfdctfst-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jfdctint-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctfst-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctint-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctred-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jquant-mmx.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jfdctflt-sse.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctflt-sse.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jquant-sse.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jccolor-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jcgray-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jchuff-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jcsample-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jdcolor-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jdmerge-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jdsample-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jfdctfst-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jfdctint-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctflt-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctfst-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctint-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jidctred-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jquantf-sse2.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_FALSE@@SIMD_I386_TRUE@	jquanti-sse2.lo
@SIMD_ARM_64_FALSE@@SIMD_ARM_TRUE@am_libsimd_la_OBJECTS =  \
@SIMD_ARM_64_FALSE@@SIMD_ARM_TRUE@	jsimd_arm.lo \
@SIMD_ARM_64_FALSE@@SIMD_ARM_TRUE@	jsimd_arm_neon.lo
@SIMD_ARM_64_TRUE@am_libsimd_la_OBJECTS = jsimd_arm64.lo \
@SIMD_ARM_64_TRUE@	jsimd_arm64_neon.lo
libsimd_la_OBJECTS = $(am_libsimd_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 = 
libsimd_altivec_la_LIBADD =
am__libsimd_altivec_la_SOURCES_DIST = jccolor-altivec.c \
	jcgray-altivec.c jcsample-altivec.c jdcolor-altivec.c \
	jdmerge-altivec.c jdsample-altivec.c jfdctfst-altivec.c \
	jfdctint-altivec.c jidctfst-altivec.c jidctint-altivec.c \
	jquanti-altivec.c
@SIMD_POWERPC_TRUE@am_libsimd_altivec_la_OBJECTS =  \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jccolor-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jcgray-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jcsample-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jdcolor-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jdmerge-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jdsample-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jfdctfst-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jfdctint-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jidctfst-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jidctint-altivec.lo \
@SIMD_POWERPC_TRUE@	libsimd_altivec_la-jquanti-altivec.lo
libsimd_altivec_la_OBJECTS = $(am_libsimd_altivec_la_OBJECTS)
libsimd_altivec_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
	$(libsimd_altivec_la_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
@SIMD_POWERPC_TRUE@am_libsimd_altivec_la_rpath =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo "  GEN     " $@;
am__v_GEN_1 = 
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 = 
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS)
LTCPPASCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=compile $(CCAS) $(DEFS) \
	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
	$(AM_CCASFLAGS) $(CCASFLAGS)
AM_V_CPPAS = $(am__v_CPPAS_@AM_V@)
am__v_CPPAS_ = $(am__v_CPPAS_@AM_DEFAULT_V@)
am__v_CPPAS_0 = @echo "  CPPAS   " $@;
am__v_CPPAS_1 = 
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
	$(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo "  CC      " $@;
am__v_CC_1 = 
CCLD = $(CC)
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo "  CCLD    " $@;
am__v_CCLD_1 = 
SOURCES = $(libsimd_la_SOURCES) $(libsimd_altivec_la_SOURCES)
DIST_SOURCES = $(am__libsimd_la_SOURCES_DIST) \
	$(am__libsimd_altivec_la_SOURCES_DIST)
am__can_run_installinfo = \
  case $$AM_UPDATE_INFO_DIR in \
    n|no|NO) false;; \
    *) (install-info --version) >/dev/null 2>&1;; \
  esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates.  Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
  BEGIN { nonempty = 0; } \
  { items[$$0] = 1; nonempty = 1; } \
  END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique.  This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
  list='$(am__tagged_files)'; \
  unique=`for i in $$list; do \
    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BUILD = @BUILD@
CC = @CC@
CCAS = @CCAS@
CCASDEPMODE = @CCASDEPMODE@
CCASFLAGS = @CCASFLAGS@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEBARCH = @DEBARCH@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JAR = @JAR@
JAVA = @JAVA@
JAVAC = @JAVAC@
JAVACFLAGS = @JAVACFLAGS@
JAVA_RPM_CONTENTS_1 = @JAVA_RPM_CONTENTS_1@
JAVA_RPM_CONTENTS_2 = @JAVA_RPM_CONTENTS_2@
JNI_CFLAGS = @JNI_CFLAGS@
JPEG_LIB_VERSION = @JPEG_LIB_VERSION@
JPEG_LIB_VERSION_DECIMAL = @JPEG_LIB_VERSION_DECIMAL@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIBTOOL_CURRENT = @LIBTOOL_CURRENT@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MEM_SRCDST_FUNCTIONS = @MEM_SRCDST_FUNCTIONS@
MKDIR_P = @MKDIR_P@
NAFLAGS = @NAFLAGS@
NASM = @NASM@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKGNAME = @PKGNAME@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
RANLIB = @RANLIB@
RPMARCH = @RPMARCH@
RPM_CONFIG_ARGS = @RPM_CONFIG_ARGS@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SO_AGE = @SO_AGE@
SO_MAJOR_VERSION = @SO_MAJOR_VERSION@
SO_MINOR_VERSION = @SO_MINOR_VERSION@
STRIP = @STRIP@
VERSION = @VERSION@
VERSION_SCRIPT_FLAG = @VERSION_SCRIPT_FLAG@
WITH_JAVA = @WITH_JAVA@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
noinst_LTLIBRARIES = libsimd.la $(am__append_1)
BUILT_SOURCES = jsimdcfg.inc
EXTRA_DIST = nasm_lt.sh CMakeLists.txt \
	jccolext-mmx.asm   jcgryext-mmx.asm   jdcolext-mmx.asm   jdmrgext-mmx.asm \
	jccolext-sse2.asm  jcgryext-sse2.asm  jdcolext-sse2.asm  jdmrgext-sse2.asm \
	jccolext-sse2-64.asm  jcgryext-sse2-64.asm  jdcolext-sse2-64.asm \
	jdmrgext-sse2-64.asm  jccolext-altivec.c    jcgryext-altivec.c \
	jdcolext-altivec.c    jdmrgext-altivec.c

@SIMD_ARM_64_TRUE@libsimd_la_SOURCES = jsimd_arm64.c jsimd_arm64_neon.S
@SIMD_ARM_TRUE@libsimd_la_SOURCES = jsimd_arm.c jsimd_arm_neon.S
@SIMD_I386_TRUE@libsimd_la_SOURCES = jsimd_i386.c jsimd.h jsimdcfg.inc.h jsimdext.inc \
@SIMD_I386_TRUE@	jcolsamp.inc jdct.inc jpeg_nbits_table.inc jsimdcpu.asm \
@SIMD_I386_TRUE@	jfdctflt-3dn.asm   jidctflt-3dn.asm   jquant-3dn.asm \
@SIMD_I386_TRUE@	jccolor-mmx.asm    jcgray-mmx.asm     jcsample-mmx.asm \
@SIMD_I386_TRUE@	jdcolor-mmx.asm    jdmerge-mmx.asm    jdsample-mmx.asm \
@SIMD_I386_TRUE@	jfdctfst-mmx.asm   jfdctint-mmx.asm   jidctfst-mmx.asm \
@SIMD_I386_TRUE@	jidctint-mmx.asm   jidctred-mmx.asm   jquant-mmx.asm \
@SIMD_I386_TRUE@	jfdctflt-sse.asm   jidctflt-sse.asm   jquant-sse.asm \
@SIMD_I386_TRUE@	jccolor-sse2.asm   jcgray-sse2.asm    jchuff-sse2.asm \
@SIMD_I386_TRUE@	jcsample-sse2.asm  jdcolor-sse2.asm   jdmerge-sse2.asm \
@SIMD_I386_TRUE@	jdsample-sse2.asm  jfdctfst-sse2.asm  jfdctint-sse2.asm \
@SIMD_I386_TRUE@	jidctflt-sse2.asm  jidctfst-sse2.asm  jidctint-sse2.asm \
@SIMD_I386_TRUE@	jidctred-sse2.asm  jquantf-sse2.asm   jquanti-sse2.asm

@SIMD_MIPS_TRUE@libsimd_la_SOURCES = jsimd_mips.c jsimd_mips_dspr2_asm.h jsimd_mips_dspr2.S
@SIMD_POWERPC_TRUE@libsimd_la_SOURCES = jsimd_powerpc.c jsimd_altivec.h jcsample.h
@SIMD_X86_64_TRUE@libsimd_la_SOURCES = jsimd_x86_64.c jsimd.h jsimdcfg.inc.h jsimdext.inc \
@SIMD_X86_64_TRUE@	jcolsamp.inc jdct.inc jpeg_nbits_table.inc jfdctflt-sse-64.asm \
@SIMD_X86_64_TRUE@	jccolor-sse2-64.asm   jcgray-sse2-64.asm    jchuff-sse2-64.asm \
@SIMD_X86_64_TRUE@	jcsample-sse2-64.asm  jdcolor-sse2-64.asm   jdmerge-sse2-64.asm \
@SIMD_X86_64_TRUE@	jdsample-sse2-64.asm  jfdctfst-sse2-64.asm  jfdctint-sse2-64.asm \
@SIMD_X86_64_TRUE@	jidctflt-sse2-64.asm  jidctfst-sse2-64.asm  jidctint-sse2-64.asm \
@SIMD_X86_64_TRUE@	jidctred-sse2-64.asm  jquantf-sse2-64.asm   jquanti-sse2-64.asm

@SIMD_POWERPC_TRUE@libsimd_altivec_la_SOURCES = \
@SIMD_POWERPC_TRUE@	jccolor-altivec.c     jcgray-altivec.c      jcsample-altivec.c \
@SIMD_POWERPC_TRUE@	jdcolor-altivec.c     jdmerge-altivec.c     jdsample-altivec.c \
@SIMD_POWERPC_TRUE@	jfdctfst-altivec.c    jfdctint-altivec.c \
@SIMD_POWERPC_TRUE@	jidctfst-altivec.c    jidctint-altivec.c \
@SIMD_POWERPC_TRUE@	jquanti-altivec.c

@SIMD_POWERPC_TRUE@libsimd_altivec_la_CFLAGS = -maltivec
@SIMD_POWERPC_TRUE@libsimd_la_LIBADD = libsimd_altivec.la
AM_CPPFLAGS = -I$(top_srcdir)
all: $(BUILT_SOURCES)
	$(MAKE) $(AM_MAKEFLAGS) all-am

.SUFFIXES:
.SUFFIXES: .S .asm .c .lo .o .obj
$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
	        && { if test -f $@; then exit 0; else break; fi; }; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign simd/Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --foreign simd/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
	esac;

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh

$(top_srcdir)/configure:  $(am__configure_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):

clean-noinstLTLIBRARIES:
	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
	@list='$(noinst_LTLIBRARIES)'; \
	locs=`for p in $$list; do echo $$p; done | \
	      sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
	      sort -u`; \
	test -z "$$locs" || { \
	  echo rm -f $${locs}; \
	  rm -f $${locs}; \
	}

libsimd.la: $(libsimd_la_OBJECTS) $(libsimd_la_DEPENDENCIES) $(EXTRA_libsimd_la_DEPENDENCIES) 
	$(AM_V_CCLD)$(LINK)  $(libsimd_la_OBJECTS) $(libsimd_la_LIBADD) $(LIBS)

libsimd_altivec.la: $(libsimd_altivec_la_OBJECTS) $(libsimd_altivec_la_DEPENDENCIES) $(EXTRA_libsimd_altivec_la_DEPENDENCIES) 
	$(AM_V_CCLD)$(libsimd_altivec_la_LINK) $(am_libsimd_altivec_la_rpath) $(libsimd_altivec_la_OBJECTS) $(libsimd_altivec_la_LIBADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT)

distclean-compile:
	-rm -f *.tab.c

@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_arm.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_arm64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_arm64_neon.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_arm_neon.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_i386.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_mips.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_mips_dspr2.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_powerpc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jsimd_x86_64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jccolor-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jcgray-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jcsample-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jdcolor-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jdmerge-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jdsample-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jfdctfst-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jfdctint-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jidctfst-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jidctint-altivec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsimd_altivec_la-jquanti-altivec.Plo@am__quote@

.S.o:
@am__fastdepCCAS_TRUE@	$(AM_V_CPPAS)$(CPPASCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCCAS_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@	$(AM_V_CPPAS)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@	DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCCAS_FALSE@	$(AM_V_CPPAS@am__nodep@)$(CPPASCOMPILE) -c -o $@ $<

.S.obj:
@am__fastdepCCAS_TRUE@	$(AM_V_CPPAS)$(CPPASCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCCAS_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@	$(AM_V_CPPAS)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@	DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCCAS_FALSE@	$(AM_V_CPPAS@am__nodep@)$(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`

.S.lo:
@am__fastdepCCAS_TRUE@	$(AM_V_CPPAS)$(LTCPPASCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCCAS_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@	$(AM_V_CPPAS)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@	DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCCAS_FALSE@	$(AM_V_CPPAS@am__nodep@)$(LTCPPASCOMPILE) -c -o $@ $<

.c.o:
@am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<

.c.obj:
@am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`

.c.lo:
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<

libsimd_altivec_la-jccolor-altivec.lo: jccolor-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jccolor-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jccolor-altivec.Tpo -c -o libsimd_altivec_la-jccolor-altivec.lo `test -f 'jccolor-altivec.c' || echo '$(srcdir)/'`jccolor-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jccolor-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jccolor-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jccolor-altivec.c' object='libsimd_altivec_la-jccolor-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jccolor-altivec.lo `test -f 'jccolor-altivec.c' || echo '$(srcdir)/'`jccolor-altivec.c

libsimd_altivec_la-jcgray-altivec.lo: jcgray-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jcgray-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jcgray-altivec.Tpo -c -o libsimd_altivec_la-jcgray-altivec.lo `test -f 'jcgray-altivec.c' || echo '$(srcdir)/'`jcgray-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jcgray-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jcgray-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jcgray-altivec.c' object='libsimd_altivec_la-jcgray-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jcgray-altivec.lo `test -f 'jcgray-altivec.c' || echo '$(srcdir)/'`jcgray-altivec.c

libsimd_altivec_la-jcsample-altivec.lo: jcsample-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jcsample-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jcsample-altivec.Tpo -c -o libsimd_altivec_la-jcsample-altivec.lo `test -f 'jcsample-altivec.c' || echo '$(srcdir)/'`jcsample-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jcsample-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jcsample-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jcsample-altivec.c' object='libsimd_altivec_la-jcsample-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jcsample-altivec.lo `test -f 'jcsample-altivec.c' || echo '$(srcdir)/'`jcsample-altivec.c

libsimd_altivec_la-jdcolor-altivec.lo: jdcolor-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jdcolor-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jdcolor-altivec.Tpo -c -o libsimd_altivec_la-jdcolor-altivec.lo `test -f 'jdcolor-altivec.c' || echo '$(srcdir)/'`jdcolor-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jdcolor-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jdcolor-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jdcolor-altivec.c' object='libsimd_altivec_la-jdcolor-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jdcolor-altivec.lo `test -f 'jdcolor-altivec.c' || echo '$(srcdir)/'`jdcolor-altivec.c

libsimd_altivec_la-jdmerge-altivec.lo: jdmerge-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jdmerge-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jdmerge-altivec.Tpo -c -o libsimd_altivec_la-jdmerge-altivec.lo `test -f 'jdmerge-altivec.c' || echo '$(srcdir)/'`jdmerge-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jdmerge-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jdmerge-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jdmerge-altivec.c' object='libsimd_altivec_la-jdmerge-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jdmerge-altivec.lo `test -f 'jdmerge-altivec.c' || echo '$(srcdir)/'`jdmerge-altivec.c

libsimd_altivec_la-jdsample-altivec.lo: jdsample-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jdsample-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jdsample-altivec.Tpo -c -o libsimd_altivec_la-jdsample-altivec.lo `test -f 'jdsample-altivec.c' || echo '$(srcdir)/'`jdsample-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jdsample-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jdsample-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jdsample-altivec.c' object='libsimd_altivec_la-jdsample-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jdsample-altivec.lo `test -f 'jdsample-altivec.c' || echo '$(srcdir)/'`jdsample-altivec.c

libsimd_altivec_la-jfdctfst-altivec.lo: jfdctfst-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jfdctfst-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jfdctfst-altivec.Tpo -c -o libsimd_altivec_la-jfdctfst-altivec.lo `test -f 'jfdctfst-altivec.c' || echo '$(srcdir)/'`jfdctfst-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jfdctfst-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jfdctfst-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jfdctfst-altivec.c' object='libsimd_altivec_la-jfdctfst-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jfdctfst-altivec.lo `test -f 'jfdctfst-altivec.c' || echo '$(srcdir)/'`jfdctfst-altivec.c

libsimd_altivec_la-jfdctint-altivec.lo: jfdctint-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jfdctint-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jfdctint-altivec.Tpo -c -o libsimd_altivec_la-jfdctint-altivec.lo `test -f 'jfdctint-altivec.c' || echo '$(srcdir)/'`jfdctint-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jfdctint-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jfdctint-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jfdctint-altivec.c' object='libsimd_altivec_la-jfdctint-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jfdctint-altivec.lo `test -f 'jfdctint-altivec.c' || echo '$(srcdir)/'`jfdctint-altivec.c

libsimd_altivec_la-jidctfst-altivec.lo: jidctfst-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jidctfst-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jidctfst-altivec.Tpo -c -o libsimd_altivec_la-jidctfst-altivec.lo `test -f 'jidctfst-altivec.c' || echo '$(srcdir)/'`jidctfst-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jidctfst-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jidctfst-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jidctfst-altivec.c' object='libsimd_altivec_la-jidctfst-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jidctfst-altivec.lo `test -f 'jidctfst-altivec.c' || echo '$(srcdir)/'`jidctfst-altivec.c

libsimd_altivec_la-jidctint-altivec.lo: jidctint-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jidctint-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jidctint-altivec.Tpo -c -o libsimd_altivec_la-jidctint-altivec.lo `test -f 'jidctint-altivec.c' || echo '$(srcdir)/'`jidctint-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jidctint-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jidctint-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jidctint-altivec.c' object='libsimd_altivec_la-jidctint-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jidctint-altivec.lo `test -f 'jidctint-altivec.c' || echo '$(srcdir)/'`jidctint-altivec.c

libsimd_altivec_la-jquanti-altivec.lo: jquanti-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -MT libsimd_altivec_la-jquanti-altivec.lo -MD -MP -MF $(DEPDIR)/libsimd_altivec_la-jquanti-altivec.Tpo -c -o libsimd_altivec_la-jquanti-altivec.lo `test -f 'jquanti-altivec.c' || echo '$(srcdir)/'`jquanti-altivec.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libsimd_altivec_la-jquanti-altivec.Tpo $(DEPDIR)/libsimd_altivec_la-jquanti-altivec.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='jquanti-altivec.c' object='libsimd_altivec_la-jquanti-altivec.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsimd_altivec_la_CFLAGS) $(CFLAGS) -c -o libsimd_altivec_la-jquanti-altivec.lo `test -f 'jquanti-altivec.c' || echo '$(srcdir)/'`jquanti-altivec.c

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs

ID: $(am__tagged_files)
	$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags

tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
	set x; \
	here=`pwd`; \
	$(am__define_uniq_tagged_files); \
	shift; \
	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
	  test -n "$$unique" || unique=$$empty_fix; \
	  if test $$# -gt 0; then \
	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	      "$$@" $$unique; \
	  else \
	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	      $$unique; \
	  fi; \
	fi
ctags: ctags-am

CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
	$(am__define_uniq_tagged_files); \
	test -z "$(CTAGS_ARGS)$$unique" \
	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
	     $$unique

GTAGS:
	here=`$(am__cd) $(top_builddir) && pwd` \
	  && $(am__cd) $(top_srcdir) \
	  && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am

cscopelist-am: $(am__tagged_files)
	list='$(am__tagged_files)'; \
	case "$(srcdir)" in \
	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
	  *) sdir=$(subdir)/$(srcdir) ;; \
	esac; \
	for i in $$list; do \
	  if test -f "$$i"; then \
	    echo "$(subdir)/$$i"; \
	  else \
	    echo "$$sdir/$$i"; \
	  fi; \
	done >> $(top_builddir)/cscope.files

distclean-tags:
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags

distdir: $(DISTFILES)
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	list='$(DISTFILES)'; \
	  dist_files=`for file in $$list; do echo $$file; done | \
	  sed -e "s|^$$srcdirstrip/||;t" \
	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
	case $$dist_files in \
	  */*) $(MKDIR_P) `echo "$$dist_files" | \
			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
			   sort -u` ;; \
	esac; \
	for file in $$dist_files; do \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  if test -d $$d/$$file; then \
	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
	    if test -d "$(distdir)/$$file"; then \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
	  else \
	    test -f "$(distdir)/$$file" \
	    || cp -p $$d/$$file "$(distdir)/$$file" \
	    || exit 1; \
	  fi; \
	done
check-am: all-am
check: $(BUILT_SOURCES)
	$(MAKE) $(AM_MAKEFLAGS) check-am
all-am: Makefile $(LTLIBRARIES)
installdirs:
install: $(BUILT_SOURCES)
	$(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	if test -z '$(STRIP)'; then \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	      install; \
	else \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
	fi
mostlyclean-generic:

clean-generic:

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
clean: clean-am

clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
	mostlyclean-am

distclean: distclean-am
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
	distclean-tags

dvi: dvi-am

dvi-am:

html: html-am

html-am:

info: info-am

info-am:

install-data-am:

install-dvi: install-dvi-am

install-dvi-am:

install-exec-am:

install-html: install-html-am

install-html-am:

install-info: install-info-am

install-info-am:

install-man:

install-pdf: install-pdf-am

install-pdf-am:

install-ps: install-ps-am

install-ps-am:

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am:

.MAKE: all check install install-am install-strip

.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
	clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \
	ctags-am distclean distclean-compile distclean-generic \
	distclean-libtool distclean-tags distdir dvi dvi-am html \
	html-am info info-am install install-am install-data \
	install-data-am install-dvi install-dvi-am install-exec \
	install-exec-am install-html install-html-am install-info \
	install-info-am install-man install-pdf install-pdf-am \
	install-ps install-ps-am install-strip installcheck \
	installcheck-am installdirs maintainer-clean \
	maintainer-clean-generic mostlyclean mostlyclean-compile \
	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
	tags tags-am uninstall uninstall-am

.PRECIOUS: Makefile


@SIMD_X86_64_TRUE@jccolor-sse2-64.lo:  jccolext-sse2-64.asm
@SIMD_X86_64_TRUE@jcgray-sse2-64.lo:   jcgryext-sse2-64.asm
@SIMD_X86_64_TRUE@jdcolor-sse2-64.lo:  jdcolext-sse2-64.asm
@SIMD_X86_64_TRUE@jdmerge-sse2-64.lo:  jdmrgext-sse2-64.asm

@SIMD_I386_TRUE@jccolor-mmx.lo:   jccolext-mmx.asm
@SIMD_I386_TRUE@jcgray.-mmx.lo:   jcgryext-mmx.asm
@SIMD_I386_TRUE@jdcolor-mmx.lo:   jdcolext-mmx.asm
@SIMD_I386_TRUE@jdmerge-mmx.lo:   jdmrgext-mmx.asm
@SIMD_I386_TRUE@jccolor-sse2.lo:  jccolext-sse2.asm
@SIMD_I386_TRUE@jcgray-sse2.lo:   jcgryext-sse2.asm
@SIMD_I386_TRUE@jdcolor-sse2.lo:  jdcolext-sse2.asm
@SIMD_I386_TRUE@jdmerge-sse2.lo:  jdmrgext-sse2.asm

@SIMD_POWERPC_TRUE@jccolor-altivec.lo:  jccolext-altivec.c
@SIMD_POWERPC_TRUE@jcgray-altivec.lo:   jcgryext-altivec.c
@SIMD_POWERPC_TRUE@jdcolor-altivec.lo:  jdcolext-altivec.c
@SIMD_POWERPC_TRUE@jdmerge-altivec.lo:  jdmrgext-altivec.c

.asm.lo:
	$(AM_V_GEN) $(LIBTOOL) $(AM_V_lt) --mode=compile --tag NASM $(srcdir)/nasm_lt.sh $(AM_V_lt) $(NASM) $(NAFLAGS) -I$(srcdir) -I. $< -o $@

jsimdcfg.inc: $(srcdir)/jsimdcfg.inc.h ../jpeglib.h ../jconfig.h ../jmorecfg.h
	$(AM_V_GEN) $(CPP) -I$(top_builddir) -I$(top_builddir)/simd $(srcdir)/jsimdcfg.inc.h | $(EGREP) "^[\;%]|^\ %" | sed 's%_cpp_protection_%%' | sed 's@% define@%define@g' > $@

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
