blob: 32f48e67b30e81f82d70f4870123270a266bdefe [file] [log] [blame]
DRC211d1e72013-01-13 11:25:20 +00001lib_LTLIBRARIES = libjpeg.la
DRC6da61db2013-01-19 01:06:46 +00002libjpeg_la_LDFLAGS = -version-info ${LIBTOOL_CURRENT}:${SO_MINOR_VERSION}:${SO_AGE} -no-undefined
DRC211d1e72013-01-13 11:25:20 +00003include_HEADERS = jerror.h jmorecfg.h jpeglib.h
4
5if WITH_TURBOJPEG
6lib_LTLIBRARIES += libturbojpeg.la
DRC24211152013-04-27 22:18:29 +00007libturbojpeg_la_LDFLAGS = -version-info 1:0:1 -no-undefined
DRC211d1e72013-01-13 11:25:20 +00008include_HEADERS += turbojpeg.h
9endif
10
DRC0a945a12010-02-15 11:04:51 +000011nodist_include_HEADERS = jconfig.h
DRC0c0f3042010-01-28 05:34:53 +000012
DRC211d1e72013-01-13 11:25:20 +000013
Adam Tkacda5a1fe2008-10-22 11:19:25 +000014HDRS = jchuff.h jdct.h jdhuff.h jerror.h jinclude.h jmemsys.h jmorecfg.h \
DRC6887f052014-04-20 09:23:01 +000015 jpegint.h jpeglib.h jversion.h jsimd.h jsimddct.h jpegcomp.h \
16 jpeg_nbits_table.h
Constantin Kaplinsky0ca44252008-09-28 05:08:48 +000017
DRCe3720042010-11-23 06:50:14 +000018libjpeg_la_SOURCES = $(HDRS) jcapimin.c jcapistd.c jccoefct.c jccolor.c \
19 jcdctmgr.c jchuff.c jcinit.c jcmainct.c jcmarker.c jcmaster.c \
20 jcomapi.c jcparam.c jcphuff.c jcprepct.c jcsample.c jctrans.c \
21 jdapimin.c jdapistd.c jdatadst.c jdatasrc.c jdcoefct.c jdcolor.c \
22 jddctmgr.c jdhuff.c jdinput.c jdmainct.c jdmarker.c jdmaster.c \
23 jdmerge.c jdphuff.c jdpostct.c jdsample.c jdtrans.c jerror.c \
24 jfdctflt.c jfdctfst.c jfdctint.c jidctflt.c jidctfst.c jidctint.c \
25 jidctred.c jquant1.c jquant2.c jutils.c jmemmgr.c jmemnobs.c
26
27if WITH_ARITH
DRCe3720042010-11-23 06:50:14 +000028libjpeg_la_SOURCES += jaricom.c
DRCe3720042010-11-23 06:50:14 +000029endif
30
31if WITH_ARITH_ENC
DRCe3720042010-11-23 06:50:14 +000032libjpeg_la_SOURCES += jcarith.c
DRCe3720042010-11-23 06:50:14 +000033endif
34
35if WITH_ARITH_DEC
DRCe3720042010-11-23 06:50:14 +000036libjpeg_la_SOURCES += jdarith.c
DRCe3720042010-11-23 06:50:14 +000037endif
Constantin Kaplinsky0ca44252008-09-28 05:08:48 +000038
DRC211d1e72013-01-13 11:25:20 +000039
40SUBDIRS = java
41
42
43if WITH_TURBOJPEG
44
DRC418dbdf2011-05-26 10:45:06 +000045libturbojpeg_la_SOURCES = $(libjpeg_la_SOURCES) turbojpeg.c turbojpeg.h \
DRC9b28def2011-05-21 14:37:15 +000046 transupp.c transupp.h jdatadst-tj.c jdatasrc-tj.c
DRCf8e00552011-02-04 11:06:36 +000047
DRCf2602ce2011-04-01 00:20:33 +000048if WITH_JAVA
DRCf8e00552011-02-04 11:06:36 +000049
50libturbojpeg_la_SOURCES += turbojpeg-jni.c
DRCe08c05f2011-03-31 08:03:26 +000051libturbojpeg_la_CFLAGS = ${JNI_CFLAGS}
DRCf8e00552011-02-04 11:06:36 +000052TJMAPFILE = turbojpeg-mapfile.jni
53
54else
55
56TJMAPFILE = turbojpeg-mapfile
57
58endif
59
60libturbojpeg_la_SOURCES += $(TJMAPFILE)
DRC6f8c6682010-02-16 05:03:51 +000061
62if VERSION_SCRIPT
DRC9fa95592011-02-25 00:23:44 +000063libturbojpeg_la_LDFLAGS += $(VERSION_SCRIPT_FLAG)$(srcdir)/$(TJMAPFILE)
DRC211d1e72013-01-13 11:25:20 +000064endif
DRC6f8c6682010-02-16 05:03:51 +000065
66endif
DRC1bf1a142010-02-11 06:39:32 +000067
DRC211d1e72013-01-13 11:25:20 +000068
69if VERSION_SCRIPT
70libjpeg_la_LDFLAGS += $(VERSION_SCRIPT_FLAG)libjpeg.map
71endif
72
73
DRC60cddeb2010-02-12 05:37:07 +000074if WITH_SIMD
75
DRCf2602ce2011-04-01 00:20:33 +000076SUBDIRS += simd
Pierre Ossman3a65ef42009-03-16 13:34:18 +000077libjpeg_la_LIBADD = simd/libsimd.la
DRC1bf1a142010-02-11 06:39:32 +000078libturbojpeg_la_LIBADD = simd/libsimd.la
Pierre Ossman2ae181c2009-03-09 13:21:27 +000079
DRC60cddeb2010-02-12 05:37:07 +000080else
81
82libjpeg_la_SOURCES += jsimd_none.c
83
84endif
85
DRC211d1e72013-01-13 11:25:20 +000086
87bin_PROGRAMS = cjpeg djpeg jpegtran rdjpgcom wrjpgcom
88noinst_PROGRAMS = jcstest
89
90
91if WITH_TURBOJPEG
92
93bin_PROGRAMS += tjbench
94
95noinst_PROGRAMS += tjunittest
DRC2e7b76b2009-04-03 12:04:24 +000096
DRC3185cb92011-05-25 03:52:22 +000097tjbench_SOURCES = tjbench.c bmp.h bmp.c tjutil.h tjutil.c rdbmp.c rdppm.c \
DRC18821f82011-05-24 17:07:51 +000098 wrbmp.c wrppm.c
DRC2e7b76b2009-04-03 12:04:24 +000099
DRC3185cb92011-05-25 03:52:22 +0000100tjbench_LDADD = libturbojpeg.la libjpeg.la -lm
DRC2e7b76b2009-04-03 12:04:24 +0000101
DRC3185cb92011-05-25 03:52:22 +0000102tjbench_CFLAGS = -DBMP_SUPPORTED -DPPM_SUPPORTED
DRCbe49b8c2011-05-24 13:41:27 +0000103
DRC3185cb92011-05-25 03:52:22 +0000104tjunittest_SOURCES = tjunittest.c tjutil.h tjutil.c
DRC2e7b76b2009-04-03 12:04:24 +0000105
DRC3185cb92011-05-25 03:52:22 +0000106tjunittest_LDADD = libturbojpeg.la
DRC73de9822009-06-25 20:41:17 +0000107
DRC211d1e72013-01-13 11:25:20 +0000108endif
109
110
DRC73de9822009-06-25 20:41:17 +0000111cjpeg_SOURCES = cdjpeg.h cderror.h cdjpeg.c cjpeg.c rdbmp.c rdgif.c \
DRC9a341f82014-04-15 03:43:44 +0000112 rdppm.c rdswitch.c rdtarga.c
DRC73de9822009-06-25 20:41:17 +0000113
DRC971d8512010-02-13 22:55:05 +0000114cjpeg_LDADD = libjpeg.la
DRC73de9822009-06-25 20:41:17 +0000115
116cjpeg_CFLAGS = -DBMP_SUPPORTED -DGIF_SUPPORTED -DPPM_SUPPORTED \
117 -DTARGA_SUPPORTED
118
119djpeg_SOURCES = cdjpeg.h cderror.h cdjpeg.c djpeg.c rdcolmap.c rdswitch.c \
120 wrbmp.c wrgif.c wrppm.c wrtarga.c
121
DRC971d8512010-02-13 22:55:05 +0000122djpeg_LDADD = libjpeg.la
DRC73de9822009-06-25 20:41:17 +0000123
124djpeg_CFLAGS = -DBMP_SUPPORTED -DGIF_SUPPORTED -DPPM_SUPPORTED \
125 -DTARGA_SUPPORTED
DRC60fa0602010-02-12 06:01:49 +0000126
DRC0a945a12010-02-15 11:04:51 +0000127jpegtran_SOURCES = jpegtran.c rdswitch.c cdjpeg.c transupp.c transupp.h
DRC60fa0602010-02-12 06:01:49 +0000128
DRC971d8512010-02-13 22:55:05 +0000129jpegtran_LDADD = libjpeg.la
DRC60fa0602010-02-12 06:01:49 +0000130
DRC0a945a12010-02-15 11:04:51 +0000131rdjpgcom_SOURCES = rdjpgcom.c
DRC60fa0602010-02-12 06:01:49 +0000132
DRC971d8512010-02-13 22:55:05 +0000133rdjpgcom_LDADD = libjpeg.la
DRC60fa0602010-02-12 06:01:49 +0000134
135wrjpgcom_SOURCES = wrjpgcom.c
136
DRC971d8512010-02-13 22:55:05 +0000137wrjpgcom_LDADD = libjpeg.la
DRC60fa0602010-02-12 06:01:49 +0000138
DRCb76c8402011-12-19 15:01:55 +0000139jcstest_SOURCES = jcstest.c
140
141jcstest_LDADD = libjpeg.la
DRC0a945a12010-02-15 11:04:51 +0000142
DRCcbda81a2010-06-05 01:12:35 +0000143dist_man1_MANS = cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 wrjpgcom.1
DRC0a945a12010-02-15 11:04:51 +0000144
DRC2f12d7a2013-01-13 01:19:09 +0000145DOCS= coderules.txt jconfig.txt change.log rdrle.c wrrle.c BUILDING.txt \
146 ChangeLog.txt
DRCa1647c82012-02-10 00:39:05 +0000147
148docdir = $(datadir)/doc
DRC01bf9d92012-02-10 01:52:31 +0000149dist_doc_DATA = README README-turbo.txt libjpeg.txt structure.txt usage.txt \
DRC9a341f82014-04-15 03:43:44 +0000150 wizard.txt
DRCa1647c82012-02-10 00:39:05 +0000151
152exampledir = $(datadir)/doc
DRC01bf9d92012-02-10 01:52:31 +0000153dist_example_DATA = example.c
DRC0a945a12010-02-15 11:04:51 +0000154
DRC750e0782011-05-10 21:05:49 +0000155
DRC0bf58f22013-02-06 23:51:08 +0000156EXTRA_DIST = win release $(DOCS) testimages CMakeLists.txt \
DRCa006fba2011-10-27 23:25:28 +0000157 sharedlib/CMakeLists.txt cmakescripts libjpeg.map.in doc doxygen.config \
DRC79df67d2014-03-22 20:22:52 +0000158 jccolext.c jdcolext.c jdmrgext.c jstdhuff.c
DRC0a945a12010-02-15 11:04:51 +0000159
160dist-hook:
161 rm -rf `find $(distdir) -name .svn`
162
163
DRC0bf58f22013-02-06 23:51:08 +0000164SUBDIRS += md5
165
DRC211d1e72013-01-13 11:25:20 +0000166MD5_JPEG_INT = 9a68f56bc76e466aa7e52f415d0f4a5f
167MD5_JPEG_FAST = 0e1502e7fa421835e376a314fac2a39f
168MD5_JPEG_FAST_100 = 7bf72a8e741d64eecb960c97323af77c
169MD5_JPEG_FLOAT = d1623885ffafcd40c684af09e3d65cd5
170MD5_JPEG_FLOAT_NOSIMD = fb4884c35f8273f498cb32879de5c455
171MD5_JPEG_INT_GRAY = 72b51f894b8f4a10b3ee3066770aa38d
172MD5_PPM_INT = d1ed0d11f076b842525271647716aeb8
173MD5_PPM_FAST = 048298a2d2410261c0533cb97bcfef23
174MD5_PPM_FLOAT = 7f5b446ee36b2630e06785b8d42af15f
175MD5_PPM_FLOAT_NOSIMD = 64072f1dbdc5b3a187777788604971a5
176MD5_PPM_INT_2_1 = 9f9de8c0612f8d06869b960b05abf9c9
177MD5_PPM_INT_15_8 = b6875bc070720b899566cc06459b63b7
178MD5_PPM_INT_7_4 = 06a177eae05f164fac57f7a2c346ee87
179MD5_PPM_INT_13_8 = bc3452573c8152f6ae552939ee19f82f
180MD5_PPM_INT_3_2 = f5a8b88a8a7f96016f04d259cf82ed67
181MD5_PPM_INT_11_8 = d8cc73c0aaacd4556569b59437ba00a5
182MD5_PPM_INT_5_4 = 32775dd9ad2ab90f4c5b219b53e0c86c
183MD5_PPM_INT_9_8 = d25e61bc7eac0002f5b393aa223747b6
184MD5_PPM_INT_7_8 = ddb564b7c74a09494016d6cd7502a946
185MD5_PPM_INT_3_4 = 8ed8e68808c3fbc4ea764fc9d2968646
186MD5_PPM_INT_5_8 = a3363274999da2366a024efae6d16c9b
187MD5_PPM_INT_1_2 = e692a315cea26b988c8e8b29a5dbcd81
188MD5_PPM_INT_3_8 = 79eca9175652ced755155c90e785a996
189MD5_PPM_INT_1_4 = 79cd778f8bf1a117690052cacdd54eca
190MD5_PPM_INT_1_8 = 391b3d4aca640c8567d6f8745eb2142f
191MD5_PPM_FAST_1_2 = f30bcf6d32ccd44cbdd9aeaacbd9454f
192MD5_BMP_256 = 4980185e3776e89bd931736e1cddeee6
193MD5_JPEG_ARI = e986fb0a637a8d833d96e8a6d6d84ea1
194MD5_PPM_ARI = 72b59a99bcf1de24c5b27d151bde2437
195MD5_JPEG_PROG = 1c4afddc05c0a43489ee54438a482d92
DRC4b509282013-11-06 06:55:28 +0000196MD5_JPEG_PROG_ARI = 0a8f1c8f66e113c3cf635df0a475a617
DRC211d1e72013-01-13 11:25:20 +0000197MD5_JPEG_CROP = b4197f377e621c4e9b1d20471432610d
198
DRC66f97e62010-11-23 05:49:54 +0000199test: testclean all
DRC211d1e72013-01-13 11:25:20 +0000200if WITH_TURBOJPEG
DRC38cb1ec2013-08-23 04:45:43 +0000201if WITH_JAVA
202 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest
203 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -bi
204 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv
205 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv -noyuvpad
206 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv -bi
207 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv -bi -noyuvpad
208endif
DRC3185cb92011-05-25 03:52:22 +0000209 ./tjunittest
210 ./tjunittest -alloc
211 ./tjunittest -yuv
DRC910a3572013-10-30 23:02:57 +0000212 ./tjunittest -yuv -alloc
DRCf610d612013-04-26 10:33:29 +0000213 ./tjunittest -yuv -noyuvpad
DRC211d1e72013-01-13 11:25:20 +0000214endif
DRC7ab03642012-01-31 05:47:07 +0000215 ./cjpeg -dct int -outfile testoutint.jpg $(srcdir)/testimages/testorig.ppm
DRC0bf58f22013-02-06 23:51:08 +0000216 md5/md5cmp $(MD5_JPEG_INT) testoutint.jpg
DRC7ab03642012-01-31 05:47:07 +0000217 ./cjpeg -dct fast -opt -outfile testoutfst.jpg $(srcdir)/testimages/testorig.ppm
DRC0bf58f22013-02-06 23:51:08 +0000218 md5/md5cmp $(MD5_JPEG_FAST) testoutfst.jpg
DRC7ab03642012-01-31 05:47:07 +0000219 ./cjpeg -dct fast -quality 100 -opt -outfile testoutfst100.jpg $(srcdir)/testimages/testorig.ppm
DRC0bf58f22013-02-06 23:51:08 +0000220 md5/md5cmp $(MD5_JPEG_FAST_100) testoutfst100.jpg
DRC7ab03642012-01-31 05:47:07 +0000221 ./cjpeg -dct float -outfile testoutflt.jpg $(srcdir)/testimages/testorig.ppm
DRC321e0682011-05-03 08:47:43 +0000222if WITH_SSE_FLOAT_DCT
DRC0bf58f22013-02-06 23:51:08 +0000223 md5/md5cmp $(MD5_JPEG_FLOAT) testoutflt.jpg
DRC83f21442010-06-10 18:52:41 +0000224else
DRC0bf58f22013-02-06 23:51:08 +0000225 md5/md5cmp $(MD5_JPEG_FLOAT_NOSIMD) testoutflt.jpg
DRC66f97e62010-11-23 05:49:54 +0000226endif
DRC7ab03642012-01-31 05:47:07 +0000227 ./cjpeg -dct int -grayscale -outfile testoutgray.jpg $(srcdir)/testimages/testorig.ppm
DRC0bf58f22013-02-06 23:51:08 +0000228 md5/md5cmp $(MD5_JPEG_INT_GRAY) testoutgray.jpg
DRC7ab03642012-01-31 05:47:07 +0000229 ./djpeg -dct int -fast -ppm -outfile testoutint.ppm $(srcdir)/testimages/testorig.jpg
DRC0bf58f22013-02-06 23:51:08 +0000230 md5/md5cmp $(MD5_PPM_INT) testoutint.ppm
DRC7ab03642012-01-31 05:47:07 +0000231 ./djpeg -dct fast -ppm -outfile testoutfst.ppm $(srcdir)/testimages/testorig.jpg
DRC0bf58f22013-02-06 23:51:08 +0000232 md5/md5cmp $(MD5_PPM_FAST) testoutfst.ppm
DRC7ab03642012-01-31 05:47:07 +0000233 ./djpeg -dct float -ppm -outfile testoutflt.ppm $(srcdir)/testimages/testorig.jpg
DRC321e0682011-05-03 08:47:43 +0000234if WITH_SSE_FLOAT_DCT
DRC0bf58f22013-02-06 23:51:08 +0000235 md5/md5cmp $(MD5_PPM_FLOAT) testoutflt.ppm
DRC66f97e62010-11-23 05:49:54 +0000236else
DRC0bf58f22013-02-06 23:51:08 +0000237 md5/md5cmp $(MD5_PPM_FLOAT_NOSIMD) testoutflt.ppm
DRC66f97e62010-11-23 05:49:54 +0000238endif
DRC0bf58f22013-02-06 23:51:08 +0000239 ./djpeg -dct int -nosmooth -scale 2/1 -ppm -outfile testoutint2_1.ppm $(srcdir)/testimages/testorig.jpg;
240 md5/md5cmp $(MD5_PPM_INT_2_1) testoutint2_1.ppm;
241 ./djpeg -dct int -nosmooth -scale 15/8 -ppm -outfile testoutint15_8.ppm $(srcdir)/testimages/testorig.jpg;
242 md5/md5cmp $(MD5_PPM_INT_15_8) testoutint15_8.ppm;
243 ./djpeg -dct int -nosmooth -scale 7/4 -ppm -outfile testoutint7_4.ppm $(srcdir)/testimages/testorig.jpg;
244 md5/md5cmp $(MD5_PPM_INT_7_4) testoutint7_4.ppm;
245 ./djpeg -dct int -nosmooth -scale 13/8 -ppm -outfile testoutint13_8.ppm $(srcdir)/testimages/testorig.jpg;
246 md5/md5cmp $(MD5_PPM_INT_13_8) testoutint13_8.ppm;
247 ./djpeg -dct int -nosmooth -scale 3/2 -ppm -outfile testoutint3_2.ppm $(srcdir)/testimages/testorig.jpg;
248 md5/md5cmp $(MD5_PPM_INT_3_2) testoutint3_2.ppm;
249 ./djpeg -dct int -nosmooth -scale 11/8 -ppm -outfile testoutint11_8.ppm $(srcdir)/testimages/testorig.jpg;
250 md5/md5cmp $(MD5_PPM_INT_11_8) testoutint11_8.ppm;
251 ./djpeg -dct int -nosmooth -scale 5/4 -ppm -outfile testoutint5_4.ppm $(srcdir)/testimages/testorig.jpg;
252 md5/md5cmp $(MD5_PPM_INT_5_4) testoutint5_4.ppm;
253 ./djpeg -dct int -nosmooth -scale 9/8 -ppm -outfile testoutint9_8.ppm $(srcdir)/testimages/testorig.jpg;
254 md5/md5cmp $(MD5_PPM_INT_9_8) testoutint9_8.ppm;
255 ./djpeg -dct int -nosmooth -scale 7/8 -ppm -outfile testoutint7_8.ppm $(srcdir)/testimages/testorig.jpg;
256 md5/md5cmp $(MD5_PPM_INT_7_8) testoutint7_8.ppm;
257 ./djpeg -dct int -nosmooth -scale 3/4 -ppm -outfile testoutint3_4.ppm $(srcdir)/testimages/testorig.jpg;
258 md5/md5cmp $(MD5_PPM_INT_3_4) testoutint3_4.ppm;
259 ./djpeg -dct int -nosmooth -scale 5/8 -ppm -outfile testoutint5_8.ppm $(srcdir)/testimages/testorig.jpg;
260 md5/md5cmp $(MD5_PPM_INT_5_8) testoutint5_8.ppm;
261 ./djpeg -dct int -nosmooth -scale 1/2 -ppm -outfile testoutint1_2.ppm $(srcdir)/testimages/testorig.jpg;
262 md5/md5cmp $(MD5_PPM_INT_1_2) testoutint1_2.ppm;
263 ./djpeg -dct int -nosmooth -scale 3/8 -ppm -outfile testoutint3_8.ppm $(srcdir)/testimages/testorig.jpg;
264 md5/md5cmp $(MD5_PPM_INT_3_8) testoutint3_8.ppm;
265 ./djpeg -dct int -nosmooth -scale 1/4 -ppm -outfile testoutint1_4.ppm $(srcdir)/testimages/testorig.jpg;
266 md5/md5cmp $(MD5_PPM_INT_1_4) testoutint1_4.ppm;
267 ./djpeg -dct int -nosmooth -scale 1/8 -ppm -outfile testoutint1_8.ppm $(srcdir)/testimages/testorig.jpg;
268 md5/md5cmp $(MD5_PPM_INT_1_8) testoutint1_8.ppm;
DRC7ab03642012-01-31 05:47:07 +0000269 ./djpeg -dct fast -scale 1/2 -ppm -outfile testoutfst1_2.ppm $(srcdir)/testimages/testorig.jpg
DRC0bf58f22013-02-06 23:51:08 +0000270 md5/md5cmp $(MD5_PPM_FAST_1_2) testoutfst1_2.ppm
DRC211d1e72013-01-13 11:25:20 +0000271 ./djpeg -dct int -bmp -colors 256 -outfile testout.bmp $(srcdir)/testimages/testorig.jpg
DRC0bf58f22013-02-06 23:51:08 +0000272 md5/md5cmp $(MD5_BMP_256) testout.bmp
DRCe3720042010-11-23 06:50:14 +0000273if WITH_ARITH_ENC
DRC7ab03642012-01-31 05:47:07 +0000274 ./cjpeg -dct int -arithmetic -outfile testoutari.jpg $(srcdir)/testimages/testorig.ppm
DRC0bf58f22013-02-06 23:51:08 +0000275 md5/md5cmp $(MD5_JPEG_ARI) testoutari.jpg
DRC7ab03642012-01-31 05:47:07 +0000276 ./jpegtran -arithmetic -outfile testouta.jpg $(srcdir)/testimages/testimgint.jpg
DRC0bf58f22013-02-06 23:51:08 +0000277 md5/md5cmp $(MD5_JPEG_ARI) testouta.jpg
DRC4b509282013-11-06 06:55:28 +0000278 ./cjpeg -dct int -progressive -arithmetic -sample 1x1 -outfile testoutpa.jpg $(srcdir)/testimages/testorig.ppm
279 md5/md5cmp $(MD5_JPEG_PROG_ARI) testoutpa.jpg
DRCe3720042010-11-23 06:50:14 +0000280endif
281if WITH_ARITH_DEC
DRC7ab03642012-01-31 05:47:07 +0000282 ./djpeg -dct int -fast -ppm -outfile testoutari.ppm $(srcdir)/testimages/testimgari.jpg
DRC0bf58f22013-02-06 23:51:08 +0000283 md5/md5cmp $(MD5_PPM_ARI) testoutari.ppm
DRC7ab03642012-01-31 05:47:07 +0000284 ./jpegtran -outfile testouta.jpg $(srcdir)/testimages/testimgari.jpg
DRC0bf58f22013-02-06 23:51:08 +0000285 md5/md5cmp $(MD5_JPEG_INT) testouta.jpg
DRCe3720042010-11-23 06:50:14 +0000286endif
DRC7ab03642012-01-31 05:47:07 +0000287 ./cjpeg -dct int -progressive -outfile testoutp.jpg $(srcdir)/testimages/testorig.ppm
DRC0bf58f22013-02-06 23:51:08 +0000288 md5/md5cmp $(MD5_JPEG_PROG) testoutp.jpg
DRC83f21442010-06-10 18:52:41 +0000289 ./jpegtran -outfile testoutt.jpg testoutp.jpg
DRC0bf58f22013-02-06 23:51:08 +0000290 md5/md5cmp $(MD5_JPEG_INT) testoutt.jpg
DRC7ab03642012-01-31 05:47:07 +0000291 ./jpegtran -crop 120x90+20+50 -transpose -perfect -outfile testoutcrop.jpg $(srcdir)/testimages/testorig.jpg
DRC0bf58f22013-02-06 23:51:08 +0000292 md5/md5cmp $(MD5_JPEG_CROP) testoutcrop.jpg
DRC83f21442010-06-10 18:52:41 +0000293
DRC83f21442010-06-10 18:52:41 +0000294
DRC34d59e72010-02-12 06:27:34 +0000295testclean:
DRC7b991722010-06-10 19:44:56 +0000296 rm -f testout*
DRCf2602ce2011-04-01 00:20:33 +0000297 rm -f *_GRAY_*.bmp
298 rm -f *_GRAY_*.png
299 rm -f *_GRAY_*.ppm
300 rm -f *_GRAY_*.jpg
DRCba6f4572011-03-31 09:41:53 +0000301 rm -f *_GRAY.yuv
DRCf2602ce2011-04-01 00:20:33 +0000302 rm -f *_420_*.bmp
303 rm -f *_420_*.png
304 rm -f *_420_*.ppm
305 rm -f *_420_*.jpg
DRCba6f4572011-03-31 09:41:53 +0000306 rm -f *_420.yuv
DRCf2602ce2011-04-01 00:20:33 +0000307 rm -f *_422_*.bmp
308 rm -f *_422_*.png
309 rm -f *_422_*.ppm
310 rm -f *_422_*.jpg
DRCba6f4572011-03-31 09:41:53 +0000311 rm -f *_422.yuv
DRCf2602ce2011-04-01 00:20:33 +0000312 rm -f *_444_*.bmp
313 rm -f *_444_*.png
314 rm -f *_444_*.ppm
315 rm -f *_444_*.jpg
DRCba6f4572011-03-31 09:41:53 +0000316 rm -f *_444.yuv
DRCf2602ce2011-04-01 00:20:33 +0000317 rm -f *_440_*.bmp
318 rm -f *_440_*.png
319 rm -f *_440_*.ppm
320 rm -f *_440_*.jpg
DRCba6f4572011-03-31 09:41:53 +0000321 rm -f *_440.yuv
DRC1f3635c2013-08-18 10:19:00 +0000322 rm -f *_411_*.bmp
323 rm -f *_411_*.png
324 rm -f *_411_*.ppm
325 rm -f *_411_*.jpg
326 rm -f *_411.yuv
DRC079b4342010-02-15 11:32:23 +0000327
DRCcb6157b2012-01-31 11:38:13 +0000328
329tjtest:
330 sh ./tjbenchtest
DRC823fbed2014-03-13 20:48:38 +0000331 sh ./tjbenchtest -yuv
DRCcb6157b2012-01-31 11:38:13 +0000332if WITH_JAVA
DRCfac3bea2012-09-24 02:27:55 +0000333 sh ./tjbenchtest.java
DRC7a6ed072014-03-17 11:14:52 +0000334 sh ./tjbenchtest.java -yuv
DRCcb6157b2012-01-31 11:38:13 +0000335endif
336
337
DRC764e1e22013-04-19 04:25:14 +0000338pkgscripts/libjpeg-turbo.spec: pkgscripts/libjpeg-turbo.spec.tmpl
339 cat pkgscripts/libjpeg-turbo.spec.tmpl | sed s@%{__prefix}@$(prefix)@g | \
340 sed s@%{__bindir}@$(bindir)@g | sed s@%{__datadir}@$(datadir)@g | \
341 sed s@%{__docdir}@$(docdir)@g | sed s@%{__includedir}@$(includedir)@g | \
342 sed s@%{__libdir}@$(libdir)@g | sed s@%{__mandir}@$(mandir)@g \
343 > pkgscripts/libjpeg-turbo.spec
DRCd1c281a2010-11-17 22:44:40 +0000344
DRC764e1e22013-04-19 04:25:14 +0000345rpm: all pkgscripts/libjpeg-turbo.spec
DRC1f80a102010-10-18 00:15:31 +0000346 TMPDIR=`mktemp -d /tmp/${PACKAGE_NAME}-build.XXXXXX`; \
347 mkdir -p $$TMPDIR/RPMS; \
348 ln -fs `pwd` $$TMPDIR/BUILD; \
DRC764e1e22013-04-19 04:25:14 +0000349 rm -f ${PKGNAME}-${VERSION}.${RPMARCH}.rpm; \
DRC1f80a102010-10-18 00:15:31 +0000350 rpmbuild -bb --define "_blddir $$TMPDIR/buildroot" \
DRC57bd84f2012-02-10 01:40:29 +0000351 --define "_topdir $$TMPDIR" \
DRCb94f2de2011-03-22 09:31:25 +0000352 --target ${RPMARCH} pkgscripts/libjpeg-turbo.spec; \
DRC764e1e22013-04-19 04:25:14 +0000353 cp $$TMPDIR/RPMS/${RPMARCH}/${PKGNAME}-${VERSION}-${BUILD}.${RPMARCH}.rpm \
354 ${PKGNAME}-${VERSION}.${RPMARCH}.rpm; \
DRC1f80a102010-10-18 00:15:31 +0000355 rm -rf $$TMPDIR
DRC079b4342010-02-15 11:32:23 +0000356
DRC764e1e22013-04-19 04:25:14 +0000357srpm: dist-gzip pkgscripts/libjpeg-turbo.spec
DRC1f80a102010-10-18 00:15:31 +0000358 TMPDIR=`mktemp -d /tmp/${PACKAGE_NAME}-build.XXXXXX`; \
359 mkdir -p $$TMPDIR/RPMS; \
360 mkdir -p $$TMPDIR/SRPMS; \
361 mkdir -p $$TMPDIR/BUILD; \
362 mkdir -p $$TMPDIR/SOURCES; \
363 mkdir -p $$TMPDIR/SPECS; \
DRC764e1e22013-04-19 04:25:14 +0000364 rm -f ${PKGNAME}-${VERSION}.src.rpm; \
DRC1f80a102010-10-18 00:15:31 +0000365 cp ${PACKAGE_NAME}-${VERSION}.tar.gz $$TMPDIR/SOURCES; \
DRCb94f2de2011-03-22 09:31:25 +0000366 cat pkgscripts/libjpeg-turbo.spec | sed s/%{_blddir}/%{_tmppath}/g \
DRC57bd84f2012-02-10 01:40:29 +0000367 | sed s/#--\>//g \
DRCb94f2de2011-03-22 09:31:25 +0000368 > $$TMPDIR/SPECS/libjpeg-turbo.spec; \
DRC1f80a102010-10-18 00:15:31 +0000369 rpmbuild -bs --define "_topdir $$TMPDIR" $$TMPDIR/SPECS/libjpeg-turbo.spec; \
DRC764e1e22013-04-19 04:25:14 +0000370 cp $$TMPDIR/SRPMS/${PKGNAME}-${VERSION}-${BUILD}.src.rpm \
371 ${PKGNAME}-${VERSION}.src.rpm; \
DRC1f80a102010-10-18 00:15:31 +0000372 rm -rf $$TMPDIR
DRC52a19f22010-02-15 12:06:27 +0000373
DRC764e1e22013-04-19 04:25:14 +0000374pkgscripts/makedpkg: pkgscripts/makedpkg.tmpl
375 cat pkgscripts/makedpkg.tmpl | sed s@%{__prefix}@$(prefix)@g | \
DRC7175e512013-04-23 22:29:00 +0000376 sed s@%{__docdir}@$(docdir)@g | sed s@%{__libdir}@$(libdir)@g \
DRC764e1e22013-04-19 04:25:14 +0000377 > pkgscripts/makedpkg
378
379deb: all pkgscripts/makedpkg
DRCb94f2de2011-03-22 09:31:25 +0000380 sh pkgscripts/makedpkg
DRC6533b6e2010-02-15 14:57:18 +0000381
DRC7175e512013-04-23 22:29:00 +0000382pkgscripts/uninstall: pkgscripts/uninstall.tmpl
383 cat pkgscripts/uninstall.tmpl | sed s@%{__prefix}@$(prefix)@g | \
384 sed s@%{__bindir}@$(bindir)@g | sed s@%{__datadir}@$(datadir)@g | \
385 sed s@%{__includedir}@$(includedir)@g | sed s@%{__libdir}@$(libdir)@g | \
386 sed s@%{__mandir}@$(mandir)@g > pkgscripts/uninstall
387
388pkgscripts/makemacpkg: pkgscripts/makemacpkg.tmpl
389 cat pkgscripts/makemacpkg.tmpl | sed s@%{__prefix}@$(prefix)@g | \
390 sed s@%{__bindir}@$(bindir)@g | sed s@%{__docdir}@$(docdir)@g | \
391 sed s@%{__libdir}@$(libdir)@g > pkgscripts/makemacpkg
392
DRC315123f2010-02-15 16:14:26 +0000393if X86_64
394
DRC7175e512013-04-23 22:29:00 +0000395udmg: all pkgscripts/makemacpkg pkgscripts/uninstall
DRC7c6ae032012-03-23 00:51:56 +0000396 sh pkgscripts/makemacpkg -build32 ${BUILDDIR32}
DRC315123f2010-02-15 16:14:26 +0000397
DRC7175e512013-04-23 22:29:00 +0000398iosdmg: all pkgscripts/makemacpkg pkgscripts/uninstall
DRCa2a2cd62013-02-04 22:29:57 +0000399 sh pkgscripts/makemacpkg -build32 ${BUILDDIR32} -buildarmv6 ${BUILDDIRARMV6} -buildarmv7 ${BUILDDIRARMV7} -buildarmv7s ${BUILDDIRARMV7S}
DRC166c5ec2012-02-10 01:07:59 +0000400
401else
402
DRC7175e512013-04-23 22:29:00 +0000403iosdmg: all pkgscripts/makemacpkg pkgscripts/uninstall
DRCa2a2cd62013-02-04 22:29:57 +0000404 sh pkgscripts/makemacpkg -buildarmv6 ${BUILDDIRARMV6} -buildarmv7 ${BUILDDIRARMV7} -buildarmv7s ${BUILDDIRARMV7S}
DRC1fbae842012-02-09 09:23:30 +0000405
DRC315123f2010-02-15 16:14:26 +0000406endif
407
DRC7175e512013-04-23 22:29:00 +0000408dmg: all pkgscripts/makemacpkg pkgscripts/uninstall
DRCb94f2de2011-03-22 09:31:25 +0000409 sh pkgscripts/makemacpkg
DRCb9b1ca32010-02-17 02:24:02 +0000410
DRC7175e512013-04-23 22:29:00 +0000411pkgscripts/makecygwinpkg: pkgscripts/makecygwinpkg.tmpl
412 cat pkgscripts/makecygwinpkg.tmpl | sed s@%{__prefix}@$(prefix)@g | \
413 sed s@%{__docdir}@$(docdir)@g | sed s@%{__libdir}@$(libdir)@g \
414 > pkgscripts/makecygwinpkg
415
DRC764e1e22013-04-19 04:25:14 +0000416cygwinpkg: all pkgscripts/makecygwinpkg
DRCb94f2de2011-03-22 09:31:25 +0000417 sh pkgscripts/makecygwinpkg