summaryrefslogtreecommitdiffstats
path: root/debian/patches/update-java-source-target-flags.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/update-java-source-target-flags.patch')
-rw-r--r--debian/patches/update-java-source-target-flags.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/debian/patches/update-java-source-target-flags.patch b/debian/patches/update-java-source-target-flags.patch
new file mode 100644
index 000000000..6c8b79228
--- /dev/null
+++ b/debian/patches/update-java-source-target-flags.patch
@@ -0,0 +1,23 @@
+Description: use --release 7 instead of -source/-target
+ Instead of -source/-target ceph should be build with --release for OpenJDK 9
+ or later so that the bootclasspath is also set, as per JEP-247, otherwise it
+ risks incurring into binary incompatibility when run with an earlier OpenJDK.
+ OpenJDK 11 minimum compatibility release has been updated to 7.
+Author: Tiago Stürmer Daitx <tiago.daitx@ubuntu.com>
+Bug-Ubuntu: https://launchpad.net/bugs/1756854
+Bug-Ubuntu: https://launchpad.net/bugs/1766998
+Forwarded: no
+Last-Update: 2018-04-24
+---
+
+--- a/src/java/CMakeLists.txt
++++ b/src/java/CMakeLists.txt
+@@ -21,7 +21,7 @@ set(java_srcs
+ # warning: [options] bootstrap class path not set in conjunction with -source 1.7
+ # as per
+ # https://blogs.oracle.com/darcy/entry/bootclasspath_older_source
+-set(CMAKE_JAVA_COMPILE_FLAGS "-source" "1.8" "-target" "1.8" "-Xlint:-options")
++set(CMAKE_JAVA_COMPILE_FLAGS "--release" "7" "-Xlint:-options")
+ set(jni_header_dir "${CMAKE_CURRENT_BINARY_DIR}/native")
+ if(CMAKE_VERSION VERSION_LESS 3.11)
+ set(CMAKE_JAVA_COMPILE_FLAGS ${CMAKE_JAVA_COMPILE_FLAGS} "-h" ${jni_header_dir})