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.
This commit is contained in:
parent
06b5eaa3cf
commit
c8f39193e0
|
@ -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")
|
||||
|
|
Loading…
Reference in New Issue