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 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
52 if(${exe} STREQUAL "opj_jpip_compress")
55 ${PNG_INCLUDE_DIRNAME}
56 ${TIFF_INCLUDE_DIRNAME}
58 add_executable(${exe} ${exe}.c
59 ${OPENJPEG_SOURCE_DIR}/src/bin/common/opj_getopt.c
60 ${OPENJPEG_SOURCE_DIR}/src/bin/jp2/convert.c
62 target_link_libraries(${exe}
63 ${PNG_LIBNAME} ${TIFF_LIBNAME} ${LCMS_LIBNAME} ${Z_LIBNAME}
66 add_executable(${exe} ${exe}.c)
68 target_link_libraries(${exe} openjpip)
69 install(TARGETS ${exe}
70 EXPORT OpenJPEGTargets
71 DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
75 # Build the two java clients:
76 find_package(Java 1.5 COMPONENTS Development) # javac, jar
78 # Only build the java viewer if dev is found:
79 if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
80 set(jflags $ENV{JFLAGS})
81 # search for package org.apache.xerces.parsers
82 find_file(APACHE_XERCES_JAR
83 NAMES xerces-j2.jar xercesImpl.jar
84 PATHS /usr/share/java/
87 mark_as_advanced(APACHE_XERCES_JAR)
89 # Decide to build the simple viewer or the xerces one:
90 if(EXISTS ${APACHE_XERCES_JAR})
92 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer_xerces/dist/manifest.txt.in
93 ${CMAKE_CURRENT_BINARY_DIR}/opj_viewer_xerces/dist/manifest.txt
97 file(GLOB java2_srcs "opj_viewer_xerces/src/*.java")
99 # Need some common files:
100 list(APPEND java2_srcs
101 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/ImageManager.java
102 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/ImgdecClient.java
103 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/JPIPHttpClient.java
104 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/MML.java
105 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/PnmImage.java
106 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/RegimViewer.java
107 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/src/ResizeListener.java
110 # make sure target javac dir exists:
111 file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes2)
114 OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
115 COMMAND ${Java_JAVAC_EXECUTABLE} ${jflags}
116 -classpath ${APACHE_XERCES_JAR}
117 ${java2_srcs} -d ${CMAKE_CURRENT_BINARY_DIR}/classes2
118 COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
119 ${CMAKE_CURRENT_BINARY_DIR}/opj_viewer_xerces/dist/manifest.txt
120 -C ${CMAKE_CURRENT_BINARY_DIR}/classes2 .
121 DEPENDS ${java2_srcs}
122 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer_xerces/dist/manifest.txt.in
123 COMMENT "javac *.java; jar cvf -> opj_viewer_xerces.jar"
127 add_custom_target(OPJViewerXercesJar ALL
128 DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
129 COMMENT "building opj_jpip_viewer.jar (xerces)"
132 install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
133 DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
136 # opj_viewer (simple, no xerces)
138 file(GLOB java1_srcs "opj_viewer/src/*.java")
140 # make sure target javac dir exists:
141 file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes1)
144 OUTPUT ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
145 COMMAND ${Java_JAVAC_EXECUTABLE} ${jflags}
146 ${java1_srcs} -d ${CMAKE_CURRENT_BINARY_DIR}/classes1
147 COMMAND ${Java_JAR_EXECUTABLE} cfm ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
148 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt -C
149 ${CMAKE_CURRENT_BINARY_DIR}/classes1 .
150 DEPENDS ${java1_srcs}
151 ${CMAKE_CURRENT_SOURCE_DIR}/opj_viewer/dist/manifest.txt
152 COMMENT "javac *.java; jar cvf -> opj_jpip_viewer.jar"
156 add_custom_target(OPJViewerJar ALL
157 DEPENDS ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
158 COMMENT "building opj_jpip_viewer.jar (no xerces found)"
161 install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
162 DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
166 message(WARNING "No java compiler found. Wont be able to build java viewer")