Merge pull request #1518 from dg0yt/static-windows
[openjpeg.git] / wrapping / java / openjp2 / CMakeLists.txt
index c0566eab5cfbc7852559abdbad618e937abb189c..b178d2cf8265540939bae86aa33aeb095f63ca05 100644 (file)
@@ -4,6 +4,9 @@
 set(openjpegjni_SRCS
   JavaOpenJPEGDecoder.c
   JavaOpenJPEG.c
+  ${OPENJPEG_SOURCE_DIR}/src/bin/common/opj_getopt.c
+  ${OPENJPEG_SOURCE_DIR}/src/bin/jp2/convert.c
+  index.c
   )
 
 # JNI binding:
@@ -13,7 +16,7 @@ include_directories(${JNI_INCLUDE_DIRS})
 # required header file:
 include_directories(
   ${OPENJPEG_BINARY_DIR}/src/lib/openjp2 # opj_config.h
-  ${OPENJPEG_SOURCE_DIR}/src/lib/openjp2
+  ${OPENJPEG_SOURCE_DIR}/src/lib/openmj2
   ${OPENJPEG_SOURCE_DIR}/src/bin/common
   ${OPENJPEG_SOURCE_DIR}/src/bin/jp2
   )
@@ -21,9 +24,24 @@ include_directories(
 add_library(openjpegjni MODULE
   ${openjpegjni_SRCS}
   )
+# Java module should not have a SONAME:
+set_property(TARGET openjpegjni PROPERTY NO_SONAME 1)
+
+# FIXME (need to use old API):
+target_link_libraries(openjpegjni
+  ${PNG_LIBNAME} ${TIFF_LIBNAME} ${LCMS_LIBNAME} ${Z_LIBNAME}
+)
+if(UNIX)
+  target_link_libraries(openjpegjni m)
+endif()
+
+install(TARGETS openjpegjni
+  EXPORT OpenJPEGTargets
+  LIBRARY DESTINATION ${OPENJPEG_INSTALL_JNI_DIR} COMPONENT Libraries
+)
 
 # build jar:
-find_package(Java 1.5 REQUIRED) # javac, jar
+find_package(Java 1.6 REQUIRED) # javac, jar
 
 # build dep list:
 file(GLOB java_srcs "java-sources/org/openJpeg/*.java")
@@ -46,3 +64,7 @@ add_custom_target(OpenJPEGJavaJar ALL
   DEPENDS ${LIBRARY_OUTPUT_PATH}/openjpeg.jar
   COMMENT "building openjpeg.jar"
 )
+
+install(FILES ${LIBRARY_OUTPUT_PATH}/openjpeg.jar
+  DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+)