to build MODJAVA_VER=1.6+ ports, and CMake should do the same. Otherwise we could, e.g., pick up co-installed JDK 1.7, start build using it, and while build process goes, JDK 1.7 may disappear... Discovered while working on OpenCV 2.4, which contains Java bindings. okay dcoppa@
56 lines
1.7 KiB
Plaintext
56 lines
1.7 KiB
Plaintext
$OpenBSD: patch-Modules_FindJava_cmake,v 1.12 2013/08/12 16:09:50 zhuk Exp $
|
|
Note: we always build with Java 1.6 even when 1.6+ requested; "+" is meaningful
|
|
for run-time only.
|
|
--- Modules/FindJava.cmake.orig Fri Jun 7 19:21:34 2013
|
|
+++ Modules/FindJava.cmake Sat Jul 27 21:48:06 2013
|
|
@@ -56,6 +56,8 @@
|
|
# (To distribute this file outside of CMake, substitute the full
|
|
# License text for the above reference.)
|
|
|
|
+set(MODJAVA_VER $ENV{MODJAVA_VER})
|
|
+
|
|
# The HINTS option should only be used for values computed from the system.
|
|
set(_JAVA_HINTS
|
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\JavaSoft\\Java Development Kit\\2.0;JavaHome]/bin"
|
|
@@ -70,19 +72,27 @@ set(_JAVA_HINTS
|
|
)
|
|
# Hard-coded guesses should still go in PATHS. This ensures that the user
|
|
# environment can always override hard guesses.
|
|
-set(_JAVA_PATHS
|
|
- /usr/lib/java/bin
|
|
- /usr/share/java/bin
|
|
- /usr/local/java/bin
|
|
- /usr/local/java/share/bin
|
|
- /usr/java/j2sdk1.4.2_04
|
|
- /usr/lib/j2sdk1.4-sun/bin
|
|
- /usr/java/j2sdk1.4.2_09/bin
|
|
- /usr/lib/j2sdk1.5-sun/bin
|
|
- /opt/sun-jdk-1.5.0.04/bin
|
|
- /usr/local/jdk-1.7.0/bin
|
|
- /usr/local/jdk-1.6.0/bin
|
|
- )
|
|
+if(MODJAVA_VER)
|
|
+ if(MODJAVA_VER MATCHES "^1\\.6\\+?$")
|
|
+ set(_JAVA_PATHS ${LOCALBASE}/jdk-1.6.0/bin)
|
|
+ else()
|
|
+ set(_JAVA_PATHS ${LOCALBASE}/jdk-1.7.0/bin)
|
|
+ endif()
|
|
+else()
|
|
+ set(_JAVA_PATHS
|
|
+ /usr/lib/java/bin
|
|
+ /usr/share/java/bin
|
|
+ /usr/local/java/bin
|
|
+ /usr/local/java/share/bin
|
|
+ /usr/java/j2sdk1.4.2_04
|
|
+ /usr/lib/j2sdk1.4-sun/bin
|
|
+ /usr/java/j2sdk1.4.2_09/bin
|
|
+ /usr/lib/j2sdk1.5-sun/bin
|
|
+ /opt/sun-jdk-1.5.0.04/bin
|
|
+ ${LOCALBASE}/jdk-1.7.0/bin
|
|
+ ${LOCALBASE}/jdk-1.6.0/bin
|
|
+ )
|
|
+endif()
|
|
find_program(Java_JAVA_EXECUTABLE
|
|
NAMES java
|
|
HINTS ${_JAVA_HINTS}
|