[trunk] Since r2060 (and r2059) openjpip is now a first class shared library, instead...
[openjpeg.git] / src / bin / jpip / CMakeLists.txt
index 5a3fc0ff1e24390ff196e3f0e6e606c6d35bf889..45f0007bca301a662efcfc30e9a535de5008639f 100644 (file)
@@ -1,20 +1,22 @@
 # Headers file are located here:
 include_directories(
-  ${OPENJPEG_SOURCE_DIR}/src/lib/openjp2 # opj_stdint.h
+  ${OPENJPEG_BINARY_DIR}/src/lib/openjp2 # opj_config.h
+  ${OPENJPEG_SOURCE_DIR}/src/lib/openjp2
+  ${OPENJPEG_SOURCE_DIR}/src/bin/common # opj_getopt.h
+  ${OPENJPEG_SOURCE_DIR}/src/bin/jp2 # convert.h
   ${OPENJPEG_SOURCE_DIR}/src/lib/openjpip
   ${FCGI_INCLUDE_DIRS}
 )
 
 # Tool to embed metadata into JP2 file
-add_executable(addXMLinJP2 addXMLinJP2.c)
+add_executable(opj_jpip_addxml opj_jpip_addxml.c)
 # Install exe
-install(TARGETS addXMLinJP2
+install(TARGETS opj_jpip_addxml
   EXPORT OpenJPEGTargets
   DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
   )
 
 if(BUILD_JPIP_SERVER)
-
   set(OPJ_SERVER_SRCS
   ${CMAKE_CURRENT_SOURCE_DIR}/opj_server.c
   )
@@ -42,13 +44,12 @@ endif()
 
 set(EXES
   opj_dec_server
-  jpip_to_jp2
-  jpip_to_j2k
-  test_index
+  opj_jpip_transcode
+  opj_jpip_test
   )
 foreach(exe ${EXES})
-  add_executable(${exe} ${exe}.c)
-  target_link_libraries(${exe} openjpip_local)
+add_executable(${exe} ${exe}.c)
+  target_link_libraries(${exe} openjpip)
   install(TARGETS ${exe}
     EXPORT OpenJPEGTargets
     DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
@@ -61,36 +62,6 @@ find_package(Java 1.5 COMPONENTS Development) # javac, jar
 # Only build the java viewer if dev is found:
 if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
   set(jflags $ENV{JFLAGS})
-  # 1. opj_viewer
-  # build dep list:
-  file(GLOB java1_srcs "opj_viewer/src/*.java")
-
-  # make sure target javac dir exists:
-  file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes1)
-  # Build java
-  add_custom_command(
-    OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_viewer.jar
-    COMMAND ${Java_JAVAC_EXECUTABLE} ${jflags}
-    ${java1_srcs} -d ${CMAKE_CURRENT_BINARY_DIR}/classes1
-    COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_viewer.jar
-    ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt -C
-    ${CMAKE_CURRENT_BINARY_DIR}/classes1 .
-    DEPENDS ${java1_srcs}
-    ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt
-    COMMENT "javac *.java; jar cvf -> opj_viewer.jar"
-    )
-
-  # name the target
-  add_custom_target(OPJViewerJar ALL
-    DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_viewer.jar
-    COMMENT "building opj_viewer.jar"
-    )
-
-  install(FILES ${LIBRARY_OUTPUT_PATH}/opj_viewer.jar
-    DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
-    )
-
-  # 2. opj_viewer_xerces
   # search for package org.apache.xerces.parsers
   find_file(APACHE_XERCES_JAR
     NAMES xerces-j2.jar xercesImpl.jar
@@ -99,6 +70,7 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
     )
   mark_as_advanced(APACHE_XERCES_JAR)
 
+  # Decide to build the simple viewer or the xerces one:
   if(EXISTS ${APACHE_XERCES_JAR})
     configure_file(
       ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer_xerces/dist/manifest.txt.in
@@ -123,11 +95,11 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
     file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes2)
     # Build java
     add_custom_command(
-      OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_viewer_xerces.jar
+      OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
       COMMAND ${Java_JAVAC_EXECUTABLE} ${jflags}
       -classpath ${APACHE_XERCES_JAR}
       ${java2_srcs} -d ${CMAKE_CURRENT_BINARY_DIR}/classes2
-      COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_viewer_xerces.jar
+      COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
       ${CMAKE_CURRENT_BINARY_DIR}/opj_viewer_xerces/dist/manifest.txt
       -C ${CMAKE_CURRENT_BINARY_DIR}/classes2 .
       DEPENDS ${java2_srcs}
@@ -137,11 +109,40 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
 
     # name the target
     add_custom_target(OPJViewerXercesJar ALL
-      DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_viewer_xerces.jar
-      COMMENT "building opj_viewer_xerces.jar"
+      DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+      COMMENT "building opj_jpip_viewer.jar (xerces)"
+      )
+
+    install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+      DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
+      )
+  else()
+    # opj_viewer (simple, no xerces)
+    # build dep list:
+    file(GLOB java1_srcs "opj_viewer/src/*.java")
+
+    # make sure target javac dir exists:
+    file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes1)
+    # Build java
+    add_custom_command(
+      OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+      COMMAND ${Java_JAVAC_EXECUTABLE} ${jflags}
+      ${java1_srcs} -d ${CMAKE_CURRENT_BINARY_DIR}/classes1
+      COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+      ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt -C
+      ${CMAKE_CURRENT_BINARY_DIR}/classes1 .
+      DEPENDS ${java1_srcs}
+      ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt
+      COMMENT "javac *.java; jar cvf -> opj_jpip_viewer.jar"
+      )
+
+    # name the target
+    add_custom_target(OPJViewerJar ALL
+      DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+      COMMENT "building opj_jpip_viewer.jar (no xerces found)"
       )
 
-    install(FILES ${LIBRARY_OUTPUT_PATH}/opj_viewer_xerces.jar
+    install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
       DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
       )
   endif()