From 858ef7ef84530695629465ad76d2708796ffb0f6 Mon Sep 17 00:00:00 2001 From: Ricardo Ribalda Delgado Date: Thu, 7 Sep 2017 10:51:36 +0200 Subject: openjdk-8-native: Fix sigsegv with gcc7 OpenJDK does not build properly with GCC7. Add the same workaround that we have for GCC6. Without this patch: | # | # A fatal error has been detected by the Java Runtime Environment: | # | # SIGSEGV (0xb) at pc=0x00007fcad0efcd5b, pid=17206, tid=0x00007fcab264c700 | # | # JRE version: OpenJDK Runtime Environment (8.0_102-b14) (build 1.8.0_102-internal-b14) | # Java VM: OpenJDK 64-Bit Server VM (25.102-b14 mixed mode linux-amd64 compressed oops) | # Problematic frame: | # V [libjvm.so+0x78bd5b] Node::Node(unsigned int)+0x2b | # | # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again | # | # An error report file with more information is saved as: | # /home/ricardo/curro/qt5022/build-qt5022-pyro/build/tmp/work/x86_64-linux/openjdk-8-native/102b14-r0/build/hs_err_pid17206.log | [thread 140508549912320 also had an error] | | [error occurred during error reporting , id 0xb] | | # | # If you would like to submit a bug report, please visit: | # http://bugreport.java.com/bugreport/crash.jsp | # Signed-off-by: Ricardo Ribalda Delgado Signed-off-by: Maxin B. John --- recipes-core/openjdk/openjdk-8-common.inc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/recipes-core/openjdk/openjdk-8-common.inc b/recipes-core/openjdk/openjdk-8-common.inc index def779d..0c5c2c3 100644 --- a/recipes-core/openjdk/openjdk-8-common.inc +++ b/recipes-core/openjdk/openjdk-8-common.inc @@ -218,10 +218,11 @@ EXTRA_OECONF_append = "\ --with-update-version=${OPENJDK_UPDATE_VERSION} \ " -# GCC 6 sets the default C++ standard to C++14 and introduces dead store -# elimination by default. OpenJDK 8 is not ready for either of these -# changes. +# Since v6, GCC sets the default C++ standard to C++14 and introduces +# dead store elimination by default. OpenJDK 8 is not ready for either +# of these changes. FLAGS_GCC6 = "-fno-lifetime-dse -fno-delete-null-pointer-checks" +FLAGS_GCC7 = "-fno-lifetime-dse -fno-delete-null-pointer-checks" # All supported cross compilers support the compiler flags that were # added to make compilation with gcc6 work. But the host compiler for -- cgit v1.2.3-54-g00ecf