Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(303)

Side by Side Diff: Makefile.am

Issue 1934113002: Update libjpeg_turbo to 1.4.90 from https://github.com/libjpeg-turbo/ (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 lib_LTLIBRARIES = libjpeg.la
2 libjpeg_la_LDFLAGS = -version-info ${LIBTOOL_CURRENT}:${SO_MINOR_VERSION}:${SO_A GE} -no-undefined
3 include_HEADERS = jerror.h jmorecfg.h jpeglib.h
4
5 if WITH_TURBOJPEG
6 lib_LTLIBRARIES += libturbojpeg.la
7 libturbojpeg_la_LDFLAGS = -version-info 1:0:1 -no-undefined
8 include_HEADERS += turbojpeg.h
9 endif
10
11 nodist_include_HEADERS = jconfig.h
12
13 pkgconfigdir = $(libdir)/pkgconfig
14 pkgconfig_DATA = pkgscripts/libjpeg.pc pkgscripts/libturbojpeg.pc
15
16 HDRS = jchuff.h jdct.h jdhuff.h jerror.h jinclude.h jmemsys.h jmorecfg.h \
17 jpegint.h jpeglib.h jversion.h jsimd.h jsimddct.h jpegcomp.h \
18 jpeg_nbits_table.h
19
20 libjpeg_la_SOURCES = $(HDRS) jcapimin.c jcapistd.c jccoefct.c jccolor.c \
21 jcdctmgr.c jchuff.c jcinit.c jcmainct.c jcmarker.c jcmaster.c \
22 jcomapi.c jcparam.c jcphuff.c jcprepct.c jcsample.c jctrans.c \
23 jdapimin.c jdapistd.c jdatadst.c jdatasrc.c jdcoefct.c jdcolor.c \
24 jddctmgr.c jdhuff.c jdinput.c jdmainct.c jdmarker.c jdmaster.c \
25 jdmerge.c jdphuff.c jdpostct.c jdsample.c jdtrans.c jerror.c \
26 jfdctflt.c jfdctfst.c jfdctint.c jidctflt.c jidctfst.c jidctint.c \
27 jidctred.c jquant1.c jquant2.c jutils.c jmemmgr.c jmemnobs.c
28
29 if WITH_ARITH
30 libjpeg_la_SOURCES += jaricom.c
31 endif
32
33 if WITH_ARITH_ENC
34 libjpeg_la_SOURCES += jcarith.c
35 endif
36
37 if WITH_ARITH_DEC
38 libjpeg_la_SOURCES += jdarith.c
39 endif
40
41
42 SUBDIRS = java
43
44
45 if WITH_TURBOJPEG
46
47 libturbojpeg_la_SOURCES = $(libjpeg_la_SOURCES) turbojpeg.c turbojpeg.h \
48 transupp.c transupp.h jdatadst-tj.c jdatasrc-tj.c
49
50 if WITH_JAVA
51
52 libturbojpeg_la_SOURCES += turbojpeg-jni.c
53 libturbojpeg_la_CFLAGS = ${JNI_CFLAGS}
54 TJMAPFILE = turbojpeg-mapfile.jni
55
56 else
57
58 TJMAPFILE = turbojpeg-mapfile
59
60 endif
61
62 libturbojpeg_la_SOURCES += $(TJMAPFILE)
63
64 if VERSION_SCRIPT
65 libturbojpeg_la_LDFLAGS += $(VERSION_SCRIPT_FLAG)$(srcdir)/$(TJMAPFILE)
66 endif
67
68 endif
69
70
71 if VERSION_SCRIPT
72 libjpeg_la_LDFLAGS += $(VERSION_SCRIPT_FLAG)libjpeg.map
73 endif
74
75
76 if WITH_SIMD
77
78 SUBDIRS += simd
79 libjpeg_la_LIBADD = simd/libsimd.la
80 libturbojpeg_la_LIBADD = simd/libsimd.la
81
82 else
83
84 libjpeg_la_SOURCES += jsimd_none.c
85
86 endif
87
88
89 bin_PROGRAMS = cjpeg djpeg jpegtran rdjpgcom wrjpgcom
90 noinst_PROGRAMS = jcstest
91
92
93 if WITH_TURBOJPEG
94
95 bin_PROGRAMS += tjbench
96
97 noinst_PROGRAMS += tjunittest
98
99 tjbench_SOURCES = tjbench.c bmp.h bmp.c tjutil.h tjutil.c rdbmp.c rdppm.c \
100 wrbmp.c wrppm.c
101
102 tjbench_LDADD = libturbojpeg.la libjpeg.la -lm
103
104 tjbench_CFLAGS = -DBMP_SUPPORTED -DPPM_SUPPORTED
105
106 tjunittest_SOURCES = tjunittest.c tjutil.h tjutil.c
107
108 tjunittest_LDADD = libturbojpeg.la
109
110 endif
111
112
113 cjpeg_SOURCES = cdjpeg.h cderror.h cdjpeg.c cjpeg.c rdgif.c rdppm.c rdswitch.c
114 if WITH_12BIT
115 else
116 cjpeg_SOURCES += rdbmp.c rdtarga.c
117 endif
118
119 cjpeg_LDADD = libjpeg.la
120
121 cjpeg_CFLAGS = -DGIF_SUPPORTED -DPPM_SUPPORTED
122 if WITH_12BIT
123 else
124 cjpeg_CFLAGS += -DBMP_SUPPORTED -DTARGA_SUPPORTED
125 endif
126
127 djpeg_SOURCES = cdjpeg.h cderror.h cdjpeg.c djpeg.c rdcolmap.c rdswitch.c \
128 wrgif.c wrppm.c
129 if WITH_12BIT
130 else
131 djpeg_SOURCES += wrbmp.c wrtarga.c
132 endif
133
134 djpeg_LDADD = libjpeg.la
135
136 djpeg_CFLAGS = -DGIF_SUPPORTED -DPPM_SUPPORTED
137 if WITH_12BIT
138 else
139 djpeg_CFLAGS += -DBMP_SUPPORTED -DTARGA_SUPPORTED
140 endif
141
142 jpegtran_SOURCES = jpegtran.c rdswitch.c cdjpeg.c transupp.c transupp.h
143
144 jpegtran_LDADD = libjpeg.la
145
146 rdjpgcom_SOURCES = rdjpgcom.c
147
148 rdjpgcom_LDADD = libjpeg.la
149
150 wrjpgcom_SOURCES = wrjpgcom.c
151
152 wrjpgcom_LDADD = libjpeg.la
153
154 jcstest_SOURCES = jcstest.c
155
156 jcstest_LDADD = libjpeg.la
157
158 dist_man1_MANS = cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 wrjpgcom.1
159
160 DOCS= coderules.txt jconfig.txt change.log rdrle.c wrrle.c BUILDING.md \
161 ChangeLog.txt
162
163 dist_doc_DATA = README.ijg README.md libjpeg.txt structure.txt usage.txt \
164 wizard.txt LICENSE.md
165
166 exampledir = $(docdir)
167 dist_example_DATA = example.c
168
169
170 EXTRA_DIST = win release $(DOCS) testimages CMakeLists.txt \
171 sharedlib/CMakeLists.txt cmakescripts libjpeg.map.in doc doxygen.config \
172 doxygen-extra.css jccolext.c jdcolext.c jdcol565.c jdmrgext.c jdmrg565.c \
173 jstdhuff.c jdcoefct.h jdmainct.h jdmaster.h jdsample.h wrppm.h \
174 md5/CMakeLists.txt
175
176 dist-hook:
177 rm -rf `find $(distdir) -name .svn`
178
179
180 SUBDIRS += md5
181
182 if WITH_12BIT
183
184 TESTORIG = testorig12.jpg
185 MD5_JPEG_RGB_ISLOW = 9620f424569594bb9242b48498ad801f
186 MD5_PPM_RGB_ISLOW = f3301d2219783b8b3d942b7239fa50c0
187 MD5_JPEG_422_IFAST_OPT = 7322e3bd2f127f7de4b40d4480ce60e4
188 MD5_PPM_422_IFAST = 79807fa552899e66a04708f533e16950
189 MD5_PPM_422M_IFAST = 07737bfe8a7c1c87aaa393a0098d16b0
190 MD5_JPEG_420_IFAST_Q100_PROG = a1da220b5604081863a504297ed59e55
191 MD5_PPM_420_Q100_IFAST = 1b3730122709f53d007255e8dfd3305e
192 MD5_PPM_420M_Q100_IFAST = 980a1a3c5bf9510022869d30b7d26566
193 MD5_JPEG_GRAY_ISLOW = 235c90707b16e2e069f37c888b2636d9
194 MD5_PPM_GRAY_ISLOW = 7213c10af507ad467da5578ca5ee1fca
195 MD5_PPM_GRAY_ISLOW_RGB = e96ee81c30a6ed422d466338bd3de65d
196 MD5_JPEG_420S_IFAST_OPT = 7af8e60be4d9c227ec63ac9b6630855e
197 MD5_JPEG_3x2_FLOAT_PROG_SSE = a8c17daf77b457725ec929e215b603f8
198 MD5_PPM_3x2_FLOAT_SSE = 42876ab9e5c2f76a87d08db5fbd57956
199 MD5_JPEG_3x2_FLOAT_PROG_32BIT = a8c17daf77b457725ec929e215b603f8
200 MD5_PPM_3x2_FLOAT_32BIT = 42876ab9e5c2f76a87d08db5fbd57956
201 MD5_PPM_3x2_FLOAT_64BIT = d6fbc71153b3d8ded484dbc17c7b9cf4
202 MD5_JPEG_3x2_IFAST_PROG = 1396cc2b7185cfe943d408c9d305339e
203 MD5_PPM_3x2_IFAST = 3975985ef6eeb0a2cdc58daa651ccc00
204 MD5_PPM_420M_ISLOW_2_1 = 4ca6be2a6f326ff9eaab63e70a8259c0
205 MD5_PPM_420M_ISLOW_15_8 = 12aa9f9534c1b3d7ba047322226365eb
206 MD5_PPM_420M_ISLOW_13_8 = f7e22817c7b25e1393e4ec101e9d4e96
207 MD5_PPM_420M_ISLOW_11_8 = 800a16f9f4dc9b293197bfe11be10a82
208 MD5_PPM_420M_ISLOW_9_8 = 06b7a92a9bc69f4dc36ec40f1937d55c
209 MD5_PPM_420M_ISLOW_7_8 = 3ec444a14a4ab4eab88ffc49c48eca43
210 MD5_PPM_420M_ISLOW_3_4 = 3e726b7ea872445b19437d1c1d4f0d93
211 MD5_PPM_420M_ISLOW_5_8 = a8a771abdc94301d20ffac119b2caccd
212 MD5_PPM_420M_ISLOW_1_2 = b419124dd5568b085787234866102866
213 MD5_PPM_420M_ISLOW_3_8 = 343d19015531b7bbe746124127244fa8
214 MD5_PPM_420M_ISLOW_1_4 = 35fd59d866e44659edfa3c18db2a3edb
215 MD5_PPM_420M_ISLOW_1_8 = ccaed48ac0aedefda5d4abe4013f4ad7
216 MD5_PPM_420_ISLOW_SKIP15_31 = 86664cd9dc956536409e44e244d20a97
217 MD5_PPM_420_ISLOW_PROG_CROP62x62_71_71 = 452a21656115a163029cfba5c04fa76a
218 MD5_PPM_444_ISLOW_SKIP1_6 = ef63901f71ef7a75cd78253fc0914f84
219 MD5_PPM_444_ISLOW_PROG_CROP98x98_13_13 = 15b173fb5872d9575572fbcc1b05956f
220 MD5_JPEG_CROP = cdb35ff4b4519392690ea040c56ea99c
221
222 else
223
224 TESTORIG = testorig.jpg
225 MD5_JPEG_RGB_ISLOW = 768e970dd57b340ff1b83c9d3d47c77b
226 MD5_PPM_RGB_ISLOW = 00a257f5393fef8821f2b88ac7421291
227 MD5_BMP_RGB_ISLOW_565 = f07d2e75073e4bb10f6c6f4d36e2e3be
228 MD5_BMP_RGB_ISLOW_565D = 4cfa0928ef3e6bb626d7728c924cfda4
229 MD5_JPEG_422_IFAST_OPT = 2540287b79d913f91665e660303ab2c8
230 MD5_PPM_422_IFAST = 35bd6b3f833bad23de82acea847129fa
231 MD5_PPM_422M_IFAST = 8dbc65323d62cca7c91ba02dd1cfa81d
232 MD5_BMP_422M_IFAST_565 = 3294bd4d9a1f2b3d08ea6020d0db7065
233 MD5_BMP_422M_IFAST_565D = da98c9c7b6039511be4a79a878a9abc1
234 MD5_JPEG_420_IFAST_Q100_PROG = 990cbe0329c882420a2094da7e5adade
235 MD5_PPM_420_Q100_IFAST = 5a732542015c278ff43635e473a8a294
236 MD5_PPM_420M_Q100_IFAST = ff692ee9323a3b424894862557c092f1
237 MD5_JPEG_GRAY_ISLOW = 72b51f894b8f4a10b3ee3066770aa38d
238 MD5_PPM_GRAY_ISLOW = 8d3596c56eace32f205deccc229aa5ed
239 MD5_PPM_GRAY_ISLOW_RGB = 116424ac07b79e5e801f00508eab48ec
240 MD5_BMP_GRAY_ISLOW_565 = 12f78118e56a2f48b966f792fedf23cc
241 MD5_BMP_GRAY_ISLOW_565D = bdbbd616441a24354c98553df5dc82db
242 MD5_JPEG_420S_IFAST_OPT = 388708217ac46273ca33086b22827ed8
243 # See README.md for more details on why this next bit is necessary.
244 MD5_JPEG_3x2_FLOAT_PROG_SSE = 343e3f8caf8af5986ebaf0bdc13b5c71
245 MD5_PPM_3x2_FLOAT_SSE = 1a75f36e5904d6fc3a85a43da9ad89bb
246 MD5_JPEG_3x2_FLOAT_PROG_32BIT = 9bca803d2042bd1eb03819e2bf92b3e5
247 MD5_PPM_3x2_FLOAT_32BIT = f6bfab038438ed8f5522fbd33595dcdc
248 MD5_PPM_3x2_FLOAT_64BIT = 0e917a34193ef976b679a6b069b1be26
249 MD5_JPEG_3x2_IFAST_PROG = 1ee5d2c1a77f2da495f993c8c7cceca5
250 MD5_PPM_3x2_IFAST = fd283664b3b49127984af0a7f118fccd
251 MD5_JPEG_420_ISLOW_ARI = e986fb0a637a8d833d96e8a6d6d84ea1
252 MD5_JPEG_444_ISLOW_PROGARI = 0a8f1c8f66e113c3cf635df0a475a617
253 MD5_PPM_420M_IFAST_ARI = 72b59a99bcf1de24c5b27d151bde2437
254 MD5_JPEG_420_ISLOW = 9a68f56bc76e466aa7e52f415d0f4a5f
255 MD5_PPM_420M_ISLOW_2_1 = 9f9de8c0612f8d06869b960b05abf9c9
256 MD5_PPM_420M_ISLOW_15_8 = b6875bc070720b899566cc06459b63b7
257 MD5_PPM_420M_ISLOW_13_8 = bc3452573c8152f6ae552939ee19f82f
258 MD5_PPM_420M_ISLOW_11_8 = d8cc73c0aaacd4556569b59437ba00a5
259 MD5_PPM_420M_ISLOW_9_8 = d25e61bc7eac0002f5b393aa223747b6
260 MD5_PPM_420M_ISLOW_7_8 = ddb564b7c74a09494016d6cd7502a946
261 MD5_PPM_420M_ISLOW_3_4 = 8ed8e68808c3fbc4ea764fc9d2968646
262 MD5_PPM_420M_ISLOW_5_8 = a3363274999da2366a024efae6d16c9b
263 MD5_PPM_420M_ISLOW_1_2 = e692a315cea26b988c8e8b29a5dbcd81
264 MD5_PPM_420M_ISLOW_3_8 = 79eca9175652ced755155c90e785a996
265 MD5_PPM_420M_ISLOW_1_4 = 79cd778f8bf1a117690052cacdd54eca
266 MD5_PPM_420M_ISLOW_1_8 = 391b3d4aca640c8567d6f8745eb2142f
267 MD5_BMP_420_ISLOW_256 = 4980185e3776e89bd931736e1cddeee6
268 MD5_BMP_420_ISLOW_565 = bf9d13e16c4923b92e1faa604d7922cb
269 MD5_BMP_420_ISLOW_565D = 6bde71526acc44bcff76f696df8638d2
270 MD5_BMP_420M_ISLOW_565 = 8dc0185245353cfa32ad97027342216f
271 MD5_BMP_420M_ISLOW_565D =d1be3a3339166255e76fa50a0d70d73e
272 MD5_PPM_420_ISLOW_SKIP15_31 = c4c65c1e43d7275cd50328a61e6534f0
273 MD5_PPM_420_ISLOW_ARI_SKIP16_139 = 087c6b123db16ac00cb88c5b590bb74a
274 MD5_PPM_420_ISLOW_PROG_CROP62x62_71_71 = 26eb36ccc7d1f0cb80cdabb0ac8b5d99
275 MD5_PPM_420_ISLOW_ARI_CROP53x53_4_4 = 886c6775af22370257122f8b16207e6d
276 MD5_PPM_444_ISLOW_SKIP1_6 = 5606f86874cf26b8fcee1117a0a436a6
277 MD5_PPM_444_ISLOW_PROG_CROP98x98_13_13 = db87dc7ce26bcdc7a6b56239ce2b9d6c
278 MD5_PPM_444_ISLOW_ARI_CROP37x37_0_0 = cb57b32bd6d03e35432362f7bf184b6d
279 MD5_JPEG_CROP = b4197f377e621c4e9b1d20471432610d
280
281 endif
282
283 .PHONY: test
284 test: tjquicktest tjbittest bittest
285
286 if CROSS_COMPILING
287 tjquicktest: testclean
288 else
289 tjquicktest: testclean all
290 endif
291
292 if WITH_TURBOJPEG
293 if WITH_JAVA
294 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest
295 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -bi
296 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv
297 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv -noyuvpad
298 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv -bi
299 $(JAVA) -cp java/turbojpeg.jar -Djava.library.path=.libs TJUnitTest -yuv -bi -noyuvpad
300 endif
301 ./tjunittest
302 ./tjunittest -alloc
303 ./tjunittest -yuv
304 ./tjunittest -yuv -alloc
305 ./tjunittest -yuv -noyuvpad
306 endif
307 echo GREAT SUCCESS!
308
309 if CROSS_COMPILING
310 tjbittest: testclean
311 else
312 tjbittest: testclean all
313 endif
314
315 if WITH_TURBOJPEG
316
317 MD5_PPM_GRAY_TILE = 89d3ca21213d9d864b50b4e4e7de4ca6
318 MD5_PPM_420_8x8_TILE = 847fceab15c5b7b911cb986cf0f71de3
319 MD5_PPM_420_16x16_TILE = ca45552a93687e078f7137cc4126a7b0
320 MD5_PPM_420_32x32_TILE = d8676f1d6b68df358353bba9844f4a00
321 MD5_PPM_420_64x64_TILE = 4e4c1a3d7ea4bace4f868bcbe83b7050
322 MD5_PPM_420_128x128_TILE = f24c3429c52265832beab9df72a0ceae
323 MD5_PPM_420M_8x8_TILE = bc25320e1f4c31ce2e610e43e9fd173c
324 MD5_PPM_420M_TILE = 75ffdf14602258c5c189522af57fa605
325 MD5_PPM_422_8x8_TILE = d83dacd9fc73b0a6f10c09acad64eb1e
326 MD5_PPM_422_16x16_TILE = 35077fb610d72dd743b1eb0cbcfe10fb
327 MD5_PPM_422_32x32_TILE = e6902ed8a449ecc0f0d6f2bf945f65f7
328 MD5_PPM_422_64x64_TILE = 2b4502a8f316cedbde1da7bce3d2231e
329 MD5_PPM_422_128x128_TILE = f0b5617d578f5e13c8eee215d64d4877
330 MD5_PPM_422M_8x8_TILE = 828941d7f41cd6283abd6beffb7fd51d
331 MD5_PPM_422M_TILE = e877ae1324c4a280b95376f7f018172f
332 MD5_PPM_444_TILE = 7964e41e67cfb8d0a587c0aa4798f9c3
333
334 # Test compressing from/decompressing to an arbitrary subregion of a larger
335 # image buffer
336 cp $(srcdir)/testimages/testorig.ppm testout_tile.ppm
337 ./tjbench testout_tile.ppm 95 -rgb -quiet -tile -benchtime 0.01 >/dev/nu ll 2>&1
338 for i in 8 16 32 64 128; do \
339 md5/md5cmp $(MD5_PPM_GRAY_TILE) testout_tile_GRAY_Q95_$$i\x$$i.p pm; \
340 done
341 md5/md5cmp $(MD5_PPM_420_8x8_TILE) testout_tile_420_Q95_8x8.ppm
342 md5/md5cmp $(MD5_PPM_420_16x16_TILE) testout_tile_420_Q95_16x16.ppm
343 md5/md5cmp $(MD5_PPM_420_32x32_TILE) testout_tile_420_Q95_32x32.ppm
344 md5/md5cmp $(MD5_PPM_420_64x64_TILE) testout_tile_420_Q95_64x64.ppm
345 md5/md5cmp $(MD5_PPM_420_128x128_TILE) testout_tile_420_Q95_128x128.ppm
346 md5/md5cmp $(MD5_PPM_422_8x8_TILE) testout_tile_422_Q95_8x8.ppm
347 md5/md5cmp $(MD5_PPM_422_16x16_TILE) testout_tile_422_Q95_16x16.ppm
348 md5/md5cmp $(MD5_PPM_422_32x32_TILE) testout_tile_422_Q95_32x32.ppm
349 md5/md5cmp $(MD5_PPM_422_64x64_TILE) testout_tile_422_Q95_64x64.ppm
350 md5/md5cmp $(MD5_PPM_422_128x128_TILE) testout_tile_422_Q95_128x128.ppm
351 for i in 8 16 32 64 128; do \
352 md5/md5cmp $(MD5_PPM_444_TILE) testout_tile_444_Q95_$$i\x$$i.ppm ; \
353 done
354 rm -f testout_tile_GRAY_* testout_tile_420_* testout_tile_422_* testout_ tile_444_*
355
356 ./tjbench testout_tile.ppm 95 -rgb -fastupsample -quiet -tile -benchtime 0.01 >/dev/null 2>&1
357 md5/md5cmp $(MD5_PPM_420M_8x8_TILE) testout_tile_420_Q95_8x8.ppm
358 for i in 16 32 64 128; do \
359 md5/md5cmp $(MD5_PPM_420M_TILE) testout_tile_420_Q95_$$i\x$$i.pp m; \
360 done
361 md5/md5cmp $(MD5_PPM_422M_8x8_TILE) testout_tile_422_Q95_8x8.ppm
362 for i in 16 32 64 128; do \
363 md5/md5cmp $(MD5_PPM_422M_TILE) testout_tile_422_Q95_$$i\x$$i.pp m; \
364 done
365 rm -f testout_tile_GRAY_* testout_tile_420_* testout_tile_422_* testout_ tile_444_* testout_tile.ppm
366 echo GREAT SUCCESS!
367
368 endif
369
370 if CROSS_COMPILING
371 bittest: testclean
372 else
373 bittest: testclean all
374 endif
375
376 # These tests are carefully crafted to provide full coverage of as many of the
377 # underlying algorithms as possible (including all of the SIMD-accelerated
378 # ones.)
379
380 # CC: null SAMP: fullsize FDCT: islow ENT: huff
381 ./cjpeg -rgb -dct int -outfile testout_rgb_islow.jpg $(srcdir)/testimage s/testorig.ppm
382 md5/md5cmp $(MD5_JPEG_RGB_ISLOW) testout_rgb_islow.jpg
383 # CC: null SAMP: fullsize IDCT: islow ENT: huff
384 ./djpeg -dct int -ppm -outfile testout_rgb_islow.ppm testout_rgb_islow.j pg
385 md5/md5cmp $(MD5_PPM_RGB_ISLOW) testout_rgb_islow.ppm
386 rm -f testout_rgb_islow.ppm
387 if WITH_12BIT
388 rm -f testout_rgb_islow.jpg
389 else
390 # CC: RGB->RGB565 SAMP: fullsize IDCT: islow ENT: huff
391 ./djpeg -dct int -rgb565 -dither none -bmp -outfile testout_rgb_islow_56 5.bmp testout_rgb_islow.jpg
392 md5/md5cmp $(MD5_BMP_RGB_ISLOW_565) testout_rgb_islow_565.bmp
393 rm -f testout_rgb_islow_565.bmp
394 # CC: RGB->RGB565 (dithered) SAMP: fullsize IDCT: islow ENT: huff
395 ./djpeg -dct int -rgb565 -bmp -outfile testout_rgb_islow_565D.bmp testou t_rgb_islow.jpg
396 md5/md5cmp $(MD5_BMP_RGB_ISLOW_565D) testout_rgb_islow_565D.bmp
397 rm -f testout_rgb_islow_565D.bmp testout_rgb_islow.jpg
398 endif
399
400 # CC: RGB->YCC SAMP: fullsize/h2v1 FDCT: ifast ENT: 2-pass huff
401 ./cjpeg -sample 2x1 -dct fast -opt -outfile testout_422_ifast_opt.jpg $( srcdir)/testimages/testorig.ppm
402 md5/md5cmp $(MD5_JPEG_422_IFAST_OPT) testout_422_ifast_opt.jpg
403 # CC: YCC->RGB SAMP: fullsize/h2v1 fancy IDCT: ifast ENT: huff
404 ./djpeg -dct fast -outfile testout_422_ifast.ppm testout_422_ifast_opt.j pg
405 md5/md5cmp $(MD5_PPM_422_IFAST) testout_422_ifast.ppm
406 rm -f testout_422_ifast.ppm
407 # CC: YCC->RGB SAMP: h2v1 merged IDCT: ifast ENT: huff
408 ./djpeg -dct fast -nosmooth -outfile testout_422m_ifast.ppm testout_422_ ifast_opt.jpg
409 md5/md5cmp $(MD5_PPM_422M_IFAST) testout_422m_ifast.ppm
410 rm -f testout_422m_ifast.ppm
411 if WITH_12BIT
412 rm -f testout_422_ifast_opt.jpg
413 else
414 # CC: YCC->RGB565 SAMP: h2v1 merged IDCT: ifast ENT: huff
415 ./djpeg -dct int -nosmooth -rgb565 -dither none -bmp -outfile testout_42 2m_ifast_565.bmp testout_422_ifast_opt.jpg
416 md5/md5cmp $(MD5_BMP_422M_IFAST_565) testout_422m_ifast_565.bmp
417 rm -f testout_422m_ifast_565.bmp
418 # CC: YCC->RGB565 (dithered) SAMP: h2v1 merged IDCT: ifast ENT: huff
419 ./djpeg -dct int -nosmooth -rgb565 -bmp -outfile testout_422m_ifast_565D .bmp testout_422_ifast_opt.jpg
420 md5/md5cmp $(MD5_BMP_422M_IFAST_565D) testout_422m_ifast_565D.bmp
421 rm -f testout_422m_ifast_565D.bmp testout_422_ifast_opt.jpg
422 endif
423
424 # CC: RGB->YCC SAMP: fullsize/h2v2 FDCT: ifast ENT: prog huff
425 ./cjpeg -sample 2x2 -quality 100 -dct fast -prog -outfile testout_420_q1 00_ifast_prog.jpg $(srcdir)/testimages/testorig.ppm
426 md5/md5cmp $(MD5_JPEG_420_IFAST_Q100_PROG) testout_420_q100_ifast_prog.j pg
427 # CC: YCC->RGB SAMP: fullsize/h2v2 fancy IDCT: ifast ENT: prog huff
428 ./djpeg -dct fast -outfile testout_420_q100_ifast.ppm testout_420_q100_i fast_prog.jpg
429 md5/md5cmp $(MD5_PPM_420_Q100_IFAST) testout_420_q100_ifast.ppm
430 rm -f testout_420_q100_ifast.ppm
431 # CC: YCC->RGB SAMP: h2v2 merged IDCT: ifast ENT: prog huff
432 ./djpeg -dct fast -nosmooth -outfile testout_420m_q100_ifast.ppm testout _420_q100_ifast_prog.jpg
433 md5/md5cmp $(MD5_PPM_420M_Q100_IFAST) testout_420m_q100_ifast.ppm
434 rm -f testout_420m_q100_ifast.ppm testout_420_q100_ifast_prog.jpg
435
436 # CC: RGB->Gray SAMP: fullsize FDCT: islow ENT: huff
437 ./cjpeg -gray -dct int -outfile testout_gray_islow.jpg $(srcdir)/testima ges/testorig.ppm
438 md5/md5cmp $(MD5_JPEG_GRAY_ISLOW) testout_gray_islow.jpg
439 # CC: Gray->Gray SAMP: fullsize IDCT: islow ENT: huff
440 ./djpeg -dct int -outfile testout_gray_islow.ppm testout_gray_islow.jpg
441 md5/md5cmp $(MD5_PPM_GRAY_ISLOW) testout_gray_islow.ppm
442 rm -f testout_gray_islow.ppm
443 # CC: Gray->RGB SAMP: fullsize IDCT: islow ENT: huff
444 ./djpeg -dct int -rgb -outfile testout_gray_islow_rgb.ppm testout_gray_i slow.jpg
445 md5/md5cmp $(MD5_PPM_GRAY_ISLOW_RGB) testout_gray_islow_rgb.ppm
446 rm -f testout_gray_islow_rgb.ppm
447 if WITH_12BIT
448 rm -f testout_gray_islow.jpg
449 else
450 # CC: Gray->RGB565 SAMP: fullsize IDCT: islow ENT: huff
451 ./djpeg -dct int -rgb565 -dither none -bmp -outfile testout_gray_islow_5 65.bmp testout_gray_islow.jpg
452 md5/md5cmp $(MD5_BMP_GRAY_ISLOW_565) testout_gray_islow_565.bmp
453 rm -f testout_gray_islow_565.bmp
454 # CC: Gray->RGB565 (dithered) SAMP: fullsize IDCT: islow ENT: huff
455 ./djpeg -dct int -rgb565 -bmp -outfile testout_gray_islow_565D.bmp testo ut_gray_islow.jpg
456 md5/md5cmp $(MD5_BMP_GRAY_ISLOW_565D) testout_gray_islow_565D.bmp
457 rm -f testout_gray_islow_565D.bmp testout_gray_islow.jpg
458 endif
459
460 # CC: RGB->YCC SAMP: fullsize smooth/h2v2 smooth FDCT: islow
461 # ENT: 2-pass huff
462 ./cjpeg -sample 2x2 -smooth 1 -dct int -opt -outfile testout_420s_ifast_ opt.jpg $(srcdir)/testimages/testorig.ppm
463 md5/md5cmp $(MD5_JPEG_420S_IFAST_OPT) testout_420s_ifast_opt.jpg
464 rm -f testout_420s_ifast_opt.jpg
465
466 # The output of the floating point tests is not validated by default, because
467 # the output differs depending on the type of floating point math used, and
468 # this is only deterministic if the DCT/IDCT are implemented using SIMD
469 # instructions on a particular platform. Pass one of the following on the make
470 # command line to validate the floating point tests against one of the expected
471 # results:
472 #
473 # FLOATTEST=sse validate against the expected results from the libjpeg-turbo
474 # SSE SIMD extensions
475 # FLOATTEST=32bit validate against the expected results from the C code
476 # when running on a 32-bit FPU (or when SSE is being used for
477 # floating point math, which is generally the default with
478 # x86-64 compilers)
479 # FLOATTEST=64bit validate against the exepected results from the C code
480 # when running on a 64-bit FPU
481
482 # CC: RGB->YCC SAMP: fullsize/int FDCT: float ENT: prog huff
483 ./cjpeg -sample 3x2 -dct float -prog -outfile testout_3x2_float_prog.jpg $(srcdir)/testimages/testorig.ppm
484 if [ "${FLOATTEST}" = "sse" ]; then \
485 md5/md5cmp $(MD5_JPEG_3x2_FLOAT_PROG_SSE) testout_3x2_float_prog .jpg; \
486 elif [ "${FLOATTEST}" = "32bit" -o "${FLOATTEST}" = "64bit" ]; then \
487 md5/md5cmp $(MD5_JPEG_3x2_FLOAT_PROG_32BIT) testout_3x2_float_pr og.jpg; \
488 fi
489 # CC: YCC->RGB SAMP: fullsize/int IDCT: float ENT: prog huff
490 ./djpeg -dct float -outfile testout_3x2_float.ppm testout_3x2_float_prog .jpg
491 if [ "${FLOATTEST}" = "sse" ]; then \
492 md5/md5cmp $(MD5_PPM_3x2_FLOAT_SSE) testout_3x2_float.ppm; \
493 elif [ "${FLOATTEST}" = "32bit" ]; then \
494 md5/md5cmp $(MD5_PPM_3x2_FLOAT_32BIT) testout_3x2_float.ppm; \
495 elif [ "${FLOATTEST}" = "64bit" ]; then \
496 md5/md5cmp $(MD5_PPM_3x2_FLOAT_64BIT) testout_3x2_float.ppm; \
497 fi
498 rm -f testout_3x2_float.ppm testout_3x2_float_prog.jpg
499
500 # CC: RGB->YCC SAMP: fullsize/int FDCT: ifast ENT: prog huff
501 ./cjpeg -sample 3x2 -dct fast -prog -outfile testout_3x2_ifast_prog.jpg $(srcdir)/testimages/testorig.ppm
502 md5/md5cmp $(MD5_JPEG_3x2_IFAST_PROG) testout_3x2_ifast_prog.jpg
503 # CC: YCC->RGB SAMP: fullsize/int IDCT: ifast ENT: prog huff
504 ./djpeg -dct fast -outfile testout_3x2_ifast.ppm testout_3x2_ifast_prog. jpg
505 md5/md5cmp $(MD5_PPM_3x2_IFAST) testout_3x2_ifast.ppm
506 rm -f testout_3x2_ifast.ppm testout_3x2_ifast_prog.jpg
507
508 if WITH_ARITH_ENC
509 # CC: YCC->RGB SAMP: fullsize/h2v2 FDCT: islow ENT: arith
510 ./cjpeg -dct int -arithmetic -outfile testout_420_islow_ari.jpg $(srcdir )/testimages/testorig.ppm
511 md5/md5cmp $(MD5_JPEG_420_ISLOW_ARI) testout_420_islow_ari.jpg
512 rm -f testout_420_islow_ari.jpg
513 ./jpegtran -arithmetic -outfile testout_420_islow_ari.jpg $(srcdir)/test images/testimgint.jpg
514 md5/md5cmp $(MD5_JPEG_420_ISLOW_ARI) testout_420_islow_ari.jpg
515 rm -f testout_420_islow_ari.jpg
516 # CC: YCC->RGB SAMP: fullsize FDCT: islow ENT: prog arith
517 ./cjpeg -sample 1x1 -dct int -prog -arithmetic -outfile testout_444_islo w_progari.jpg $(srcdir)/testimages/testorig.ppm
518 md5/md5cmp $(MD5_JPEG_444_ISLOW_PROGARI) testout_444_islow_progari.jpg
519 rm -f testout_444_islow_progari.jpg
520 endif
521 if WITH_ARITH_DEC
522 # CC: RGB->YCC SAMP: h2v2 merged IDCT: ifast ENT: arith
523 ./djpeg -fast -ppm -outfile testout_420m_ifast_ari.ppm $(srcdir)/testima ges/testimgari.jpg
524 md5/md5cmp $(MD5_PPM_420M_IFAST_ARI) testout_420m_ifast_ari.ppm
525 rm -f testout_420m_ifast_ari.ppm
526 ./jpegtran -outfile testout_420_islow.jpg $(srcdir)/testimages/testimgar i.jpg
527 md5/md5cmp $(MD5_JPEG_420_ISLOW) testout_420_islow.jpg
528 rm -f testout_420_islow.jpg
529 endif
530
531 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 16x16 islow ENT: huff
532 ./djpeg -dct int -scale 2/1 -nosmooth -ppm -outfile testout_420m_islow_2 _1.ppm $(srcdir)/testimages/$(TESTORIG)
533 md5/md5cmp $(MD5_PPM_420M_ISLOW_2_1) testout_420m_islow_2_1.ppm
534 rm -f testout_420m_islow_2_1.ppm
535 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 15x15 islow ENT: huff
536 ./djpeg -dct int -scale 15/8 -nosmooth -ppm -outfile testout_420m_islow_ 15_8.ppm $(srcdir)/testimages/$(TESTORIG)
537 md5/md5cmp $(MD5_PPM_420M_ISLOW_15_8) testout_420m_islow_15_8.ppm
538 rm -f testout_420m_islow_15_8.ppm
539 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 13x13 islow ENT: huff
540 ./djpeg -dct int -scale 13/8 -nosmooth -ppm -outfile testout_420m_islow_ 13_8.ppm $(srcdir)/testimages/$(TESTORIG)
541 md5/md5cmp $(MD5_PPM_420M_ISLOW_13_8) testout_420m_islow_13_8.ppm
542 rm -f testout_420m_islow_13_8.ppm
543 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 11x11 islow ENT: huff
544 ./djpeg -dct int -scale 11/8 -nosmooth -ppm -outfile testout_420m_islow_ 11_8.ppm $(srcdir)/testimages/$(TESTORIG)
545 md5/md5cmp $(MD5_PPM_420M_ISLOW_11_8) testout_420m_islow_11_8.ppm
546 rm -f testout_420m_islow_11_8.ppm
547 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 9x9 islow ENT: huff
548 ./djpeg -dct int -scale 9/8 -nosmooth -ppm -outfile testout_420m_islow_9 _8.ppm $(srcdir)/testimages/$(TESTORIG)
549 md5/md5cmp $(MD5_PPM_420M_ISLOW_9_8) testout_420m_islow_9_8.ppm
550 rm -f testout_420m_islow_9_8.ppm
551 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 7x7 islow/14x14 islow ENT: huff
552 ./djpeg -dct int -scale 7/8 -nosmooth -ppm -outfile testout_420m_islow_7 _8.ppm $(srcdir)/testimages/$(TESTORIG)
553 md5/md5cmp $(MD5_PPM_420M_ISLOW_7_8) testout_420m_islow_7_8.ppm
554 rm -f testout_420m_islow_7_8.ppm
555 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 6x6 islow/12x12 islow ENT: huff
556 ./djpeg -dct int -scale 3/4 -nosmooth -ppm -outfile testout_420m_islow_3 _4.ppm $(srcdir)/testimages/$(TESTORIG)
557 md5/md5cmp $(MD5_PPM_420M_ISLOW_3_4) testout_420m_islow_3_4.ppm
558 rm -f testout_420m_islow_3_4.ppm
559 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 5x5 islow/10x10 islow ENT: huff
560 ./djpeg -dct int -scale 5/8 -nosmooth -ppm -outfile testout_420m_islow_5 _8.ppm $(srcdir)/testimages/$(TESTORIG)
561 md5/md5cmp $(MD5_PPM_420M_ISLOW_5_8) testout_420m_islow_5_8.ppm
562 rm -f testout_420m_islow_5_8.ppm
563 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 4x4 islow/8x8 islow ENT: huff
564 ./djpeg -dct int -scale 1/2 -nosmooth -ppm -outfile testout_420m_islow_1 _2.ppm $(srcdir)/testimages/$(TESTORIG)
565 md5/md5cmp $(MD5_PPM_420M_ISLOW_1_2) testout_420m_islow_1_2.ppm
566 rm -f testout_420m_islow_1_2.ppm
567 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 3x3 islow/6x6 islow ENT: huff
568 ./djpeg -dct int -scale 3/8 -nosmooth -ppm -outfile testout_420m_islow_3 _8.ppm $(srcdir)/testimages/$(TESTORIG)
569 md5/md5cmp $(MD5_PPM_420M_ISLOW_3_8) testout_420m_islow_3_8.ppm
570 rm -f testout_420m_islow_3_8.ppm
571 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 2x2 islow/4x4 islow ENT: huff
572 ./djpeg -dct int -scale 1/4 -nosmooth -ppm -outfile testout_420m_islow_1 _4.ppm $(srcdir)/testimages/$(TESTORIG)
573 md5/md5cmp $(MD5_PPM_420M_ISLOW_1_4) testout_420m_islow_1_4.ppm
574 rm -f testout_420m_islow_1_4.ppm
575 # CC: YCC->RGB SAMP: h2v2 merged IDCT: 1x1 islow/2x2 islow ENT: huff
576 ./djpeg -dct int -scale 1/8 -nosmooth -ppm -outfile testout_420m_islow_1 _8.ppm $(srcdir)/testimages/$(TESTORIG)
577 md5/md5cmp $(MD5_PPM_420M_ISLOW_1_8) testout_420m_islow_1_8.ppm
578 rm -f testout_420m_islow_1_8.ppm
579 if WITH_12BIT
580 else
581 # CC: YCC->RGB (dithered) SAMP: h2v2 fancy IDCT: islow ENT: huff
582 ./djpeg -dct int -colors 256 -bmp -outfile testout_420_islow_256.bmp $(s rcdir)/testimages/$(TESTORIG)
583 md5/md5cmp $(MD5_BMP_420_ISLOW_256) testout_420_islow_256.bmp
584 rm -f testout_420_islow_256.bmp
585 # CC: YCC->RGB565 SAMP: h2v2 fancy IDCT: islow ENT: huff
586 ./djpeg -dct int -rgb565 -dither none -bmp -outfile testout_420_islow_56 5.bmp $(srcdir)/testimages/$(TESTORIG)
587 md5/md5cmp $(MD5_BMP_420_ISLOW_565) testout_420_islow_565.bmp
588 rm -f testout_420_islow_565.bmp
589 # CC: YCC->RGB565 (dithered) SAMP: h2v2 fancy IDCT: islow ENT: huff
590 ./djpeg -dct int -rgb565 -bmp -outfile testout_420_islow_565D.bmp $(srcd ir)/testimages/$(TESTORIG)
591 md5/md5cmp $(MD5_BMP_420_ISLOW_565D) testout_420_islow_565D.bmp
592 rm -f testout_420_islow_565D.bmp
593 # CC: YCC->RGB565 SAMP: h2v2 merged IDCT: islow ENT: huff
594 ./djpeg -dct int -nosmooth -rgb565 -dither none -bmp -outfile testout_42 0m_islow_565.bmp $(srcdir)/testimages/$(TESTORIG)
595 md5/md5cmp $(MD5_BMP_420M_ISLOW_565) testout_420m_islow_565.bmp
596 rm -f testout_420m_islow_565.bmp
597 # CC: YCC->RGB565 (dithered) SAMP: h2v2 merged IDCT: islow ENT: huff
598 ./djpeg -dct int -nosmooth -rgb565 -bmp -outfile testout_420m_islow_565D .bmp $(srcdir)/testimages/$(TESTORIG)
599 md5/md5cmp $(MD5_BMP_420M_ISLOW_565D) testout_420m_islow_565D.bmp
600 rm -f testout_420m_islow_565D.bmp
601 endif
602
603 # Partial decode tests. These tests are designed to cover all of the possible
604 # code paths in jpeg_skip_scanlines().
605
606 # Context rows: Yes Intra-iMCU row: Yes iMCU row prefetch: No ENT: huff
607 ./djpeg -dct int -skip 15,31 -ppm -outfile testout_420_islow_skip15,31.p pm $(srcdir)/testimages/$(TESTORIG)
608 md5/md5cmp $(MD5_PPM_420_ISLOW_SKIP15_31) testout_420_islow_skip15,31.pp m
609 rm -f testout_420_islow_skip15,31.ppm
610 # Context rows: Yes Intra-iMCU row: No iMCU row prefetch: Yes ENT: arith
611 if WITH_ARITH_DEC
612 ./djpeg -dct int -skip 16,139 -ppm -outfile testout_420_islow_ari_skip16 ,139.ppm $(srcdir)/testimages/testimgari.jpg
613 md5/md5cmp $(MD5_PPM_420_ISLOW_ARI_SKIP16_139) testout_420_islow_ari_ski p16,139.ppm
614 rm -f testout_420_islow_ari_skip16,139.ppm
615 endif
616 # Context rows: Yes Intra-iMCU row: No iMCU row prefetch: No ENT: prog huff
617 ./cjpeg -dct int -prog -outfile testout_420_islow_prog.jpg $(srcdir)/tes timages/testorig.ppm
618 ./djpeg -dct int -crop 62x62+71+71 -ppm -outfile testout_420_islow_prog_ crop62x62,71,71.ppm testout_420_islow_prog.jpg
619 md5/md5cmp $(MD5_PPM_420_ISLOW_PROG_CROP62x62_71_71) testout_420_islow_p rog_crop62x62,71,71.ppm
620 rm -f testout_420_islow_prog_crop62x62,71,71.ppm testout_420_islow_prog. jpg
621 # Context rows: Yes Intra-iMCU row: No iMCU row prefetch: No ENT: arith
622 if WITH_ARITH_DEC
623 ./djpeg -dct int -crop 53x53+4+4 -ppm -outfile testout_420_islow_ari_cro p53x53,4,4.ppm $(srcdir)/testimages/testimgari.jpg
624 md5/md5cmp $(MD5_PPM_420_ISLOW_ARI_CROP53x53_4_4) testout_420_islow_ari_ crop53x53,4,4.ppm
625 rm -f testout_420_islow_ari_crop53x53,4,4.ppm
626 endif
627 # Context rows: No Intra-iMCU row: Yes ENT: huff
628 ./cjpeg -dct int -sample 1x1 -outfile testout_444_islow.jpg $(srcdir)/te stimages/testorig.ppm
629 ./djpeg -dct int -skip 1,6 -ppm -outfile testout_444_islow_skip1,6.ppm t estout_444_islow.jpg
630 md5/md5cmp $(MD5_PPM_444_ISLOW_SKIP1_6) testout_444_islow_skip1,6.ppm
631 rm -f testout_444_islow_skip1,6.ppm testout_444_islow.jpg
632 # Context rows: No Intra-iMCU row: No ENT: prog huff
633 ./cjpeg -dct int -prog -sample 1x1 -outfile testout_444_islow_prog.jpg $ (srcdir)/testimages/testorig.ppm
634 ./djpeg -dct int -crop 98x98+13+13 -ppm -outfile testout_444_islow_prog_ crop98x98,13,13.ppm testout_444_islow_prog.jpg
635 md5/md5cmp $(MD5_PPM_444_ISLOW_PROG_CROP98x98_13_13) testout_444_islow_p rog_crop98x98,13,13.ppm
636 rm -f testout_444_islow_prog_crop98x98,13,13.ppm testout_444_islow_prog. jpg
637 # Context rows: No Intra-iMCU row: No ENT: arith
638 if WITH_ARITH_ENC
639 ./cjpeg -dct int -arithmetic -sample 1x1 -outfile testout_444_islow_ari. jpg $(srcdir)/testimages/testorig.ppm
640 if WITH_ARITH_DEC
641 ./djpeg -dct int -crop 37x37+0+0 -ppm -outfile testout_444_islow_ari_cro p37x37,0,0.ppm testout_444_islow_ari.jpg
642 md5/md5cmp $(MD5_PPM_444_ISLOW_ARI_CROP37x37_0_0) testout_444_islow_ari_ crop37x37,0,0.ppm
643 rm -f testout_444_islow_ari_crop37x37,0,0.ppm
644 endif
645 rm -f testout_444_islow_ari.jpg
646 endif
647
648 ./jpegtran -crop 120x90+20+50 -transpose -perfect -outfile testout_crop. jpg $(srcdir)/testimages/$(TESTORIG)
649 md5/md5cmp $(MD5_JPEG_CROP) testout_crop.jpg
650 rm -f testout_crop.jpg
651 echo GREAT SUCCESS!
652
653
654 testclean:
655 rm -f testout*
656 rm -f *_GRAY_*.bmp
657 rm -f *_GRAY_*.png
658 rm -f *_GRAY_*.ppm
659 rm -f *_GRAY_*.jpg
660 rm -f *_GRAY.yuv
661 rm -f *_420_*.bmp
662 rm -f *_420_*.png
663 rm -f *_420_*.ppm
664 rm -f *_420_*.jpg
665 rm -f *_420.yuv
666 rm -f *_422_*.bmp
667 rm -f *_422_*.png
668 rm -f *_422_*.ppm
669 rm -f *_422_*.jpg
670 rm -f *_422.yuv
671 rm -f *_444_*.bmp
672 rm -f *_444_*.png
673 rm -f *_444_*.ppm
674 rm -f *_444_*.jpg
675 rm -f *_444.yuv
676 rm -f *_440_*.bmp
677 rm -f *_440_*.png
678 rm -f *_440_*.ppm
679 rm -f *_440_*.jpg
680 rm -f *_440.yuv
681 rm -f *_411_*.bmp
682 rm -f *_411_*.png
683 rm -f *_411_*.ppm
684 rm -f *_411_*.jpg
685 rm -f *_411.yuv
686
687
688 tjtest:
689 sh ./tjbenchtest
690 sh ./tjbenchtest -alloc
691 sh ./tjbenchtest -yuv
692 sh ./tjbenchtest -yuv -alloc
693 if WITH_JAVA
694 sh ./tjbenchtest.java
695 sh ./tjbenchtest.java -yuv
696 endif
697
698
699 pkgscripts/libjpeg-turbo.spec: pkgscripts/libjpeg-turbo.spec.tmpl
700 cat pkgscripts/libjpeg-turbo.spec.tmpl | sed s@%{__prefix}@$(prefix)@g | \
701 sed s@%{__bindir}@$(bindir)@g | sed s@%{__datadir}@$(datadir)@g | \
702 sed s@%{__docdir}@$(docdir)@g | sed s@%{__includedir}@$(included ir)@g | \
703 sed s@%{__libdir}@$(libdir)@g | sed s@%{__mandir}@$(mandir)@g \
704 > pkgscripts/libjpeg-turbo.spec
705
706 rpm: all pkgscripts/libjpeg-turbo.spec
707 TMPDIR=`mktemp -d /tmp/${PACKAGE_NAME}-build.XXXXXX`; \
708 mkdir -p $$TMPDIR/RPMS; \
709 ln -fs `pwd` $$TMPDIR/BUILD; \
710 rm -f ${PKGNAME}-${VERSION}.${RPMARCH}.rpm; \
711 rpmbuild -bb --define "_blddir $$TMPDIR/buildroot" \
712 --define "_topdir $$TMPDIR" \
713 --target ${RPMARCH} pkgscripts/libjpeg-turbo.spec; \
714 cp $$TMPDIR/RPMS/${RPMARCH}/${PKGNAME}-${VERSION}-${BUILD}.${RPMARCH}.rp m \
715 ${PKGNAME}-${VERSION}.${RPMARCH}.rpm; \
716 rm -rf $$TMPDIR
717
718 srpm: dist-gzip pkgscripts/libjpeg-turbo.spec
719 TMPDIR=`mktemp -d /tmp/${PACKAGE_NAME}-build.XXXXXX`; \
720 mkdir -p $$TMPDIR/RPMS; \
721 mkdir -p $$TMPDIR/SRPMS; \
722 mkdir -p $$TMPDIR/BUILD; \
723 mkdir -p $$TMPDIR/SOURCES; \
724 mkdir -p $$TMPDIR/SPECS; \
725 rm -f ${PKGNAME}-${VERSION}.src.rpm; \
726 cp ${PACKAGE_NAME}-${VERSION}.tar.gz $$TMPDIR/SOURCES; \
727 cat pkgscripts/libjpeg-turbo.spec | sed s/%{_blddir}/%{_tmppath}/g \
728 | sed s/#--\>//g \
729 > $$TMPDIR/SPECS/libjpeg-turbo.spec; \
730 rpmbuild -bs --define "_topdir $$TMPDIR" $$TMPDIR/SPECS/libjpeg-turbo.sp ec; \
731 cp $$TMPDIR/SRPMS/${PKGNAME}-${VERSION}-${BUILD}.src.rpm \
732 ${PKGNAME}-${VERSION}.src.rpm; \
733 rm -rf $$TMPDIR
734
735 pkgscripts/makedpkg: pkgscripts/makedpkg.tmpl
736 cat pkgscripts/makedpkg.tmpl | sed s@%{__prefix}@$(prefix)@g | \
737 sed s@%{__docdir}@$(docdir)@g | sed s@%{__libdir}@$(libdir)@g \
738 > pkgscripts/makedpkg
739
740 deb: all pkgscripts/makedpkg
741 sh pkgscripts/makedpkg
742
743 pkgscripts/uninstall: pkgscripts/uninstall.tmpl
744 cat pkgscripts/uninstall.tmpl | sed s@%{__prefix}@$(prefix)@g | \
745 sed s@%{__bindir}@$(bindir)@g | sed s@%{__datadir}@$(datadir)@g | \
746 sed s@%{__includedir}@$(includedir)@g | sed s@%{__libdir}@$(libd ir)@g | \
747 sed s@%{__mandir}@$(mandir)@g > pkgscripts/uninstall
748
749 pkgscripts/makemacpkg: pkgscripts/makemacpkg.tmpl
750 cat pkgscripts/makemacpkg.tmpl | sed s@%{__prefix}@$(prefix)@g | \
751 sed s@%{__bindir}@$(bindir)@g | sed s@%{__docdir}@$(docdir)@g | \
752 sed s@%{__libdir}@$(libdir)@g > pkgscripts/makemacpkg
753
754 if X86_64
755
756 udmg: all pkgscripts/makemacpkg pkgscripts/uninstall
757 sh pkgscripts/makemacpkg -build32 ${BUILDDIR32}
758
759 iosdmg: all pkgscripts/makemacpkg pkgscripts/uninstall
760 sh pkgscripts/makemacpkg -build32 ${BUILDDIR32} -buildarmv6 ${BUILDDIRAR MV6} -buildarmv7 ${BUILDDIRARMV7} -buildarmv7s ${BUILDDIRARMV7S} -buildarmv8 ${B UILDDIRARMV8} -lipo "${LIPO}"
761
762 else
763
764 iosdmg: all pkgscripts/makemacpkg pkgscripts/uninstall
765 sh pkgscripts/makemacpkg -buildarmv6 ${BUILDDIRARMV6} -buildarmv7 ${BUIL DDIRARMV7} -buildarmv7s ${BUILDDIRARMV7S} -buildarmv8 ${BUILDDIRARMV8} -lipo "${ LIPO}"
766
767 endif
768
769 dmg: all pkgscripts/makemacpkg pkgscripts/uninstall
770 sh pkgscripts/makemacpkg
771
772 pkgscripts/makecygwinpkg: pkgscripts/makecygwinpkg.tmpl
773 cat pkgscripts/makecygwinpkg.tmpl | sed s@%{__prefix}@$(prefix)@g | \
774 sed s@%{__docdir}@$(docdir)@g | sed s@%{__libdir}@$(libdir)@g \
775 > pkgscripts/makecygwinpkg
776
777 cygwinpkg: all pkgscripts/makecygwinpkg
778 sh pkgscripts/makecygwinpkg
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698