diff --git a/CMake/FindPTHREAD.cmake b/CMake/FindPTHREAD.cmake new file mode 100644 index 00000000..0e717abe --- /dev/null +++ b/CMake/FindPTHREAD.cmake @@ -0,0 +1,20 @@ +# Look for the header file. +FIND_PATH(PTHREAD_INCLUDE_DIR NAMES pthread.h) + +# Look for the library. +FIND_LIBRARY(PTHREAD_LIBRARY NAMES pthread) + +# Handle the QUIETLY and REQUIRED arguments and set PTHREAD_FOUND to TRUE if all listed variables are TRUE. +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(PTHREAD DEFAULT_MSG PTHREAD_LIBRARY PTHREAD_INCLUDE_DIR) + +# Copy the results to the output variables. +IF(PTHREAD_FOUND) + SET(PTHREAD_LIBRARIES ${PTHREAD_LIBRARY}) + SET(PTHREAD_INCLUDE_DIRS ${PTHREAD_INCLUDE_DIR}) +ELSE(PTHREAD_FOUND) + SET(PTHREAD_LIBRARIES) + SET(PTHREAD_INCLUDE_DIRS) +ENDIF(PTHREAD_FOUND) + +MARK_AS_ADVANCED(PTHREAD_INCLUDE_DIRS PTHREAD_LIBRARIES) diff --git a/applications/jpip/CHANGES b/applications/jpip/CHANGES index 18173560..d42c397b 100644 --- a/applications/jpip/CHANGES +++ b/applications/jpip/CHANGES @@ -5,6 +5,9 @@ What's New for OpenJPIP ! : changed + : added +January 26, 2011 +! [kaori] unapplied auxtrans_manager to the local mode + December 24, 2011 * [kaori] additional modification for the warning diff --git a/applications/jpip/CMakeLists.txt b/applications/jpip/CMakeLists.txt index 77485a3d..1485926c 100644 --- a/applications/jpip/CMakeLists.txt +++ b/applications/jpip/CMakeLists.txt @@ -2,6 +2,7 @@ IF(BUILD_JPIP_SERVER) FIND_PACKAGE(CURL REQUIRED) FIND_PACKAGE(FCGI REQUIRED) + FIND_PACKAGE(PTHREAD REQUIRED) ENDIF(BUILD_JPIP_SERVER) # JPIP library: diff --git a/applications/jpip/libopenjpip/CMakeLists.txt b/applications/jpip/libopenjpip/CMakeLists.txt index befc6390..cb774ad7 100644 --- a/applications/jpip/libopenjpip/CMakeLists.txt +++ b/applications/jpip/libopenjpip/CMakeLists.txt @@ -4,6 +4,7 @@ INCLUDE_DIRECTORIES( ${OPENJPEG_SOURCE_DIR}/libopenjpeg ${FCGI_INCLUDE_DIRS} ${CURL_INCLUDE_DIRS} + ${PTHREAD_INCLUDE_DIRS} ) # Defines the source code for the library @@ -32,6 +33,9 @@ SET(OPENJPIP_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/session_manager.c ${CMAKE_CURRENT_SOURCE_DIR}/jpip_parser.c ${CMAKE_CURRENT_SOURCE_DIR}/sock_manager.c + ) + +SET(SERVER_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/auxtrans_manager.c ) @@ -54,8 +58,8 @@ INSTALL(TARGETS openjpip_local ) IF(BUILD_JPIP_SERVER) - ADD_LIBRARY(openjpip_server STATIC ${OPENJPIP_SRCS}) - TARGET_LINK_LIBRARIES(openjpip_server ${FCGI_LIBRARIES} ${CURL_LIBRARIES}) + ADD_LIBRARY(openjpip_server STATIC ${OPENJPIP_SRCS} ${SERVER_SRCS}) + TARGET_LINK_LIBRARIES(openjpip_server ${FCGI_LIBRARIES} ${CURL_LIBRARIES} ${PTHREAD_LIBRARIES}) SET_TARGET_PROPERTIES(openjpip_server PROPERTIES COMPILE_FLAGS "-DSERVER") INSTALL(TARGETS openjpip_server diff --git a/applications/jpip/libopenjpip/Makefile.am b/applications/jpip/libopenjpip/Makefile.am index fce61eb5..cfc973c4 100644 --- a/applications/jpip/libopenjpip/Makefile.am +++ b/applications/jpip/libopenjpip/Makefile.am @@ -38,7 +38,6 @@ cachemodel_manager.c \ j2kheader_manager.c \ jp2k_encoder.c \ sock_manager.c \ -auxtrans_manager.c \ openjpip.h \ bool.h \ boxheader_manager.h \ @@ -64,7 +63,9 @@ channel_manager.h \ session_manager.h \ jpip_parser.h \ jp2k_decoder.h \ -sock_manager.h \ +sock_manager.h + +SERVER_SRC = auxtrans_manager.c \ auxtrans_manager.h LOCAL_SRC = jp2k_decoder.c \ @@ -87,7 +88,7 @@ libopenjpip_server_la_CPPFLAGS = \ libopenjpip_server_la_CFLAGS = @THREAD_CFLAGS@ libopenjpip_server_la_LIBADD = @FCGI_LIBS@ @LIBCURL_LIBS@ @THREAD_LIBS@ -lm libopenjpip_server_la_LDFLAGS = -no-undefined -version-info @lt_version@ -libopenjpip_server_la_SOURCES = $(JPIP_SRC) +libopenjpip_server_la_SOURCES = $(JPIP_SRC) $(SERVER_SRC) libopenjpip_local_la_CPPFLAGS = \ -I. \ @@ -96,8 +97,8 @@ libopenjpip_local_la_CPPFLAGS = \ -I$(top_srcdir)/applications/jpip/libopenjpip \ -I$(top_builddir)/applications/jpip/libopenjpip \ @LIBCURL_CFLAGS@ -libopenjpip_local_la_CFLAGS = @THREAD_CFLAGS@ -libopenjpip_local_la_LIBADD = @THREAD_LIBS@ $(top_builddir)/libopenjpeg/libopenjpeg.la -lm +libopenjpip_local_la_CFLAGS = +libopenjpip_local_la_LIBADD = $(top_builddir)/libopenjpeg/libopenjpeg.la -lm libopenjpip_local_la_LDFLAGS = -no-undefined -version-info @lt_version@ libopenjpip_local_la_SOURCES = $(JPIP_SRC) $(LOCAL_SRC) diff --git a/applications/jpip/libopenjpip/comMakefile.mk b/applications/jpip/libopenjpip/comMakefile.mk index 9f326f69..e913c771 100644 --- a/applications/jpip/libopenjpip/comMakefile.mk +++ b/applications/jpip/libopenjpip/comMakefile.mk @@ -22,7 +22,7 @@ $(LIBNAME): openjpip.o target_manager.o byte_manager.o box_manager.o boxheader_m msgqueue_manager.o metadata_manager.o placeholder_manager.o ihdrbox_manager.o imgreg_manager.o \ cachemodel_manager.o j2kheader_manager.o jp2k_encoder.o query_parser.o channel_manager.o \ session_manager.o jpip_parser.o jp2k_decoder.o imgsock_manager.o jpipstream_manager.o cache_manager.o \ - dec_clientmsg_handler.o sock_manager.o auxtrans_manager.o + dec_clientmsg_handler.o sock_manager.o ar r $@ $^ endif clean: diff --git a/applications/jpip/libopenjpip/openjpip.c b/applications/jpip/libopenjpip/openjpip.c index fa4d8cf9..935e9ab7 100644 --- a/applications/jpip/libopenjpip/openjpip.c +++ b/applications/jpip/libopenjpip/openjpip.c @@ -33,7 +33,10 @@ #include "jpip_parser.h" #include "channel_manager.h" #include "byte_manager.h" + +#ifdef SERVER #include "auxtrans_manager.h" +#endif #include #include "dec_clientmsg_handler.h" diff --git a/applications/jpip/util/Makefile.nix b/applications/jpip/util/Makefile.nix index 044121ea..558a35db 100644 --- a/applications/jpip/util/Makefile.nix +++ b/applications/jpip/util/Makefile.nix @@ -8,7 +8,7 @@ J2KINCDIR = ../../../libopenjpeg J2KLIBDIR = $(J2KINCDIR)/.libs LIBFNAME = $(JPIPLIBDIR)/libopenjpip_local.a $(J2KLIBDIR)/libopenjpeg.a CFLAGS = -O3 -Wall -I$(JPIPLIBDIR) -LDFLAGS = -L$(JPIPLIBDIR) -L$(J2KLIBDIR) -lm -lpthread -lopenjpip_local +LDFLAGS = -L$(JPIPLIBDIR) -L$(J2KLIBDIR) -lm -lopenjpip_local ALL = opj_server opj_dec_server jpip_to_jp2 jpip_to_j2k test_index addXMLinJP2