diff options
author | Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> | 2017-09-07 10:51:36 +0200 |
---|---|---|
committer | Maxin B. John <maxin.john@intel.com> | 2017-09-26 18:16:38 +0300 |
commit | 858ef7ef84530695629465ad76d2708796ffb0f6 (patch) | |
tree | 77aa70a64c5ffb3cd29b1779ea2f2eed33386723 | |
parent | 2a706cd2d656a203ecb83bef1c687703c969732e (diff) | |
download | meta-java-858ef7ef84530695629465ad76d2708796ffb0f6.tar.gz |
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 <ricardo.ribalda@gmail.com>
Signed-off-by: Maxin B. John <maxin.john@intel.com>
-rw-r--r-- | recipes-core/openjdk/openjdk-8-common.inc | 7 |
1 files 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 = "\ | |||
218 | --with-update-version=${OPENJDK_UPDATE_VERSION} \ | 218 | --with-update-version=${OPENJDK_UPDATE_VERSION} \ |
219 | " | 219 | " |
220 | 220 | ||
221 | # GCC 6 sets the default C++ standard to C++14 and introduces dead store | 221 | # Since v6, GCC sets the default C++ standard to C++14 and introduces |
222 | # elimination by default. OpenJDK 8 is not ready for either of these | 222 | # dead store elimination by default. OpenJDK 8 is not ready for either |
223 | # changes. | 223 | # of these changes. |
224 | FLAGS_GCC6 = "-fno-lifetime-dse -fno-delete-null-pointer-checks" | 224 | FLAGS_GCC6 = "-fno-lifetime-dse -fno-delete-null-pointer-checks" |
225 | FLAGS_GCC7 = "-fno-lifetime-dse -fno-delete-null-pointer-checks" | ||
225 | 226 | ||
226 | # All supported cross compilers support the compiler flags that were | 227 | # All supported cross compilers support the compiler flags that were |
227 | # added to make compilation with gcc6 work. But the host compiler for | 228 | # added to make compilation with gcc6 work. But the host compiler for |