]> granicus.if.org Git - openjpeg/commitdiff
follow latest JPIP changes in the autotools side (pthread dependency, conditional...
authorVincent Torri <vincent.torri@gmail.com>
Wed, 25 Jan 2012 19:52:18 +0000 (19:52 +0000)
committerVincent Torri <vincent.torri@gmail.com>
Wed, 25 Jan 2012 19:52:18 +0000 (19:52 +0000)
CHANGES
Makefile.am
applications/Makefile.am
applications/jpip/libopenjpip/Makefile.am
applications/jpip/util/Makefile.am
configure.ac

diff --git a/CHANGES b/CHANGES
index 8c407b2a59bcccc77a44e696c0e317e843e7a257..5dd83e1b961dad86f322864daa027d5563e4b8f4 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -5,6 +5,9 @@ What's New for OpenJPEG
 ! : changed
 + : added
 
+January 25, 2012
+* [vincent] follow latest JPIP changes in the autotools side (pthread dependency, conditional compilation of JPIP server and client)
+
 December 8, 2011
 * [Mathieu Malaterre] Remove 9 warnings (gcc)
 * [mathieu] remove hack with bash around kdu_expand
index df76f6aa93e4a2787a9daf371931430f0b34f35a..6ed452f52b761659e6a5ee486150a5a35742df70 100644 (file)
@@ -1,4 +1,4 @@
-DISTCHECK_CONFIGURE_FLAGS = --enable-jpip=yes --enable-jpwl=yes --enable-mj2=yes
+DISTCHECK_CONFIGURE_FLAGS = --enable-jpip=yes --enable-jpip-server=yes --enable-jpwl=yes --enable-mj2=yes
 
 ACLOCAL_AMFLAGS = -I m4
 
index 113afbe8afebf53ea591d1250c8354325b89114d..63dae6d5b9cb673f35b3a33fa6af6ec5fa2ff00d 100644 (file)
@@ -6,7 +6,7 @@ if WANT_MJ2
 SUBDIRS += mj2
 endif
 
-if WANT_JPIP
+if WANT_JPIP_CODE
 SUBDIRS += jpip
 endif
 
index fc79ef6eb0e6c761552d0693ebcbb03077eaf251..293afc63d3fdd8eed109217405575e686f3993d5 100644 (file)
@@ -3,7 +3,15 @@ MAINTAINERCLEANFILES = Makefile.in
 includesdir = $(includedir)/openjpeg-$(MAJOR_NR).$(MINOR_NR)
 includes_HEADERS = 
 
-lib_LTLIBRARIES = libopenjpip_server.la libopenjpip_local.la
+lib_LTLIBRARIES =
+
+if WANT_JPIP
+lib_LTLIBRARIES += libopenjpip_local.la
+endif
+
+if WANT_JPIP_SERVER
+lib_LTLIBRARIES += libopenjpip_server.la
+endif
 
 JPIP_SRC = \
 openjpip.c \
@@ -76,8 +84,8 @@ libopenjpip_server_la_CPPFLAGS = \
 @FCGI_CFLAGS@ \
 @LIBCURL_CFLAGS@ \
 -DSERVER
-libopenjpip_server_la_CFLAGS =
-libopenjpip_server_la_LIBADD = @FCGI_LIBS@ @LIBCURL_LIBS@ -lm
+libopenjpip_server_la_CFLAGS = @PTHREAD_CFLAGS@
+libopenjpip_server_la_LIBADD = @FCGI_LIBS@ @LIBCURL_LIBS@ @PTHREAD_LIBS@ -lm
 libopenjpip_server_la_LDFLAGS = -no-undefined -version-info @lt_version@
 libopenjpip_server_la_SOURCES = $(JPIP_SRC)
 
@@ -88,12 +96,13 @@ libopenjpip_local_la_CPPFLAGS = \
 -I$(top_srcdir)/applications/jpip/libopenjpip \
 -I$(top_builddir)/applications/jpip/libopenjpip \
 @LIBCURL_CFLAGS@
-libopenjpip_local_la_CFLAGS =
-libopenjpip_local_la_LIBADD = @LIBCURL_LIBS@ $(top_builddir)/libopenjpeg/libopenjpeg.la -lm
+libopenjpip_local_la_CFLAGS = @PTHREAD_CFLAGS@
+libopenjpip_local_la_LIBADD = @PTHREAD_LIBS@ $(top_builddir)/libopenjpeg/libopenjpeg.la -lm
 libopenjpip_local_la_LDFLAGS = -no-undefined -version-info @lt_version@
 libopenjpip_local_la_SOURCES = $(JPIP_SRC) $(LOCAL_SRC)
 
 install-data-hook:
+if WANT_JPIP_SERVER
        @echo -e " (LA)\t$(libdir)/libopenjpip_server.la" >> $(top_builddir)/report.txt
 if BUILD_SHARED
        @( $(call solist_s) ) >> $(top_builddir)/report.txt
@@ -101,6 +110,8 @@ endif
 if BUILD_STATIC
        @echo -e " (A)\t$(base_s)/$(a_s)" >> $(top_builddir)/report.txt
 endif
+endif
+if WANT_JPIP
        @echo -e " (LA)\t$(libdir)/libopenjpip_local.la" >> $(top_builddir)/report.txt
 if BUILD_SHARED
        @( $(call solist_c) ) >> $(top_builddir)/report.txt
@@ -108,6 +119,7 @@ endif
 if BUILD_STATIC
        @echo -e " (A)\t$(base_c)/$(a_c)" >> $(top_builddir)/report.txt
 endif
+endif
 
 solist_s    = $(foreach f, $(dll_s) $(so_s), echo -e ' $(SO_PREFIX)\t$(base_s)/$(f)' ;)
 get_tok_s   = $(shell grep -E "^$(1)=" libopenjpip_server.la | cut -d "'" -f 2)
index 8be3a627237a9f4cdcf9687627c9c1b519c6b01f..eac0e6a63240df06149d872994c11a487409204b 100644 (file)
@@ -1,6 +1,14 @@
 MAINTAINERCLEANFILES = Makefile.in
 
-bin_PROGRAMS = opj_server opj_dec_server jpip_to_jp2 jpip_to_j2k test_index
+bin_PROGRAMS =
+
+if WANT_JPIP
+bin_PROGRAMS += opj_dec_server test_index jpip_to_j2k jpip_to_jp2
+endif
+
+if WANT_JPIP_SERVER
+bin_PROGRAMS += opj_server
+endif
 
 opj_server_CPPFLAGS = \
 @FCGI_CFLAGS@ \
@@ -56,8 +64,12 @@ test_index_SOURCES = test_index.c
 
 #-------------
 install-data-hook:
+if WANT_JPIP_SERVER
        @echo -e " (B)\t$(bindir)/opj_server$(EXEEXT)" >> $(top_builddir)/report.txt
+endif
+if WANT_JPIP
        @echo -e " (B)\t$(bindir)/opj_dec_server$(EXEEXT)" >> $(top_builddir)/report.txt
        @echo -e " (B)\t$(bindir)/jpip_to_jp2$(EXEEXT)" >> $(top_builddir)/report.txt
        @echo -e " (B)\t$(bindir)/jpip_to_j2k$(EXEEXT)" >> $(top_builddir)/report.txt
        @echo -e " (B)\t$(bindir)/test_index$(EXEEXT)" >> $(top_builddir)/report.txt
+endif
index cef24a518d6cf7f17a7e19408b899db357fe9634..e505bdc5445db5dc2ebec130e840a042bebb5085 100644 (file)
@@ -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
 
@@ -332,9 +346,47 @@ if test "x${have_lcms2}" = "xno" ; then
 
 fi
 
+# pthread
+
+if test "x${want_jpip}" = "xyes" && 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.h>
+                       ]],
+                       [[
+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 library will not be compiled.])
+      want_jpip="no"
+   else
+      PTHREAD_CFLAGS="-pthread"
+      AC_ARG_VAR([PTHREAD_CFLAGS], [compiler flag for Pthread])
+      AC_SUBST([PTHREAD_CFLAGS])
+      PTHREAD_LIBS="-pthread"
+      AC_ARG_VAR([PTHREAD_LIBS], [linker flags for Pthread])
+      AC_SUBST([PTHREAD_LIBS])
+   fi
+
+fi
+
 # libfcgi
 
-if test "x${want_jpip}" = "xyes" ; then
+if test "x${want_jpip_server}" = "xyes" ; then
 
    have_fcgi="no"
    OPJ_CHECK_LIB(
@@ -345,23 +397,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}" = "xyes" ; then
+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 will not be compiled.])
-      want_jpip="no"
+      AC_MSG_WARN([libcurl library not found. OpenJPIP server will not be compiled.])
+      want_jpip_server="no"
    fi
 
 fi
@@ -372,6 +424,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
@@ -457,4 +517,5 @@ echo
 echo "  mj2.................: ${want_mj2}"
 echo "  jpwl................: ${want_jpwl}"
 echo "  jpip................: ${want_jpip}"
+echo "  jpip server.........: ${want_jpip_server}"
 echo