openbsd-ports/devel/cmake/patches/patch-Modules_FindJNI_cmake
rsadowski f1f88b40f8 Update CMake to 3.16.2
CMake 3.16 Release Notes: https://cmake.org/cmake/help/v3.16/release/3.16.html

Passed amd64 bulk build by naddy@, thanks!
2020-01-11 08:01:09 +00:00

121 lines
4.6 KiB
Plaintext

$OpenBSD: patch-Modules_FindJNI_cmake,v 1.25 2020/01/11 08:01:09 rsadowski Exp $
Index: Modules/FindJNI.cmake
--- Modules/FindJNI.cmake.orig
+++ Modules/FindJNI.cmake
@@ -45,6 +45,8 @@ The following cache variables are also available to se
the include path to jawt.h
#]=======================================================================]
+set(MODJAVA_VER $ENV{MODJAVA_VER})
+
# Expand {libarch} occurrences to java_libarch subdirectory(-ies) and set ${_var}
macro(java_append_library_directories _var)
# Determine java arch-specific library subdir
@@ -93,8 +95,10 @@ macro(java_append_library_directories _var)
# Append default list architectures if CMAKE_SYSTEM_PROCESSOR was empty or
# system is non-Linux (where the code above has not been well tested)
- if(NOT _java_libarch OR NOT (CMAKE_SYSTEM_NAME MATCHES "Linux"))
- list(APPEND _java_libarch "i386" "amd64" "ppc")
+ if(NOT MODJAVA_VER)
+ if(NOT _java_libarch OR NOT (CMAKE_SYSTEM_NAME MATCHES "Linux"))
+ list(APPEND _java_libarch "i386" "amd64" "ppc")
+ endif()
endif()
# Sometimes ${CMAKE_SYSTEM_PROCESSOR} is added to the list to prefer
@@ -130,17 +134,71 @@ if(_JAVA_HOME_EXPLICIT)
set(CMAKE_FIND_FRAMEWORK NEVER)
endif()
-set(JAVA_AWT_LIBRARY_DIRECTORIES)
-if(_JAVA_HOME)
+if(MODJAVA_VER)
+ set(JAVA_AWT_LIBRARY_DIRECTORIES)
JAVA_APPEND_LIBRARY_DIRECTORIES(JAVA_AWT_LIBRARY_DIRECTORIES
- ${_JAVA_HOME}/jre/lib/{libarch}
- ${_JAVA_HOME}/jre/lib
- ${_JAVA_HOME}/lib/{libarch}
- ${_JAVA_HOME}/lib
- ${_JAVA_HOME}
+ ${LOCALBASE}/jdk-1.8.0/jre/lib/{libarch}
+ ${LOCALBASE}/jre-1.8.0/lib/{libarch}
+ ${LOCALBASE}/jdk-11/jre/lib/{libarch}
+ ${LOCALBASE}/jre-11/lib/{libarch}
)
+else(MODJAVA_VER)
+ set(JAVA_AWT_LIBRARY_DIRECTORIES)
+ if(_JAVA_HOME)
+ JAVA_APPEND_LIBRARY_DIRECTORIES(JAVA_AWT_LIBRARY_DIRECTORIES
+ ${_JAVA_HOME}/jre/lib/{libarch}
+ ${_JAVA_HOME}/jre/lib
+ ${_JAVA_HOME}/lib/{libarch}
+ ${_JAVA_HOME}/lib
+ ${_JAVA_HOME}
+ )
endif()
+list(APPEND JAVA_AWT_LIBRARY_DIRECTORIES
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\JavaSoft\\Java Development Kit\\1.4;JavaHome]/lib"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\JavaSoft\\Java Development Kit\\1.3;JavaHome]/lib"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\JavaSoft\\Java Development Kit\\${java_install_version};JavaHome]/lib"
+ )
+JAVA_APPEND_LIBRARY_DIRECTORIES(JAVA_AWT_LIBRARY_DIRECTORIES
+ /usr/lib
+ /usr/local/lib
+ /usr/lib/jvm/java/lib
+ /usr/lib/java/jre/lib/{libarch}
+ /usr/lib/jvm/jre/lib/{libarch}
+ /usr/local/lib/java/jre/lib/{libarch}
+ /usr/local/share/java/jre/lib/{libarch}
+ /usr/lib/j2sdk1.4-sun/jre/lib/{libarch}
+ /usr/lib/j2sdk1.5-sun/jre/lib/{libarch}
+ /opt/sun-jdk-1.5.0.04/jre/lib/{libarch}
+ /usr/lib/jvm/java-6-sun/jre/lib/{libarch}
+ /usr/lib/jvm/java-1.5.0-sun/jre/lib/{libarch}
+ /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/{libarch} # can this one be removed ac
+ /usr/lib/jvm/java-6-openjdk/jre/lib/{libarch}
+ /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/{libarch} # fedora
+ # Debian specific paths for default JVM
+ /usr/lib/jvm/default-java/jre/lib/{libarch}
+ /usr/lib/jvm/default-java/jre/lib
+ /usr/lib/jvm/default-java/lib
+ # Arch Linux specific paths for default JVM
+ /usr/lib/jvm/default/jre/lib/{libarch}
+ /usr/lib/jvm/default/lib/{libarch}
+ # Ubuntu specific paths for default JVM
+ /usr/lib/jvm/java-8-openjdk-{libarch}/jre/lib/{libarch} # Ubuntu 15.10
+ /usr/lib/jvm/java-7-openjdk-{libarch}/jre/lib/{libarch} # Ubuntu 15.10
+ /usr/lib/jvm/java-6-openjdk-{libarch}/jre/lib/{libarch} # Ubuntu 15.10
+ # OpenBSD specific paths for default JVM
+ ${LOCALBASE}/jdk-1.8.0/jre/lib/{libarch}
+ ${LOCALBASE}/jre-1.8.0/lib/{libarch}
+ ${LOCALBASE}/jdk-11/jre/lib/{libarch}
+ ${LOCALBASE}/jre-11/lib/{libarch}
+ # SuSE specific paths for default JVM
+ /usr/lib64/jvm/java/jre/lib/{libarch}
+ /usr/lib64/jvm/jre/lib/{libarch}
+ )
+endif(MODJAVA_VER)
+get_filename_component(java_install_version
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\JavaSoft\\Java Development Kit;CurrentVersion]" NAME)
+
if (WIN32)
set (_JNI_HINTS)
execute_process(COMMAND REG QUERY HKLM\\SOFTWARE\\JavaSoft\\JDK
@@ -209,10 +267,10 @@ set(_JNI_JAVA_DIRECTORIES_BASE
/usr/lib/jvm/java-7-openjdk-{libarch} # Ubuntu 15.10
/usr/lib/jvm/java-6-openjdk-{libarch} # Ubuntu 15.10
# OpenBSD specific paths for default JVM
- /usr/local/jdk-1.7.0
- /usr/local/jre-1.7.0
- /usr/local/jdk-1.6.0
- /usr/local/jre-1.6.0
+ ${LOCALBASE}/jdk-1.8.0
+ ${LOCALBASE}/jre-1.8.0
+ ${LOCALBASE}/jdk-11
+ ${LOCALBASE}/jre-11
# SuSE specific paths for default JVM
/usr/lib64/jvm/java
/usr/lib64/jvm/jre