1 # Headers file are located here:
3 ${OPENJPEG_BINARY_DIR}/src/lib/openjp2 # opj_config.h
4 ${OPENJPEG_SOURCE_DIR}/src/lib/openjp2
5 ${OPENJPEG_SOURCE_DIR}/src/bin/common # opj_getopt.h
6 ${OPENJPEG_SOURCE_DIR}/src/bin/jp2 # convert.h
7 ${OPENJPEG_SOURCE_DIR}/src/lib/openjpip
11 # Tool to embed metadata into JP2 file
12 add_executable(opj_jpip_addxml opj_jpip_addxml.c)
14 install(TARGETS opj_jpip_addxml
15 EXPORT OpenJPEGTargets
16 DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
21 ${CMAKE_CURRENT_SOURCE_DIR}/opj_server.c
25 add_executable(opj_server ${OPJ_SERVER_SRCS})
26 target_link_libraries(opj_server ${FCGI_LIBRARIES} openjpip_server)
30 COMPILE_DEFINITIONS SERVER QUIT_SIGNAL="quitJPIP"
33 # On unix you need to link to the math library:
35 target_link_libraries(opj_server m)
39 install(TARGETS opj_server
40 EXPORT OpenJPEGTargets
41 DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
51 add_executable(${exe} ${exe}.c)
52 target_link_libraries(${exe} openjpip)
53 install(TARGETS ${exe}
54 EXPORT OpenJPEGTargets
55 DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
59 # Build the two java clients:
60 find_package(Java 1.6 COMPONENTS Development) # javac, jar
62 # User can override this:
63 if(NOT DEFINED JAVA_SOURCE_VERSION)
64 set(JAVA_SOURCE_VERSION 1.6)
66 if(NOT DEFINED JAVA_TARGET_VERSION)
67 set(JAVA_TARGET_VERSION 1.6)
70 # Only build the java viewer if dev is found:
71 if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
72 set(jflags $ENV{JFLAGS})
73 # search for package org.apache.xerces.parsers
74 find_file(APACHE_XERCES_JAR
75 NAMES xerces-j2.jar xercesImpl.jar
76 PATHS /usr/share/java/
79 mark_as_advanced(APACHE_XERCES_JAR)
81 # Decide to build the simple viewer or the xerces one:
82 if(EXISTS ${APACHE_XERCES_JAR})
84 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer_xerces/dist/manifest.txt.in
85 ${CMAKE_CURRENT_BINARY_DIR}/opj_viewer_xerces/dist/manifest.txt
89 file(GLOB java2_srcs "opj_viewer_xerces/src/*.java")
91 # Need some common files:
92 list(APPEND java2_srcs
93 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/ImageManager.java
94 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/ImgdecClient.java
95 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/JPIPHttpClient.java
96 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/MML.java
97 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/PnmImage.java
98 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/RegimViewer.java
99 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/ResizeListener.java
102 # make sure target javac dir exists:
103 file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes2)
106 OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
107 COMMAND ${Java_JAVAC_EXECUTABLE} ${jflags}
108 -source ${JAVA_SOURCE_VERSION} -target ${JAVA_TARGET_VERSION}
109 -classpath ${APACHE_XERCES_JAR}
110 ${java2_srcs} -d ${CMAKE_CURRENT_BINARY_DIR}/classes2
111 COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
112 ${CMAKE_CURRENT_BINARY_DIR}/opj_viewer_xerces/dist/manifest.txt
113 -C ${CMAKE_CURRENT_BINARY_DIR}/classes2 .
114 DEPENDS ${java2_srcs}
115 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer_xerces/dist/manifest.txt.in
116 COMMENT "javac *.java; jar cvf -> opj_viewer_xerces.jar"
120 add_custom_target(OPJViewerXercesJar ALL
121 DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
122 COMMENT "building opj_jpip_viewer.jar (xerces)"
125 install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
126 DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
129 # opj_viewer (simple, no xerces)
131 file(GLOB java1_srcs "opj_viewer/src/*.java")
133 # make sure target javac dir exists:
134 file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes1)
137 OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
138 COMMAND ${Java_JAVAC_EXECUTABLE} ${jflags}
139 -source ${JAVA_SOURCE_VERSION} -target ${JAVA_TARGET_VERSION}
140 ${java1_srcs} -d ${CMAKE_CURRENT_BINARY_DIR}/classes1
141 COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
142 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt -C
143 ${CMAKE_CURRENT_BINARY_DIR}/classes1 .
144 DEPENDS ${java1_srcs}
145 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt
146 COMMENT "javac *.java; jar cvf -> opj_jpip_viewer.jar"
150 add_custom_target(OPJViewerJar ALL
151 DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
152 COMMENT "building opj_jpip_viewer.jar (no xerces found)"
155 install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
156 DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
160 message(WARNING "No java compiler found. Won't be able to build java viewer")