diff options
author | Kai Kang <kai.kang@windriver.com> | 2019-06-27 01:22:12 -0400 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2019-07-10 09:28:20 -0700 |
commit | 73550ce6a86887bdcf3520416675c52c6914440f (patch) | |
tree | 34ed6f2a973a03322aca2080160731f3fd32d21d | |
parent | ec273fe1e41e839592b11d61189e5777d2f821ca (diff) | |
download | meta-openembedded-contrib-73550ce6a86887bdcf3520416675c52c6914440f.tar.gz |
mozjs: fix configure failure on CentOS 7.6
Option '-std=gnu++14' has been supported from gcc 4.9. But on some build hosts
such as CentOS 7.6 which only has gcc 4.8.5 and fails to configure:
| checking whether the host C compiler can be used... no
| ERROR: Only GCC 4.9 or newer is supported (found version 4.8.5).
Fallback to 2011 C++ standard and lower required gcc version to 4.8.0 which is
the same as in previous version 52.9.1 of mozjs.
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | meta-oe/recipes-extended/mozjs/mozjs/fallback-to-2011-C++-standard.patch | 42 | ||||
-rw-r--r-- | meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb | 1 |
2 files changed, 43 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/mozjs/mozjs/fallback-to-2011-C++-standard.patch b/meta-oe/recipes-extended/mozjs/mozjs/fallback-to-2011-C++-standard.patch new file mode 100644 index 0000000000..7a0d286e14 --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs/fallback-to-2011-C++-standard.patch @@ -0,0 +1,42 @@ +Option '-std=gnu++14' has been supported from gcc 4.9. But on some build hosts +such as CentOS 7.6 which only has gcc 4.8.5 and fails to configure: + +| checking whether the host C compiler can be used... no +| ERROR: Only GCC 4.9 or newer is supported (found version 4.8.5). + +Fallback to 2011 C++ standard and lower required gcc version to 4.8.0 which is +the same as in previous version 52.9.1 of mozjs. + +Upstream-Status: Inappropriate [Workaround] + +Signed-off-by: Kai Kang <kai.kang@windriver.com> +--- +diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure +index 9c772a8..fc640c7 100755 +--- a/build/moz.configure/toolchain.configure ++++ b/build/moz.configure/toolchain.configure +@@ -502,10 +502,8 @@ def check_compiler(compiler, language, target): + append_flag('-std=c++14') + # GCC 4.9 indicates that it implements draft C++14 features + # instead of the full language. +- elif info.type == 'gcc' and \ +- info.language_version not in (draft_cxx14_version, +- cxx14_version): +- append_flag('-std=gnu++14') ++ elif info.type == 'gcc' and info.language_version != 201103: ++ append_flag('-std=gnu++11') + + # We force clang-cl to emulate Visual C++ 2017 version 15.4 + if info.type == 'clang-cl' and info.version != '19.11.25547': +@@ -903,9 +901,9 @@ def compiler(language, host_or_target, c_compiler=None, other_compiler=None, + # Check the compiler version here instead of in `compiler_version` so + # that the `checking` message doesn't pretend the compiler can be used + # to then bail out one line later. +- if info.type == 'gcc' and info.version < '4.9.0': ++ if info.type == 'gcc' and info.version < '4.8.0': + raise FatalCheckError( +- 'Only GCC 4.9 or newer is supported (found version %s).' ++ 'Only GCC 4.8 or newer is supported (found version %s).' + % info.version) + + if info.type == 'gcc' and host_or_target.os == 'Android': diff --git a/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb b/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb index 70bdbc1688..c89aba773a 100644 --- a/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb +++ b/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb @@ -17,6 +17,7 @@ SRC_URI = "https://dev.gentoo.org/~axs/distfiles/mozjs-60.5.2.tar.bz2 \ file://0001-To-fix-build-error-on-arm32BE.patch \ file://JS_PUBLIC_API.patch \ file://0001-riscv-Disable-atomic-operations.patch \ + file://fallback-to-2011-C++-standard.patch \ " SRC_URI_append_libc-musl = " \ file://0006-support-musl.patch \ |