DRC | 957d623 | 2011-04-01 11:13:11 +0000 | [diff] [blame] | 1 | set(JAR_FILE turbojpeg.jar) |
| 2 | set(MANIFEST_FILE ${CMAKE_CURRENT_SOURCE_DIR}/MANIFEST.MF) |
| 3 | |
| 4 | set(JAVA_CLASSNAMES org/libjpegturbo/turbojpeg/TJ |
| 5 | org/libjpegturbo/turbojpeg/TJCompressor |
DRC | 6b968b2 | 2011-09-20 05:35:31 +0000 | [diff] [blame] | 6 | org/libjpegturbo/turbojpeg/TJCustomFilter |
DRC | 957d623 | 2011-04-01 11:13:11 +0000 | [diff] [blame] | 7 | org/libjpegturbo/turbojpeg/TJDecompressor |
DRC | b2f9415 | 2011-04-02 02:09:03 +0000 | [diff] [blame] | 8 | org/libjpegturbo/turbojpeg/TJScalingFactor |
DRC | 957d623 | 2011-04-01 11:13:11 +0000 | [diff] [blame] | 9 | org/libjpegturbo/turbojpeg/TJTransform |
| 10 | org/libjpegturbo/turbojpeg/TJTransformer |
| 11 | TJUnitTest |
| 12 | TJExample) |
| 13 | |
| 14 | if(MSVC_IDE) |
| 15 | set(OBJDIR "${CMAKE_CURRENT_BINARY_DIR}/$(OutDir)") |
| 16 | else() |
| 17 | set(OBJDIR ${CMAKE_CURRENT_BINARY_DIR}) |
| 18 | endif() |
| 19 | |
DRC | b2f9415 | 2011-04-02 02:09:03 +0000 | [diff] [blame] | 20 | set(TURBOJPEG_DLL_NAME "turbojpeg") |
| 21 | if(MINGW) |
| 22 | set(TURBOJPEG_DLL_NAME "libturbojpeg") |
| 23 | endif() |
| 24 | configure_file(org/libjpegturbo/turbojpeg/TJLoader.java.in |
| 25 | ${CMAKE_CURRENT_BINARY_DIR}/org/libjpegturbo/turbojpeg/TJLoader.java) |
| 26 | |
DRC | 957d623 | 2011-04-01 11:13:11 +0000 | [diff] [blame] | 27 | set(JAVA_SOURCES "") |
| 28 | set(JAVA_CLASSES "") |
| 29 | set(JAVA_CLASSES_FULL "") |
| 30 | foreach(class ${JAVA_CLASSNAMES}) |
| 31 | set(JAVA_SOURCES ${JAVA_SOURCES} ${CMAKE_CURRENT_SOURCE_DIR}/${class}.java) |
| 32 | set(JAVA_CLASSES ${JAVA_CLASSES} ${class}.class) |
| 33 | set(JAVA_CLASSES_FULL ${JAVA_CLASSES_FULL} ${OBJDIR}/${class}.class) |
| 34 | endforeach() |
| 35 | |
DRC | b2f9415 | 2011-04-02 02:09:03 +0000 | [diff] [blame] | 36 | set(JAVA_SOURCES ${JAVA_SOURCES} |
| 37 | ${CMAKE_CURRENT_BINARY_DIR}/org/libjpegturbo/turbojpeg/TJLoader.java) |
| 38 | set(JAVA_CLASSES ${JAVA_CLASSES} |
| 39 | org/libjpegturbo/turbojpeg/TJLoader.class) |
| 40 | set(JAVA_CLASSES_FULL ${JAVA_CLASSES_FULL} |
| 41 | ${OBJDIR}/org/libjpegturbo/turbojpeg/TJLoader.class) |
DRC | 957d623 | 2011-04-01 11:13:11 +0000 | [diff] [blame] | 42 | |
DRC | db42506 | 2011-04-03 06:10:18 +0000 | [diff] [blame] | 43 | string(REGEX REPLACE " " ";" JAVACFLAGS "${JAVACFLAGS}") |
DRC | 957d623 | 2011-04-01 11:13:11 +0000 | [diff] [blame] | 44 | add_custom_command(OUTPUT ${JAVA_CLASSES_FULL} DEPENDS ${JAVA_SOURCES} |
DRC | db42506 | 2011-04-03 06:10:18 +0000 | [diff] [blame] | 45 | COMMAND ${JAVA_COMPILE} ARGS ${JAVACFLAGS} -d ${OBJDIR} ${JAVA_SOURCES}) |
DRC | 957d623 | 2011-04-01 11:13:11 +0000 | [diff] [blame] | 46 | |
| 47 | add_custom_command(OUTPUT ${JAR_FILE} DEPENDS ${JAVA_CLASSES_FULL} |
| 48 | ${MANIFEST_FILE} |
| 49 | COMMAND ${JAVA_ARCHIVE} cfm ${JAR_FILE} ${MANIFEST_FILE} ${JAVA_CLASSES} |
| 50 | WORKING_DIRECTORY ${OBJDIR}) |
| 51 | |
| 52 | add_custom_target(java ALL DEPENDS ${JAR_FILE}) |
| 53 | |
| 54 | install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${JAR_FILE} DESTINATION classes) |