X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=configure.ac;h=317ffa236a62f4872a2b70ffb977203908fe8449;hb=d5fa5605c4300732724af00004c78101fe9341de;hp=f1e68b3110c24702a36b9c13f8df96c6cf63ea61;hpb=fb82b6d7d9921074e5135f02040b38a302d6b611;p=openjpeg.git diff --git a/configure.ac b/configure.ac index f1e68b31..317ffa23 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], [99]) +m4_define([OPJ_MINOR], [5]) +m4_define([OPJ_MICRO], [0]) 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 @@ -134,6 +134,20 @@ AC_ARG_ENABLE([jpip], AC_MSG_CHECKING([whether to build the JPIP library]) AC_MSG_RESULT([${want_jpip}]) +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"]) + +AC_MSG_CHECKING([whether to build the JPIP server]) +AC_MSG_RESULT([${want_jpip_server}]) + ### Checks for programs @@ -149,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 @@ -183,16 +197,16 @@ AC_MSG_RESULT([${want_png}]) if test "x${want_png}" = "xyes" ; then - PKG_CHECK_MODULES([PNG], [libpng15], + PKG_CHECK_MODULES([PNG], [libpng15 zlib], [have_libpng="yes"], [ - PKG_CHECK_MODULES([PNG], [libpng14], + PKG_CHECK_MODULES([PNG], [libpng14 zlib], [have_libpng="yes"], [ - PKG_CHECK_MODULES([PNG], [libpng12], + 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"]) ]) @@ -200,11 +214,23 @@ if test "x${want_png}" = "xyes" ; then ]) if ! test "x${have_libpng}" = "xyes" ; then - OPJ_CHECK_LIB([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}" = "xno" ; then @@ -332,9 +358,54 @@ 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}" = "xyes" ; then +if test "x${want_jpip_server}" = "xyes" ; then have_fcgi="no" OPJ_CHECK_LIB( @@ -345,8 +416,23 @@ if test "x${want_jpip}" = "xyes" ; then [have_fcgi="no"]) if ! test "x${have_fcgi}" = "xyes" ; then - AC_MSG_WARN([FastCGI library not found. OpenJPIP will not be compiled.]) - want_jpip="no" + 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 @@ -357,6 +443,14 @@ 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 @@ -411,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 ]) @@ -446,4 +536,5 @@ echo echo " mj2.................: ${want_mj2}" echo " jpwl................: ${want_jpwl}" echo " jpip................: ${want_jpip}" +echo " jpip server.........: ${want_jpip_server}" echo