diff options
author | David Cole <david.cole@kitware.com> | 2010-10-25 19:03:36 (GMT) |
---|---|---|
committer | David Cole <david.cole@kitware.com> | 2010-10-25 19:03:36 (GMT) |
commit | c8f39193e01e15a13a37ca227f02a2e4472f3d8a (patch) | |
tree | ed66e580efd8e6d66492c15fd1aa26a4efdca95c /Tests | |
parent | 06b5eaa3cf7dc534415473eb1f3bfef191008999 (diff) | |
download | CMake-c8f39193e01e15a13a37ca227f02a2e4472f3d8a.zip CMake-c8f39193e01e15a13a37ca227f02a2e4472f3d8a.tar.gz CMake-c8f39193e01e15a13a37ca227f02a2e4472f3d8a.tar.bz2 |
Avoid problem reading jni.h on Macs.
Apple released an update recently in which there
was a broken symlink for jni.h that pointed to
a non-existent file. CMake had trouble configuring
because it encountered an error trying to read
jni.h.
We avoid the problem here by introducing a variable
CTEST_RUN_Java, which defaults to OFF on Macs, that
indicates whether to even attempt finding java, reading
jni.h and adding the "Java" CMake test.
If you would like to test Java on a Mac where the
jni.h symlink is not busted, feel free to pass in
-DCTEST_RUN_Java:BOOL=ON when configuring CMake.
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/CMakeLists.txt | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index c056e86..d618ab4 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1635,7 +1635,15 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/ ENDIF() ENDIF() - IF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode") + if(NOT DEFINED CTEST_RUN_Java) + if(APPLE) + set(CTEST_RUN_Java OFF) + else() + set(CTEST_RUN_Java ON) + endif() + endif() + + IF(CTEST_RUN_Java) find_package(Java QUIET) IF(JAVA_COMPILE AND JAVA_RUNTIME AND JAVA_ARCHIVE AND NOT MINGW) GET_FILENAME_COMPONENT(JNIPATH ${JAVA_COMPILE} PATH) @@ -1659,7 +1667,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/ ENDIF("${JNI_FILE}" MATCHES "JDK1_2") ENDIF(JNI_H) ENDIF(JAVA_COMPILE AND JAVA_RUNTIME AND JAVA_ARCHIVE AND NOT MINGW) - ENDIF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode") + ENDIF(CTEST_RUN_Java) # add some cross compiler tests, for now only with makefile based generators IF(CMAKE_TEST_GENERATOR MATCHES "Makefiles" OR CMAKE_TEST_GENERATOR MATCHES "KDevelop") |