summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Oyarzun <co@oyarzun.net>2023-08-06 17:50:05 (GMT)
committerBrad King <brad.king@kitware.com>2023-08-07 20:09:22 (GMT)
commitefa0e2ddafe48ef0921b31aef37c3187a7bb6b97 (patch)
treedb156182eba7b1520824fae62fc8f9f9de47f60d
parentcbcd2978268a31fde7e9893dd0da13659dadd166 (diff)
downloadCMake-efa0e2ddafe48ef0921b31aef37c3187a7bb6b97.zip
CMake-efa0e2ddafe48ef0921b31aef37c3187a7bb6b97.tar.gz
CMake-efa0e2ddafe48ef0921b31aef37c3187a7bb6b97.tar.bz2
FindJNI: Update for Xcode greater than 12.1 on macOS
`JavaVM.framework` was removed from Xcode in version 12.2+. Fixes: #23364
-rw-r--r--Modules/FindJNI.cmake17
1 files changed, 17 insertions, 0 deletions
diff --git a/Modules/FindJNI.cmake b/Modules/FindJNI.cmake
index 27f9b0e..c6d7b09 100644
--- a/Modules/FindJNI.cmake
+++ b/Modules/FindJNI.cmake
@@ -383,6 +383,23 @@ foreach(JAVA_PROG "${JAVA_RUNTIME}" "${JAVA_COMPILE}" "${JAVA_ARCHIVE}")
endforeach()
if(APPLE)
+ if(DEFINED XCODE_VERSION)
+ set(_FindJNI_XCODE_VERSION "${XCODE_VERSION}")
+ else()
+ # get xcode version
+ execute_process(
+ COMMAND xcodebuild -version
+ OUTPUT_VARIABLE _xcode_version
+ )
+ string(REGEX REPLACE "Xcode ([0-9]+(\\.[0-9]+)*)" "\\1" _FindJNI_XCODE_VERSION ${_xcode_version})
+ unset(_xcode_version)
+ endif()
+
+ if(_FindJNI_XCODE_VERSION VERSION_GREATER 12.1)
+ set(CMAKE_FIND_FRAMEWORK "NEVER")
+ endif()
+ unset(_FindJNI_XCODE_VERSION)
+
if(CMAKE_FIND_FRAMEWORK STREQUAL "ONLY")
set(_JNI_SEARCHES FRAMEWORK)
elseif(CMAKE_FIND_FRAMEWORK STREQUAL "NEVER")