2 # According to http://www.gnu.org/software/libtool/manual/libtool.html#Updating-version-info :
4 # 1) when bugs are fixed or internal code is changed: increase MICRO
5 # 2) if API is added, increase MINOR and set MICRO to 0
6 # 3) if API or ABI is broken (this case should (must) never happen as it's very bad for a library), or a new designed library, increase MAJOR and set MINOR and MICRO to 0
8 m4_define([OPJ_MAJOR], [1])
9 m4_define([OPJ_MINOR], [4])
10 m4_define([OPJ_MICRO], [0])
12 m4_define([lt_cur], m4_eval(OPJ_MAJOR + OPJ_MINOR))
13 m4_define([lt_rev], OPJ_MICRO)
14 m4_define([lt_age], OPJ_MINOR)
18 [OPJ_MAJOR.OPJ_MINOR.OPJ_MICRO],
19 [openjpeg@googlegroups.com],
21 [http://www.openjpeg.org])
22 AC_CONFIG_SRCDIR([configure.ac])
23 AC_CONFIG_MACRO_DIR([m4])
24 AC_CONFIG_HEADERS([opj_config.h])
29 AM_INIT_AUTOMAKE(1.11 foreign dist-bzip2)
30 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
42 lt_version=lt_cur:lt_rev:lt_age
46 ### Needed information
59 AM_CONDITIONAL([HAVE_WIN32], [test "x${have_win32}" = "xyes"])
60 AM_CONDITIONAL([HAVE_DARWIN], [test "x${have_darwin}" = "xyes"])
63 ### Additional options to configure
67 AC_ARG_ENABLE([debug],
68 [AC_HELP_STRING([--enable-debug], [build with debug symbols @<:@default=disabled@:>@])],
70 if test "x${enableval}" = "xyes" ; then
78 AC_MSG_CHECKING([whether to build in debug mode])
79 AC_MSG_RESULT([${want_debug}])
84 [AC_HELP_STRING([--enable-mj2], [build mj2 binaries @<:@default=disabled@:>@])],
86 if test "x${enableval}" = "xyes" ; then
94 AC_MSG_CHECKING([whether to build the MJ2 binaries])
95 AC_MSG_RESULT([${want_mj2}])
97 if test "x${want_mj2}" = "xyes" ; then
98 AC_DEFINE(USE_MJ2, [1], [define to 1 if you use mj2])
101 AM_CONDITIONAL([WANT_MJ2], [test "x${want_mj2}" = "xyes"])
105 AC_ARG_ENABLE([jpwl],
106 [AC_HELP_STRING([--enable-jpwl], [build JPWL library @<:@default=disabled@:>@])],
108 if test "x${enableval}" = "xyes" ; then
116 AC_MSG_CHECKING([whether to build the JPWL library])
117 AC_MSG_RESULT([${want_jpwl}])
119 if test "x${want_jpwl}" = "xyes" ; then
120 AC_DEFINE(USE_JPWL, [1], [define to 1 if you use jpwl])
123 AM_CONDITIONAL([WANT_JPWL], [test "x${want_jpwl}" = "xyes"])
127 AC_ARG_ENABLE([jpip],
128 [AC_HELP_STRING([--enable-jpip], [build jpip library @<:@default=disabled@:>@])],
130 if test "x${enableval}" = "xyes" ; then
138 AC_MSG_CHECKING([whether to build the JPIP library])
139 AC_MSG_RESULT([${want_jpip}])
141 if test "x${want_jpip}" = "xyes" ; then
142 AC_DEFINE(USE_JPIP, [1], [define to 1 if you use jpip])
147 if test "x${want_jpip}" = "xyes" ; then
148 OPJ_CHECK_LIB([/usr],
156 if test "x${want_jpip}" = "xno" ; then
157 OPJ_CHECK_LIB([/usr/local],
165 if test "x${want_jpip}" = "xno" ; then
166 OPJ_CHECK_LIB([/opt],
174 AM_CONDITIONAL([WANT_JPIP], [test "x${want_jpip}" = "xyes"])
177 ### Checks for programs
185 # Check whether pkg-config supports Requires.private
186 if $PKG_CONFIG --atleast-pkgconfig-version 0.22 ; then
187 pkgconfig_requires_private="Requires.private"
189 pkgconfig_requires_private="Requires"
191 AC_SUBST(pkgconfig_requires_private)
192 AC_SUBST(requirements)
203 ### Checks for libraries
210 [AC_HELP_STRING([--disable-png], [disable PNG support @<:@default=enabled@:>@])],
212 if test "x${enableval}" = "xyes" ; then
220 AC_MSG_CHECKING([whether to build with PNG support])
221 AC_MSG_RESULT([${want_png}])
223 if test "x${want_png}" = "xyes" ; then
225 PKG_CHECK_MODULES([PNG], [libpng14],
228 PKG_CHECK_MODULES([PNG], [libpng12],
231 PKG_CHECK_MODULES([PNG], [libpng10],
234 PKG_CHECK_MODULES([PNG], [libpng],
241 if ! test "x${have_libpng}" = "xyes" ; then
242 OPJ_CHECK_LIB([/usr],
245 [png_create_write_struct],
250 if ! test "x${have_libpng}" = "xyes" ; then
251 OPJ_CHECK_LIB([/usr/local],
254 [png_create_write_struct],
259 if ! test "x${have_libpng}" = "xyes" ; then
260 OPJ_CHECK_LIB([/opt],
263 [png_create_write_struct],
268 if test "x${have_libpng}" = "xno" ; then
269 AC_MSG_WARN([Can not find a usuable PNG library. Make sure that CPPFLAGS and LDFLAGS are correctly set.])
274 AC_MSG_CHECKING([whether PNG is available])
275 AC_MSG_RESULT([${have_libpng}])
277 if test "x${have_libpng}" = "xyes" ; then
278 AC_DEFINE(HAVE_LIBPNG, [1], [define to 1 if you have libpng])
281 AM_CONDITIONAL([with_libpng], [test x${have_libpng} = "xyes"])
287 AC_ARG_ENABLE([tiff],
288 [AC_HELP_STRING([--disable-tiff], [disable TIFF support @<:@default=enabled@:>@])],
290 if test "x${enableval}" = "xyes" ; then
298 AC_MSG_CHECKING([whether to build with TIFF support])
299 AC_MSG_RESULT([${want_tiff}])
301 if test "x${want_tiff}" = "xyes" ; then
303 OPJ_CHECK_LIB([/usr],
307 [have_libtiff="yes"],
310 if ! test "x${have_libtiff}" = "xyes" ; then
311 OPJ_CHECK_LIB([/usr/local],
315 [have_libtiff="yes"],
319 if ! test "x${have_libtiff}" = "xyes" ; then
320 OPJ_CHECK_LIB([/opt],
324 [have_libtiff="yes"],
328 if test "x${have_libtiff}" = "xno" ; then
329 AC_MSG_WARN([Can not find a usuable TIFF library. Make sure that CPPFLAGS and LDFLAGS are correctly set.])
333 AC_MSG_CHECKING([whether TIFF is available])
334 AC_MSG_RESULT([${have_libtiff}])
336 if test "x${have_libtiff}" = "xyes" ; then
337 AC_DEFINE(HAVE_LIBTIFF, [1], [define to 1 if you have libtiff])
340 AM_CONDITIONAL([with_libtiff], [test "x${have_libtiff}" = "xyes"])
342 AC_ARG_VAR([TIFF_CFLAGS], [preprocessor flags for libtiff])
343 AC_SUBST(TIFF_CFLAGS)
344 AC_ARG_VAR([TIFF_LIBS], [linker flags for libtiff])
351 AC_ARG_ENABLE([lcms2],
352 [AC_HELP_STRING([--disable-lcms2], [disable LCMS-2 support @<:@default=enabled@:>@])],
354 if test "x${enableval}" = "xyes" ; then
362 AC_MSG_CHECKING([whether to build with LCMS-2 support])
363 AC_MSG_RESULT([${want_lcms2}])
365 if test "x${want_lcms2}" = "xyes" ; then
366 PKG_CHECK_MODULES([LCMS2], [lcms2],
374 AC_MSG_CHECKING([whether LCMS-2 is available])
375 AC_MSG_RESULT([${have_lcms2}])
377 if test "x${have_lcms2}" = "xyes" ; then
378 AC_DEFINE(HAVE_LIBLCMS2, [1], [define to 1 if you have lcms version 2.x])
379 lcms_output="lcms version 2.x"
384 AC_ARG_ENABLE([lcms1],
385 [AC_HELP_STRING([--disable-lcms1], [disable LCMS-1 support @<:@default=enabled@:>@])],
387 if test "x${enableval}" = "xyes" ; then
395 AC_MSG_CHECKING([whether to build with LCMS-1 support])
396 AC_MSG_RESULT([${want_lcms1}])
398 if test "x${have_lcms2}" = "xno" ; then
400 if test "x${want_lcms1}" = "xyes" ; then
401 PKG_CHECK_MODULES([LCMS1], [lcms1],
406 [PKG_CHECK_MODULES([LCMS1], [lcms],
414 AC_MSG_CHECKING([whether LCMS-1 is available])
415 AC_MSG_RESULT([${have_lcms1}])
417 if test "x${have_lcms1}" = "xyes" ; then
418 AC_DEFINE(HAVE_LIBLCMS1, [1], [define to 1 if you have lcms version 1.x])
419 lcms_output="lcms version 1.x"
424 ### Checks for header files
426 ## FIXME: declarations must be fixed in source code. See autoconf manual
433 ### Checks for structures
436 ### Checks for compiler characteristics
440 #OPJ_COMPILER_FLAG([-Wall])
441 #OPJ_COMPILER_FLAG([-Wextra])
442 #OPJ_COMPILER_FLAG([-Wshadow])
443 #OPJ_COMPILER_FLAG([-Wpointer-arith])
444 OPJ_COMPILER_FLAG([-Wno-unused-result])
446 if test "x${want_debug}" = "xyes" ; then
447 OPJ_COMPILER_FLAG([-g])
448 OPJ_COMPILER_FLAG([-O0])
450 OPJ_COMPILER_FLAG([-O3])
454 ### Checks for linker characteristics
457 ### Checks for library functions
463 libopenjpeg/jpwl/Makefile
464 applications/Makefile
465 applications/codec/Makefile
466 applications/mj2/Makefile
467 applications/jpip/Makefile
468 applications/jpip/libopenjpip/Makefile
469 applications/jpip/opj_server/Makefile
470 applications/jpip/opj_client/Makefile
471 applications/jpip/opj_client/opj_dec_server/Makefile
472 applications/jpip/tools/Makefile
473 applications/jpip/tools/indexer/Makefile
484 echo "------------------------------------------------------------------------"
485 echo "$PACKAGE $VERSION"
486 echo "------------------------------------------------------------------------"
489 echo "Configuration Options Summary:"
491 echo " Debug...............: ${want_debug}"
493 echo " Optional support:"
494 echo " libpng............: ${have_libpng}"
495 echo " libtiff...........: ${have_libtiff}"
496 echo " libcms............: ${lcms_output}"
498 echo " Documentation.......: ${opj_have_doxygen}"
499 echo " Build.............: make doc"
501 echo " mj2.................: ${want_mj2}"
502 echo " jpwl................: ${want_jpwl}"
503 echo " jpip................: ${want_jpip}"