Makefile.am 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765
  1. # Libraries
  2. # Provide the full test output for failed tests when using the parallel
  3. # test suite (which is enabled by default with automake 1.13+).
  4. export VERBOSE = yes
  5. lib_LTLIBRARIES = src/libdaalabase.la src/libdaaladec.la src/libdaalaenc.la
  6. AM_CPPFLAGS = -I$(srcdir)/include
  7. noinst_HEADERS = \
  8. src/adapt.h \
  9. src/block_size.h \
  10. src/block_size_dec.h \
  11. src/block_size_enc.h \
  12. src/dct.h \
  13. src/decint.h \
  14. src/encint.h \
  15. src/entcode.h \
  16. src/entdec.h \
  17. src/entenc.h \
  18. src/filter.h \
  19. src/generic_code.h \
  20. src/internal.h \
  21. src/intra.h \
  22. src/intra_paint.h \
  23. src/intradata_4x4.h \
  24. src/intradata_8x8.h \
  25. src/intradata_16x16.h \
  26. src/laplace_code.h \
  27. src/logging.h \
  28. src/mc.h \
  29. src/odintrin.h \
  30. src/partition.h \
  31. src/pvq.h \
  32. src/pvq_code.h \
  33. src/state.h \
  34. src/tf.h \
  35. src/accounting.h \
  36. src/x86/cpu.h \
  37. src/x86/x86enc.h \
  38. src/x86/x86int.h
  39. src_libdaalabase_la_CFLAGS = $(OGG_CFLAGS)
  40. src_libdaalabase_la_LIBADD = $(OGG_LIBS) $(LIBM)
  41. if DUMP_IMAGES
  42. src_libdaalabase_la_LIBADD += $(PNG_LIBS)
  43. endif
  44. src_libdaalabase_la_LDFLAGS = -no-undefined \
  45. -version-info @OD_LT_CURRENT@:@OD_LT_REVISION@:@OD_LT_AGE@
  46. src_libdaalabase_la_LDFLAGS +=
  47. src_libdaalabase_la_SOURCES = \
  48. src/adapt.c \
  49. src/block_size.c \
  50. src/dct.c \
  51. src/entcode.c \
  52. src/entdec.c \
  53. src/filter.c \
  54. src/generic_code.c \
  55. src/generic_decoder.c \
  56. src/info.c \
  57. src/internal.c \
  58. src/intra.c \
  59. src/intradata.c \
  60. src/laplace_decoder.c \
  61. src/laplace_tables.c \
  62. src/logging.c \
  63. src/mc.c \
  64. src/partition.c \
  65. src/pvq.c \
  66. src/pvq_code.c \
  67. src/pvq_decoder.c \
  68. src/state.c \
  69. src/switch_table.c \
  70. src/tf.c \
  71. src/zigzag4.c \
  72. src/zigzag8.c \
  73. src/zigzag16.c
  74. if ENABLE_X86ASM
  75. src_libdaalabase_la_SOURCES += \
  76. src/x86/cpu.c \
  77. src/x86/sse2mc.c \
  78. src/x86/x86state.c
  79. endif
  80. src_libdaaladec_la_CFLAGS = $(OGG_CFLAGS)
  81. src_libdaaladec_la_LIBADD = src/libdaalabase.la $(OGG_LIBS) $(LIBM)
  82. src_libdaaladec_la_LDFLAGS = -no-undefined \
  83. -version-info @OD_LT_CURRENT@:@OD_LT_REVISION@:@OD_LT_AGE@
  84. src_libdaaladec_la_SOURCES = \
  85. src/block_size_dec.c \
  86. src/decode.c \
  87. src/infodec.c
  88. src_libdaalaenc_la_CFLAGS = $(OGG_CFLAGS)
  89. src_libdaalaenc_la_LIBADD = src/libdaalabase.la $(OGG_LIBS) $(LIBM)
  90. if ENCODER_CHECK
  91. src_libdaalaenc_la_LIBADD += src/libdaaladec.la
  92. endif
  93. src_libdaalaenc_la_LDFLAGS = -no-undefined \
  94. -version-info @OD_LT_CURRENT@:@OD_LT_REVISION@:@OD_LT_AGE@
  95. src_libdaalaenc_la_SOURCES = \
  96. src/block_size_dec.c \
  97. src/block_size_enc.c \
  98. src/encode.c \
  99. src/entenc.c \
  100. src/generic_encoder.c \
  101. src/infoenc.c \
  102. src/laplace_encoder.c \
  103. src/mcenc.c \
  104. src/accounting.c \
  105. src/intra_paint.c \
  106. src/intra_paint_enc.c \
  107. src/pvq_encoder.c
  108. if ENABLE_X86ASM
  109. src_libdaalaenc_la_SOURCES += \
  110. src/x86/x86enc.c \
  111. src/x86/x86mcenc.c
  112. endif
  113. # Example programs
  114. noinst_PROGRAMS = \
  115. examples/dump_video \
  116. examples/encoder_example
  117. if ENABLE_PLAYER_EXAMPLE
  118. noinst_PROGRAMS += examples/player_example
  119. endif
  120. examples_dump_video_SOURCES = examples/dump_video.c
  121. examples_dump_video_CFLAGS = $(OGG_CFLAGS)
  122. examples_dump_video_LDADD = src/libdaalabase.la src/libdaaladec.la $(OGG_LIBS)
  123. examples_encoder_example_SOURCES = examples/encoder_example.c
  124. examples_encoder_example_CFLAGS = $(OGG_CFLAGS)
  125. examples_encoder_example_LDADD = src/libdaalabase.la src/libdaalaenc.la $(OGG_LIBS) $(LIBM)
  126. if ENABLE_PLAYER_EXAMPLE
  127. examples_player_example_SOURCES = examples/player_example.c
  128. examples_player_example_CFLAGS = $(OGG_CFLAGS) $(SDL_CFLAGS)
  129. examples_player_example_LDADD = src/libdaalabase.la src/libdaaladec.la $(OGG_LIBS) $(SDL_LIBS)
  130. endif
  131. # Includes
  132. daalaincludedir = $(includedir)/daala
  133. daalainclude_HEADERS = \
  134. include/daala/codec.h \
  135. include/daala/daaladec.h \
  136. include/daala/daalaenc.h
  137. # Tools
  138. CLEANFILES =
  139. EXTRA_PROGRAMS =
  140. if ENABLE_TOOLS
  141. tools_TARGETS = \
  142. tools/png2y4m \
  143. tools/y4m2png \
  144. tools/dump_psnrhvs \
  145. tools/block_size_analysis \
  146. tools/divu_const \
  147. tools/plot_intra_maps \
  148. tools/init_intra_maps \
  149. tools/intra_stats \
  150. tools/intra_pred \
  151. tools/intra_trace \
  152. tools/trans \
  153. tools/trans2d \
  154. tools/trans_gain \
  155. tools/init_intra_xform \
  156. tools/gen_cdf \
  157. tools/gen_laplace_tables \
  158. tools/dump_ssim \
  159. tools/dump_fastssim \
  160. tools/bjontegaard \
  161. tools/yuvjpeg \
  162. tools/jpegyuv \
  163. tools/yuv2yuv4mpeg \
  164. tools/dump_psnr \
  165. tools/vq_train
  166. noinst_HEADERS += \
  167. tools/cholesky.h \
  168. tools/image.h \
  169. tools/image_tools.h \
  170. tools/int_search.h \
  171. tools/intra_fit_tools.h \
  172. tools/kiss99.h \
  173. tools/matidx.h \
  174. tools/od_covmat.h \
  175. tools/od_defs.h \
  176. tools/od_filter.h \
  177. tools/od_intra.h \
  178. tools/pythag.h \
  179. tools/stats_tools.h \
  180. tools/svd.h \
  181. tools/trans_tools.h \
  182. tools/vidinput.h
  183. EXTRA_PROGRAMS += $(tools_TARGETS)
  184. CLEANFILES += $(tools_TARGETS)
  185. # png2y4m
  186. tools_png2y4m_SOURCES = \
  187. tools/kiss99.c \
  188. tools/png2y4m.c
  189. tools_png2y4m_CFLAGS = $(OGG_CFLAGS) $(PNG_CFLAGS)
  190. tools_png2y4m_LDADD = $(OGG_LIBS) $(PNG_LIBS)
  191. # y4m2png
  192. tools_y4m2png_SOURCES = \
  193. tools/vidinput.c \
  194. tools/y4m_input.c \
  195. tools/y4m2png.c
  196. tools_y4m2png_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS)
  197. tools_y4m2png_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS)
  198. # dump_psnrhvs
  199. tools_dump_psnrhvs_SOURCES = \
  200. tools/vidinput.c \
  201. tools/y4m_input.c \
  202. src/dct.c \
  203. tools/dump_psnrhvs.c
  204. tools_dump_psnrhvs_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS)
  205. tools_dump_psnrhvs_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  206. # dump_ssim
  207. tools_dump_ssim_SOURCES = \
  208. tools/vidinput.c \
  209. tools/y4m_input.c \
  210. tools/dump_ssim.c
  211. tools_dump_ssim_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS)
  212. tools_dump_ssim_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(LIBM)
  213. # dump_fastssim
  214. tools_dump_fastssim_SOURCES = \
  215. tools/vidinput.c \
  216. tools/y4m_input.c \
  217. tools/dump_fastssim.c
  218. tools_dump_fastssim_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS)
  219. tools_dump_fastssim_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(LIBM)
  220. # dump_psnr
  221. tools_dump_psnr_SOURCES = \
  222. tools/vidinput.c \
  223. tools/y4m_input.c \
  224. tools/dump_psnr.c
  225. tools_dump_psnr_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS)
  226. tools_dump_psnr_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  227. # block_size_analysis
  228. tools_block_size_analysis_SOURCES = \
  229. tools/block_size_analysis.c \
  230. src/block_size.c \
  231. src/block_size_enc.c \
  232. tools/vidinput.c \
  233. tools/y4m_input.c \
  234. src/dct.c \
  235. src/internal.c \
  236. src/generic_encoder.c \
  237. src/generic_code.c \
  238. src/laplace_encoder.c \
  239. src/logging.c \
  240. src/laplace_tables.c \
  241. src/entcode.c \
  242. src/entenc.c \
  243. src/filter.c \
  244. src/switch_table.c
  245. tools_block_size_analysis_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS)
  246. tools_block_size_analysis_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  247. # divu_const
  248. tools_divu_const_SOURCES = \
  249. tools/divu_const.c
  250. tools_divu_const_CFLAGS = $(OGG_CFLAGS)
  251. tools_divu_const_LDADD = $(OGG_LIBS) $(LIBM)
  252. # plot_intra_maps
  253. tools_plot_intra_maps_SOURCES = \
  254. tools/image.c \
  255. tools/plot_intra_maps.c \
  256. tools/intra_fit_tools.c \
  257. tools/vidinput.c \
  258. tools/y4m_input.c
  259. tools_plot_intra_maps_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS)
  260. tools_plot_intra_maps_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  261. # init_intra_maps
  262. tools_init_intra_maps_SOURCES = \
  263. tools/init_intra_maps.c \
  264. tools/intra_fit_tools.c \
  265. tools/vidinput.c \
  266. tools/y4m_input.c
  267. tools_init_intra_maps_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS)
  268. tools_init_intra_maps_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  269. # intra_stats
  270. tools_intra_stats_SOURCES = \
  271. tools/intra_stats.c \
  272. tools/intra_fit_tools.c \
  273. tools/od_covmat.c \
  274. tools/od_filter.c \
  275. tools/od_intra.c \
  276. tools/od_intra_data.c \
  277. tools/image_tools.c \
  278. tools/stats_tools.c \
  279. tools/vidinput.c \
  280. tools/y4m_input.c \
  281. tools/image.c \
  282. src/block_size.c \
  283. src/block_size_enc.c \
  284. src/generic_encoder.c \
  285. src/generic_code.c \
  286. src/laplace_encoder.c \
  287. src/logging.c \
  288. src/laplace_tables.c \
  289. src/entenc.c \
  290. src/entcode.c \
  291. src/filter.c \
  292. src/dct.c \
  293. src/intra.c \
  294. src/switch_table.c \
  295. src/tf.c \
  296. src/internal.c \
  297. src/intradata.c
  298. tools_intra_stats_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS) $(OPENMP_CFLAGS)
  299. tools_intra_stats_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  300. # intra_pred
  301. tools_intra_pred_SOURCES = \
  302. tools/intra_pred.c \
  303. tools/intra_fit_tools.c \
  304. tools/od_covmat.c \
  305. tools/od_filter.c \
  306. tools/od_intra.c \
  307. tools/od_intra_data.c \
  308. tools/image_tools.c \
  309. tools/stats_tools.c \
  310. tools/vidinput.c \
  311. tools/y4m_input.c \
  312. tools/image.c \
  313. tools/svd.c \
  314. tools/cholesky.c \
  315. src/block_size.c \
  316. src/block_size_enc.c \
  317. src/generic_encoder.c \
  318. src/generic_code.c \
  319. src/laplace_encoder.c \
  320. src/logging.c \
  321. src/laplace_tables.c \
  322. src/entenc.c \
  323. src/entcode.c \
  324. src/filter.c \
  325. src/dct.c \
  326. src/intra.c \
  327. src/intradata.c \
  328. src/internal.c \
  329. src/switch_table.c \
  330. src/tf.c
  331. tools_intra_pred_CFLAGS = $(OGG_CFLAGS) $(PNG_CFLAGS) $(OPENMP_CFLAGS)
  332. tools_intra_pred_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  333. # intra_trace
  334. tools_intra_trace_SOURCES = \
  335. tools/intra_trace.c \
  336. tools/intra_fit_tools.c \
  337. tools/od_covmat.c \
  338. tools/od_filter.c \
  339. tools/od_intra.c \
  340. tools/od_intra_data.c \
  341. tools/image_tools.c \
  342. tools/stats_tools.c \
  343. tools/trans_tools.c \
  344. tools/vidinput.c \
  345. tools/y4m_input.c \
  346. tools/image.c \
  347. src/block_size.c \
  348. src/block_size_enc.c \
  349. src/generic_encoder.c \
  350. src/generic_code.c \
  351. src/laplace_encoder.c \
  352. src/logging.c \
  353. src/laplace_tables.c \
  354. src/entenc.c \
  355. src/entcode.c \
  356. src/filter.c \
  357. src/dct.c \
  358. src/intra.c \
  359. src/switch_table.c \
  360. src/tf.c \
  361. src/internal.c \
  362. src/intradata.c
  363. tools_intra_trace_CFLAGS = $(OGG_CFLAGS) $(PNG_CFLAGS) $(OPENMP_CFLAGS)
  364. tools_intra_trace_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  365. # trans
  366. tools_trans_SOURCES = \
  367. tools/trans.c \
  368. src/internal.c \
  369. tools/intra_fit_tools.c \
  370. tools/vidinput.c \
  371. tools/y4m_input.c \
  372. tools/od_covmat.c \
  373. tools/od_filter.c \
  374. tools/od_intra.c \
  375. tools/od_intra_data.c \
  376. tools/stats_tools.c \
  377. tools/trans_tools.c \
  378. tools/int_search.c \
  379. tools/trans_data.c \
  380. tools/kiss99.c \
  381. tools/image.c \
  382. tools/svd.c \
  383. tools/cholesky.c \
  384. src/filter.c \
  385. src/dct.c \
  386. src/intradata.c
  387. tools_trans_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS) $(OPENMP_CFLAGS)
  388. tools_trans_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  389. # trans_gain
  390. tools_trans_gain_SOURCES = \
  391. tools/trans_gain.c \
  392. src/internal.c \
  393. tools/vidinput.c \
  394. tools/y4m_input.c \
  395. tools/od_filter.c \
  396. tools/trans_tools.c \
  397. src/filter.c \
  398. src/dct.c \
  399. src/intradata.c
  400. tools_trans_gain_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS) $(OPENMP_CFLAGS)
  401. tools_trans_gain_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  402. #trans2d
  403. tools_trans2d_SOURCES = \
  404. tools/trans2d.c \
  405. src/internal.c \
  406. tools/intra_fit_tools.c \
  407. tools/vidinput.c \
  408. tools/y4m_input.c \
  409. tools/od_covmat.c \
  410. tools/od_filter.c \
  411. tools/od_intra.c \
  412. tools/od_intra_data.c \
  413. tools/stats_tools.c \
  414. tools/trans_tools.c \
  415. tools/int_search.c \
  416. tools/trans_data.c \
  417. tools/kiss99.c \
  418. tools/image.c \
  419. tools/svd.c \
  420. tools/cholesky.c \
  421. src/filter.c \
  422. src/dct.c \
  423. src/intradata.c
  424. tools_trans2d_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS) $(OPENMP_CFLAGS)
  425. tools_trans2d_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  426. # init_intra_xform
  427. tools_init_intra_xform_SOURCES = \
  428. tools/cholesky.c \
  429. tools/init_intra_xform.c \
  430. tools/intra_fit_tools.c \
  431. tools/svd.c \
  432. tools/vidinput.c \
  433. tools/y4m_input.c \
  434. src/filter.c \
  435. src/dct.c \
  436. src/intra.c \
  437. src/tf.c \
  438. src/internal.c \
  439. src/intradata.c
  440. tools_init_intra_xform_CFLAGS = $(THEORA_CFLAGS) $(OGG_CFLAGS) $(PNG_CFLAGS)
  441. tools_init_intra_xform_LDADD = $(THEORA_LIBS) $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  442. # gen_cdf
  443. tools_gen_cdf_SOURCES = \
  444. tools/gen_cdf.c
  445. tools_gen_cdf_CFLAGS = $(OGG_CFLAGS) $(PNG_CFLAGS)
  446. tools_gen_cdf_LDADD = $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  447. # gen_laplace_tables
  448. tools_gen_laplace_tables_SOURCES = \
  449. tools/gen_laplace_tables.c
  450. tools_gen_laplace_tables_CFLAGS = $(OGG_CFLAGS) $(PNG_CFLAGS)
  451. tools_gen_laplace_tables_LDADD = $(OGG_LIBS) $(PNG_LIBS) $(LIBM)
  452. # bjontegaard
  453. tools_bjontegaard_SOURCES = \
  454. tools/bjontegaard.c \
  455. tools/cholesky.c \
  456. tools/qr.c \
  457. tools/svd.c
  458. tools_bjontegaard_CFLAGS =
  459. tools_bjontegaard_LDADD = $(LIBM)
  460. # yuvjpeg
  461. tools_yuvjpeg_SOURCES = \
  462. tools/yuvjpeg.c
  463. tools_yuvjpeg_CFLAGS =
  464. tools_yuvjpeg_LDADD = $(JPEG_LIBS)
  465. # jpegyuv
  466. tools_jpegyuv_SOURCES = \
  467. tools/jpegyuv.c
  468. tools_jpegyuv_CFLAGS =
  469. tools_jpegyuv_LDADD = $(JPEG_LIBS)
  470. # yuv2yuv4mpeg
  471. tools_yuv2yuv4mpeg_SOURCES = \
  472. tools/yuv2yuv4mpeg.c
  473. tools_yuv2yuv4mpeg_CFLAGS =
  474. tools_yuv2yuv4mpeg_LDADD =
  475. # vq_train
  476. tools_vq_train_SOURCES = \
  477. tools/vq_train.c
  478. tools_vq_train_CFLAGS = $(OPENMP_CFLAGS)
  479. tools_vq_train_LDADD = $(LIBM)
  480. endif # ENABLE_TOOLS
  481. # Tests
  482. if ENABLE_UNIT_TESTS
  483. noinst_PROGRAMS += \
  484. src/tests/dcttest \
  485. src/tests/ectest \
  486. src/tests/test_coef_coder \
  487. src/tests/logging_test \
  488. src/tests/test_divu_small \
  489. src/tests/test_filters \
  490. src/tests/check_tests
  491. TESTS = \
  492. src/tests/dcttest \
  493. src/tests/ectest \
  494. src/tests/test_coef_coder \
  495. src/tests/logging_test \
  496. src/tests/test_divu_small \
  497. src/tests/test_filters \
  498. src/tests/check_tests
  499. src_tests_dcttest_SOURCES = src/dct.c src/filter.c src/internal.c
  500. src_tests_dcttest_CFLAGS = $(OGG_CFLAGS) \
  501. -DOD_DCT_CHECK_OVERFLOW -DOD_DCT_TEST -DOD_ENABLE_ASSERTIONS
  502. src_tests_dcttest_LDADD = $(LIBM)
  503. src_tests_ectest_SOURCES = src/tests/ectest.c
  504. src_tests_ectest_CFLAGS = $(OGG_CFLAGS)
  505. src_tests_ectest_LDADD = $(LIBM)
  506. src_tests_test_coef_coder_SOURCES = src/tests/test_coef_coder.c
  507. src_tests_test_coef_coder_CFLAGS = $(OGG_CFLAGS)
  508. src_tests_test_coef_coder_LDADD = \
  509. src/libdaalabase.la \
  510. src/libdaaladec.la \
  511. $(OGG_LIBS) \
  512. $(LIBM)
  513. src_tests_logging_test_SOURCES = src/tests/logging_test.c
  514. src_tests_logging_test_CFLAGS = $(OGG_CFLAGS)
  515. src_tests_logging_test_LDADD = \
  516. src/libdaalabase.la \
  517. src/libdaalaenc.la \
  518. $(OGG_LIBS)
  519. src_tests_test_divu_small_SOURCES = src/tests/test_divu_small.c
  520. src_tests_test_divu_small_CFLAGS = $(OGG_CFLAGS)
  521. src_tests_test_divu_small_LDADD = \
  522. src/libdaalabase.la \
  523. $(OGG_LIBS)
  524. src_tests_test_filters_SOURCES = src/tests/test_filters.c
  525. src_tests_test_filters_CFLAGS = $(OGG_CFLAGS)
  526. src_tests_test_filters_LDADD = \
  527. src/libdaalabase.la \
  528. $(OGG_LIBS)
  529. src_tests_check_tests_SOURCES = \
  530. src/tests/check_main.c \
  531. src/tests/headerencode_test.c
  532. src_tests_check_tests_CFLAGS = $(OGG_CFLAGS) $(CHECK_CFLAGS) -Wno-variadic-macros
  533. src_tests_check_tests_LDADD = \
  534. src/libdaalabase.la \
  535. src/libdaaladec.la \
  536. src/libdaalaenc.la \
  537. $(OGG_LIBS) \
  538. $(CHECK_LIBS) \
  539. $(LIBM)
  540. endif
  541. # Docs
  542. if HAVE_FIG2DEV
  543. # Generate the paper from its sources.
  544. # Requires transfig and pdflatex.
  545. PAPER_SRCS = \
  546. doc/mc.tex \
  547. doc/daala.bib
  548. FIG_SRCS = \
  549. doc/4-8sub.fig \
  550. doc/mvpred.fig
  551. FIG_TEX_SRCS = blockidx.fig vbunsplit.fig
  552. FIG_OBJS = \
  553. $(FIG_SRCS:.fig=.pdf) \
  554. $(FIG_TEX_SRCS:.fig=.pdftex) \
  555. $(FIG_TEX_SRCS:.fig=.pdftex_t)
  556. #noinst_DATA = mc.pdf
  557. CLEANFILES += \
  558. doc/mc.pdf \
  559. doc/mc.out \
  560. doc/mc.log \
  561. doc/mc.blg \
  562. doc/mc.bbl \
  563. doc/mc.aux \
  564. doc/blockidx.pdftex \
  565. doc/blockidx.pdftex_t \
  566. doc/vbunsplit.pdftex \
  567. doc/vbunsplit.pdftex_t \
  568. doc/mvpred.pdf \
  569. doc/4-8sub.pdf
  570. mc.pdf : $(PAPER_SRCS) $(FIG_OBJS) $(EXTRA_FIGS) mc.bbl
  571. pdflatex mc
  572. pdflatex mc
  573. mc.bbl : $(PAPER_SRCS) $(FIG_OBJS) $(EXTRA_FIGS)
  574. if [ mc.tex -nt mc.aux ] ; then pdflatex mc ; fi
  575. bibtex mc
  576. figures : $(FIG_OBJS)
  577. # rule to generate latex versions of the xfig figures
  578. %.tex : %.fig
  579. fig2dev -L latex $< $@
  580. %.pdf : %.fig
  581. fig2dev -L pdf -p 0 $< $@
  582. %.pdftex : %.fig
  583. fig2dev -L pdftex -p 0 $< $@
  584. %.pdftex_t : %.fig
  585. fig2dev -L pdftex_t -p $(<:.fig=.pdftex) $< $@
  586. endif
  587. ACLOCAL_AMFLAGS = -I m4
  588. AM_CFLAGS = -I$(top_srcdir)/include $(DEPS_CFLAGS)
  589. dist_doc_DATA = COPYING AUTHORS
  590. pkgconfigdir = $(libdir)/pkgconfig
  591. pkgconfig_DATA = daalaenc.pc daaladec.pc
  592. debug: DEBUG_OPTIONS = -DOD_ENABLE_ASSERTIONS -DOD_LOGGING_ENABLED
  593. debug:
  594. $(MAKE) CFLAGS="$(CFLAGS) -O0 -ggdb3 $(DEBUG_OPTIONS)" all
  595. EXTRA_DIST = \
  596. daalaenc.pc.in \
  597. daaladec.pc.in \
  598. daalaenc-uninstalled.pc.in \
  599. daaladec-uninstalled.pc.in \
  600. tools/unix/Makefile \
  601. unix/Makefile
  602. # Targets to build and install just the library without the docs
  603. daala install-daala: NO_DOXYGEN = 1
  604. daala: all
  605. install-daala: install
  606. if ENABLE_TOOLS
  607. tools: $(tools_TARGETS)
  608. else
  609. tools:
  610. @echo "error: Tools support not enabled. Try running 'configure --enable-tools'."
  611. endif
  612. # Or just the docs
  613. docs: doc/doxygen-build.stamp
  614. install-docs:
  615. @if [ -z "$(NO_DOXYGEN)" ]; then \
  616. ( cd doc && \
  617. echo "Installing documentation in $(DESTDIR)$(docdir)"; \
  618. $(INSTALL) -d $(DESTDIR)$(docdir)/html/search; \
  619. for f in `find html -type f \! -name "installdox"` ; do \
  620. $(INSTALL_DATA) $$f $(DESTDIR)$(docdir)/$$f; \
  621. done ) \
  622. fi
  623. doc/doxygen-build.stamp: doc/Doxyfile $(daalainclude_HEADERS)
  624. @[ -n "$(NO_DOXYGEN)" ] || ( cd doc && doxygen && touch $(@F) )
  625. if HAVE_DOXYGEN
  626. # Or everything (by default)
  627. all-local: docs
  628. install-data-local: install-docs
  629. clean-local:
  630. $(RM) -r doc/html
  631. $(RM) -r doc/latex
  632. $(RM) -r doc/man
  633. $(RM) doc/doxygen-build.stamp
  634. uninstall-local:
  635. $(RM) -r $(DESTDIR)$(docdir)/html
  636. endif
  637. # We check this every time make is run, with configure.ac being touched to
  638. # trigger an update of the build system files if update_version changes the
  639. # current PACKAGE_VERSION (or if package_version was modified manually by a
  640. # user with either AUTO_UPDATE=no or no update_version script present - the
  641. # latter being the normal case for tarball releases).
  642. #
  643. # We can't just add the package_version file to CONFIGURE_DEPENDENCIES since
  644. # simply running autoconf will not actually regenerate configure for us when
  645. # the content of that file changes (due to autoconf dependency checking not
  646. # knowing about that without us creating yet another file for it to include).
  647. #
  648. # The MAKECMDGOALS check is a gnu-make'ism, but will degrade 'gracefully' for
  649. # makes that don't support it. The only loss of functionality is not forcing
  650. # an update of package_version for `make dist` if AUTO_UPDATE=no, but that is
  651. # unlikely to be a real problem for any real user.
  652. $(top_srcdir)/configure.ac: force
  653. @case "$(MAKECMDGOALS)" in \
  654. dist-hook) exit 0 ;; \
  655. dist-* | dist | distcheck | distclean) _arg=release ;; \
  656. esac; \
  657. if ! $(top_srcdir)/update_version $$_arg 2> /dev/null; then \
  658. if [ ! -e $(top_srcdir)/package_version ]; then \
  659. echo 'PACKAGE_VERSION="unknown"' > $(top_srcdir)/package_version; \
  660. fi; \
  661. . $(top_srcdir)/package_version || exit 1; \
  662. [ "$(PACKAGE_VERSION)" != "$$PACKAGE_VERSION" ] || exit 0; \
  663. fi; \
  664. touch $@
  665. force:
  666. # Create a minimal package_version file when make dist is run.
  667. dist-hook:
  668. echo 'PACKAGE_VERSION="$(PACKAGE_VERSION)"' > $(top_distdir)/package_version
  669. .PHONY: daala install-daala docs install-docs figures tools