X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=configure.ac;h=c30ebea9697766df589c12fbfa4d7dd2a5c38e48;hb=2fe6bac6ebcef40e373bd76c5570ff4f8117460b;hp=baefa9641d73d8a5ec7dd59f14b27805fe752868;hpb=b7969ce657d5b32e0726c14af418d0ea4af55fdb;p=openjpeg.git diff --git a/configure.ac b/configure.ac index baefa964..c30ebea9 100644 --- a/configure.ac +++ b/configure.ac @@ -6,8 +6,8 @@ # 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 m4_define([OPJ_MAJOR], [1]) -m4_define([OPJ_MINOR], [4]) -m4_define([OPJ_MICRO], [0]) +m4_define([OPJ_MINOR], [5]) +m4_define([OPJ_MICRO], [2]) m4_define([lt_cur], m4_eval(OPJ_MAJOR + OPJ_MINOR)) m4_define([lt_rev], OPJ_MICRO) @@ -26,21 +26,21 @@ AC_CONFIG_HEADERS([opj_config.h]) AC_CANONICAL_SYSTEM AC_CANONICAL_HOST -AM_INIT_AUTOMAKE(1.11 foreign dist-bzip2) +AM_INIT_AUTOMAKE([1.11 foreign dist-bzip2 dist-xz dist-zip]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) MAJOR_NR=OPJ_MAJOR MINOR_NR=OPJ_MINOR MICRO_NR=OPJ_MICRO -AC_SUBST(MAJOR_NR) -AC_SUBST(MINOR_NR) -AC_SUBST(MICRO_NR) +AC_SUBST([MAJOR_NR]) +AC_SUBST([MINOR_NR]) +AC_SUBST([MICRO_NR]) LT_PREREQ([2.0]) LT_INIT([win32-dll]) lt_version=lt_cur:lt_rev:lt_age -AC_SUBST(lt_version) +AC_SUBST([lt_version]) ### Needed information @@ -116,10 +116,6 @@ AC_ARG_ENABLE([jpwl], AC_MSG_CHECKING([whether to build the JPWL library]) AC_MSG_RESULT([${want_jpwl}]) -if test "x${want_jpwl}" = "xyes" ; then - AC_DEFINE(USE_JPWL, [1], [define to 1 if you use jpwl]) -fi - AM_CONDITIONAL([WANT_JPWL], [test "x${want_jpwl}" = "xyes"]) # JPIP @@ -138,40 +134,19 @@ AC_ARG_ENABLE([jpip], AC_MSG_CHECKING([whether to build the JPIP library]) AC_MSG_RESULT([${want_jpip}]) -if test "x${want_jpip}" = "xyes" ; then - AC_DEFINE(USE_JPIP, [1], [define to 1 if you use jpip]) -fi - -# libfcgi - -if test "x${want_jpip}" = "xyes" ; then - OPJ_CHECK_LIB([/usr], - [fcgi_stdio.h], - [fcgi], - [FCGI_printf], - [want_jpip="yes"], - [want_jpip="no"]) -fi - -if test "x${want_jpip}" = "xno" ; then - OPJ_CHECK_LIB([/usr/local], - [fcgi_stdio.h], - [fcgi], - [FCGI_printf], - [want_jpip="yes"], - [want_jpip="no"]) -fi - -if test "x${want_jpip}" = "xno" ; then - OPJ_CHECK_LIB([/opt], - [fcgi_stdio.h], - [fcgi], - [FCGI_printf], - [want_jpip="yes"], - [want_jpip="no"]) -fi +AC_ARG_ENABLE([jpip-server], + [AC_HELP_STRING([--enable-jpip-server], [build jpip server @<:@default=disabled@:>@])], + [ + if test "x${enableval}" = "xyes" ; then + want_jpip_server="yes" + else + want_jpip_server="no" + fi + ], + [want_jpip_server="no"]) -AM_CONDITIONAL([WANT_JPIP], [test "x${want_jpip}" = "xyes"]) +AC_MSG_CHECKING([whether to build the JPIP server]) +AC_MSG_RESULT([${want_jpip_server}]) ### Checks for programs @@ -188,8 +163,8 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.22 ; then else pkgconfig_requires_private="Requires" fi -AC_SUBST(pkgconfig_requires_private) -AC_SUBST(requirements) +AC_SUBST([pkgconfig_requires_private]) +AC_SUBST([requirements]) # doxygen @@ -222,16 +197,16 @@ AC_MSG_RESULT([${want_png}]) if test "x${want_png}" = "xyes" ; then - PKG_CHECK_MODULES([PNG], [libpng14], + PKG_CHECK_MODULES([PNG], [libpng15 zlib], [have_libpng="yes"], [ - PKG_CHECK_MODULES([PNG], [libpng12], + PKG_CHECK_MODULES([PNG], [libpng14 zlib], [have_libpng="yes"], [ - PKG_CHECK_MODULES([PNG], [libpng10], + PKG_CHECK_MODULES([PNG], [libpng12 zlib], [have_libpng="yes"], [ - PKG_CHECK_MODULES([PNG], [libpng], + PKG_CHECK_MODULES([PNG], [libpng zlib], [have_libpng="yes"], [have_libpng="no"]) ]) @@ -239,30 +214,23 @@ if test "x${want_png}" = "xyes" ; then ]) if ! test "x${have_libpng}" = "xyes" ; then - OPJ_CHECK_LIB([/usr], - [png.h], - [png], - [png_create_write_struct], - [have_libpng="yes"], - [have_libpng="no"]) - fi - if ! test "x${have_libpng}" = "xyes" ; then - OPJ_CHECK_LIB([/usr/local], - [png.h], - [png], - [png_create_write_struct], - [have_libpng="yes"], + OPJ_CHECK_LIB([zlib.h], + [z], + [zlibVersion], + [ + OPJ_CHECK_LIB([png.h], + [png], + [png_access_version_number], + [ + have_libpng="yes" + PNG_CFLAGS="${PNG_CFLAGS} ${Z_CFLAGS}" + PNG_LIBS="${PNG_LIBS} ${Z_LIBS}" + ], + [have_libpng="no"]) + ], [have_libpng="no"]) - fi - if ! test "x${have_libpng}" = "xyes" ; then - OPJ_CHECK_LIB([/opt], - [png.h], - [png], - [png_create_write_struct], - [have_libpng="yes"], - [have_libpng="no"]) fi if test "x${have_libpng}" = "xno" ; then @@ -300,31 +268,13 @@ AC_MSG_RESULT([${want_tiff}]) if test "x${want_tiff}" = "xyes" ; then - OPJ_CHECK_LIB([/usr], + OPJ_CHECK_LIB( [tiff.h], [tiff], [TIFFOpen], [have_libtiff="yes"], [have_libtiff="no"]) - if ! test "x${have_libtiff}" = "xyes" ; then - OPJ_CHECK_LIB([/usr/local], - [tiff.h], - [tiff], - [TIFFOpen], - [have_libtiff="yes"], - [have_libtiff="no"]) - fi - - if ! test "x${have_libtiff}" = "xyes" ; then - OPJ_CHECK_LIB([/opt], - [tiff.h], - [tiff], - [TIFFOpen], - [have_libtiff="yes"], - [have_libtiff="no"]) - fi - if test "x${have_libtiff}" = "xno" ; then AC_MSG_WARN([Can not find a usuable TIFF library. Make sure that CPPFLAGS and LDFLAGS are correctly set.]) fi @@ -339,14 +289,10 @@ fi AM_CONDITIONAL([with_libtiff], [test "x${have_libtiff}" = "xyes"]) -AC_ARG_VAR([TIFF_CFLAGS], [preprocessor flags for libtiff]) -AC_SUBST(TIFF_CFLAGS) -AC_ARG_VAR([TIFF_LIBS], [linker flags for libtiff]) -AC_SUBST(TIFF_LIBS) - # libcms2 lcms_output="no" +have_lcms2="no" AC_ARG_ENABLE([lcms2], [AC_HELP_STRING([--disable-lcms2], [disable LCMS-2 support @<:@default=enabled@:>@])], @@ -364,10 +310,7 @@ AC_MSG_RESULT([${want_lcms2}]) if test "x${want_lcms2}" = "xyes" ; then PKG_CHECK_MODULES([LCMS2], [lcms2], - [ - have_lcms2="yes" - requirements="lcms2" - ], + [have_lcms2="yes"], [have_lcms2="no"]) fi @@ -399,15 +342,9 @@ if test "x${have_lcms2}" = "xno" ; then if test "x${want_lcms1}" = "xyes" ; then PKG_CHECK_MODULES([LCMS1], [lcms1], - [ - have_lcms1="yes" - requirements="lcms1" - ], + [have_lcms1="yes"], [PKG_CHECK_MODULES([LCMS1], [lcms], - [ - have_lcms1="yes" - requirements="lcms" - ], + [have_lcms1="yes"], [have_lcms1="no"])]) fi @@ -421,6 +358,99 @@ if test "x${have_lcms2}" = "xno" ; then fi +# threads + +if test "x${want_jpip_server}" = "xyes" ; then + + if test "x${have_win32}" = "xno" ; then + + SAVE_CFLAGS=${CFLAGS} + CFLAGS="${CFLAGS} -pthread" + SAVE_LIBS=${LIBS} + LIBS="${LIBS} -pthread" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[ +#include + ]], + [[ +pthread_t id; +id = pthread_self(); + ]])], + [have_pthread="yes"], + [have_pthread="no"]) + CFLAGS=${SAVE_CFLAGS} + LIBS=${SAVE_LIBS} + + AC_MSG_CHECKING([whether Pthread library is available]) + AC_MSG_RESULT([${have_pthread}]) + + if ! test "x${have_pthread}" = "xyes" ; then + AC_MSG_WARN([Pthread library not found. OpenJPIP server will not be compiled.]) + want_jpip_server="no" + else + THREAD_CFLAGS="-pthread" + THREAD_LIBS="-pthread" + fi + + else + THREAD_LIBS="-lws2_32" + fi + +fi + +AC_ARG_VAR([THREAD_CFLAGS], [compiler flag for the thread library]) +AC_SUBST([THREAD_CFLAGS]) +AC_ARG_VAR([THREAD_LIBS], [linker flags for thread library]) +AC_SUBST([THREAD_LIBS]) + +# libfcgi + +if test "x${want_jpip_server}" = "xyes" ; then + + have_fcgi="no" + OPJ_CHECK_LIB( + [fcgi_stdio.h], + [fcgi], + [FCGI_Accept], + [have_fcgi="yes"], + [have_fcgi="no"]) + + if ! test "x${have_fcgi}" = "xyes" ; then + AC_MSG_WARN([FastCGI library not found. OpenJPIP server will not be compiled.]) + want_jpip_server="no" + fi + +fi + +# libcurl + +if test "x${want_jpip_server}" = "xyes" ; then + + PKG_CHECK_MODULES([LIBCURL], [libcurl], + [have_libcurl="yes"], + [have_libcurl="no"]) + + if ! test "x${have_libcurl}" = "xyes" ; then + AC_MSG_WARN([libcurl library not found. OpenJPIP server will not be compiled.]) + want_jpip_server="no" + fi + +fi + +if test "x${want_jpip}" = "xyes" ; then + AC_DEFINE(USE_JPIP, [1], [define to 1 if you use jpip]) +fi + +AM_CONDITIONAL([WANT_JPIP], [test "x${want_jpip}" = "xyes"]) + +if test "x${want_jpip_server}" = "xyes" ; then + AC_DEFINE(USE_JPIP_SERVER, [1], [define to 1 if you use jpip server]) +fi + +AM_CONDITIONAL([WANT_JPIP_SERVER], [test "x${want_jpip_server}" = "xyes"]) + +AM_CONDITIONAL([WANT_JPIP_CODE], [test "x${want_jpip}" = "xyes" || test "x${want_jpip_server}" = "xyes"]) + ### Checks for header files ## FIXME: declarations must be fixed in source code. See autoconf manual @@ -435,6 +465,7 @@ AC_HEADER_DIRENT ### Checks for compiler characteristics +AM_PROG_CC_C_O AC_C_BIGENDIAN #OPJ_COMPILER_FLAG([-Wall]) @@ -456,9 +487,17 @@ fi ### Checks for library functions + +### Post configuration + +AM_CONDITIONAL([BUILD_SHARED], [test "x${enable_shared}" = "xyes"]) +AM_CONDITIONAL([BUILD_STATIC], [test "x${enable_static}" = "xyes"]) + + AC_CONFIG_FILES([ Makefile libopenjpeg1.pc +libopenjpeg-jpwl.pc libopenjpeg/Makefile libopenjpeg/jpwl/Makefile applications/Makefile @@ -466,11 +505,7 @@ applications/codec/Makefile applications/mj2/Makefile applications/jpip/Makefile applications/jpip/libopenjpip/Makefile -applications/jpip/opj_server/Makefile -applications/jpip/opj_client/Makefile -applications/jpip/opj_client/opj_dec_server/Makefile -applications/jpip/tools/Makefile -applications/jpip/tools/indexer/Makefile +applications/jpip/util/Makefile doc/Makefile ]) @@ -501,4 +536,5 @@ echo echo " mj2.................: ${want_mj2}" echo " jpwl................: ${want_jpwl}" echo " jpip................: ${want_jpip}" +echo " jpip server.........: ${want_jpip_server}" echo