blob: fad6c8c8a5101359de079c674b024be1e57aa565 [file] [log] [blame]
Pierre Ossman3a65ef42009-03-16 13:34:18 +00001noinst_LTLIBRARIES = libsimd.la
2
3BUILT_SOURCES = jsimdcfg.inc
4
DRC72130be2014-05-09 20:14:26 +00005EXTRA_DIST = nasm_lt.sh CMakeLists.txt \
DRC24e92e92014-05-10 09:53:34 +00006 jccolext-mmx.asm jcgryext-mmx.asm jdcolext-mmx.asm jdmrgext-mmx.asm \
7 jccolext-sse2.asm jcgryext-sse2.asm jdcolext-sse2.asm jdmrgext-sse2.asm \
8 jccolext-sse2-64.asm jcgryext-sse2-64.asm jdcolext-sse2-64.asm \
DRC691cd932015-06-20 16:36:32 +00009 jdmrgext-sse2-64.asm jccolext-altivec.c jcgryext-altivec.c \
10 jdcolext-altivec.c jdmrgext-altivec.c
Pierre Ossman3a65ef42009-03-16 13:34:18 +000011
Pierre Ossmanba82ddf2009-06-29 11:20:42 +000012if SIMD_X86_64
DRCcdc8ac32009-06-25 20:38:31 +000013
DRC24e92e92014-05-10 09:53:34 +000014libsimd_la_SOURCES = jsimd_x86_64.c jsimd.h jsimdcfg.inc.h jsimdext.inc \
DRC53c635b2016-02-08 14:03:13 -060015 jcolsamp.inc jdct.inc jpeg_nbits_table.inc jfdctflt-sse-64.asm \
DRCf3a86842016-01-07 00:19:43 -060016 jccolor-sse2-64.asm jcgray-sse2-64.asm jchuff-sse2-64.asm \
17 jcsample-sse2-64.asm jdcolor-sse2-64.asm jdmerge-sse2-64.asm \
18 jdsample-sse2-64.asm jfdctfst-sse2-64.asm jfdctint-sse2-64.asm \
19 jidctflt-sse2-64.asm jidctfst-sse2-64.asm jidctint-sse2-64.asm \
20 jidctred-sse2-64.asm jquantf-sse2-64.asm jquanti-sse2-64.asm
DRCcdc8ac32009-06-25 20:38:31 +000021
DRC24e92e92014-05-10 09:53:34 +000022jccolor-sse2-64.lo: jccolext-sse2-64.asm
23jcgray-sse2-64.lo: jcgryext-sse2-64.asm
24jdcolor-sse2-64.lo: jdcolext-sse2-64.asm
25jdmerge-sse2-64.lo: jdmrgext-sse2-64.asm
DRC72130be2014-05-09 20:14:26 +000026
Pierre Ossmanba82ddf2009-06-29 11:20:42 +000027endif
DRCcdc8ac32009-06-25 20:38:31 +000028
Pierre Ossmanba82ddf2009-06-29 11:20:42 +000029if SIMD_I386
30
DRC24e92e92014-05-10 09:53:34 +000031libsimd_la_SOURCES = jsimd_i386.c jsimd.h jsimdcfg.inc.h jsimdext.inc \
DRC53c635b2016-02-08 14:03:13 -060032 jcolsamp.inc jdct.inc jpeg_nbits_table.inc jsimdcpu.asm \
DRC24e92e92014-05-10 09:53:34 +000033 jfdctflt-3dn.asm jidctflt-3dn.asm jquant-3dn.asm \
34 jccolor-mmx.asm jcgray-mmx.asm jcsample-mmx.asm \
35 jdcolor-mmx.asm jdmerge-mmx.asm jdsample-mmx.asm \
36 jfdctfst-mmx.asm jfdctint-mmx.asm jidctfst-mmx.asm \
37 jidctint-mmx.asm jidctred-mmx.asm jquant-mmx.asm \
38 jfdctflt-sse.asm jidctflt-sse.asm jquant-sse.asm \
DRCf3a86842016-01-07 00:19:43 -060039 jccolor-sse2.asm jcgray-sse2.asm jchuff-sse2.asm \
40 jcsample-sse2.asm jdcolor-sse2.asm jdmerge-sse2.asm \
41 jdsample-sse2.asm jfdctfst-sse2.asm jfdctint-sse2.asm \
42 jidctflt-sse2.asm jidctfst-sse2.asm jidctint-sse2.asm \
43 jidctred-sse2.asm jquantf-sse2.asm jquanti-sse2.asm
Pierre Ossman3a65ef42009-03-16 13:34:18 +000044
DRC24e92e92014-05-10 09:53:34 +000045jccolor-mmx.lo: jccolext-mmx.asm
46jcgray.-mmx.lo: jcgryext-mmx.asm
47jdcolor-mmx.lo: jdcolext-mmx.asm
48jdmerge-mmx.lo: jdmrgext-mmx.asm
49jccolor-sse2.lo: jccolext-sse2.asm
50jcgray-sse2.lo: jcgryext-sse2.asm
51jdcolor-sse2.lo: jdcolext-sse2.asm
52jdmerge-sse2.lo: jdmrgext-sse2.asm
DRC72130be2014-05-09 20:14:26 +000053
DRCcdc8ac32009-06-25 20:38:31 +000054endif
55
DRC321e0682011-05-03 08:47:43 +000056if SIMD_ARM
57
58libsimd_la_SOURCES = jsimd_arm.c jsimd_arm_neon.S
59
60endif
61
DRCba55b2c2014-02-05 08:15:44 +000062if SIMD_ARM_64
63
DRC0a9a2522014-08-29 01:53:17 +000064libsimd_la_SOURCES = jsimd_arm64.c jsimd_arm64_neon.S
DRCba55b2c2014-02-05 08:15:44 +000065
66endif
67
DRC495e4342014-05-19 19:13:22 +000068if SIMD_MIPS
DRC0be9fa52013-07-24 21:50:20 +000069
DRC371b4202013-08-23 07:57:21 +000070libsimd_la_SOURCES = jsimd_mips.c jsimd_mips_dspr2_asm.h jsimd_mips_dspr2.S
DRC0be9fa52013-07-24 21:50:20 +000071
72endif
73
DRC7affbfc2014-09-05 07:23:12 +000074if SIMD_POWERPC
DRCcd2d8e12014-09-05 06:33:42 +000075
DRC691cd932015-06-20 16:36:32 +000076libsimd_la_SOURCES = jsimd_powerpc.c jsimd_altivec.h jcsample.h \
DRC22048202015-01-08 06:18:33 +000077 jccolor-altivec.c jcgray-altivec.c jcsample-altivec.c \
DRC86af36a2015-01-14 13:27:32 +000078 jdcolor-altivec.c jdmerge-altivec.c jdsample-altivec.c \
DRC535674b2014-12-22 01:00:42 +000079 jfdctfst-altivec.c jfdctint-altivec.c \
DRC577ecd92014-12-23 04:14:54 +000080 jidctfst-altivec.c jidctint-altivec.c \
DRC22048202015-01-08 06:18:33 +000081 jquanti-altivec.c
DRC535674b2014-12-22 01:00:42 +000082libsimd_la_CFLAGS = -maltivec
DRCcd2d8e12014-09-05 06:33:42 +000083
DRC5976e422014-12-22 13:57:30 +000084jccolor-altivec.lo: jccolext-altivec.c
DRCb1fec4f2014-12-22 14:10:33 +000085jcgray-altivec.lo: jcgryext-altivec.c
DRC691cd932015-06-20 16:36:32 +000086jdcolor-altivec.lo: jdcolext-altivec.c
87jdmerge-altivec.lo: jdmrgext-altivec.c
DRC5976e422014-12-22 13:57:30 +000088
DRCcd2d8e12014-09-05 06:33:42 +000089endif
90
DRC1a45b812014-05-09 18:06:58 +000091AM_CPPFLAGS = -I$(top_srcdir)
Pierre Ossman3a65ef42009-03-16 13:34:18 +000092
DRC971d8512010-02-13 22:55:05 +000093.asm.lo:
DRC3b7015d2015-02-23 19:03:29 +000094 $(AM_V_GEN) $(LIBTOOL) $(AM_V_lt) --mode=compile --tag NASM $(srcdir)/nasm_lt.sh $(AM_V_lt) $(NASM) $(NAFLAGS) -I$(srcdir) -I. $< -o $@
DRC971d8512010-02-13 22:55:05 +000095
96jsimdcfg.inc: $(srcdir)/jsimdcfg.inc.h ../jpeglib.h ../jconfig.h ../jmorecfg.h
DRC3b7015d2015-02-23 19:03:29 +000097 $(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' > $@