[oe-commits] [openembedded-core] 01/02: conf: add C++ flags for uninative interoperatility

git at git.openembedded.org git at git.openembedded.org
Mon Nov 28 15:49:47 UTC 2016


rpurdie pushed a commit to branch master
in repository openembedded-core.

commit 60c912ae9306532bdd4c5e09a65863ee77c12f43
Author: Ross Burton <ross.burton at intel.com>
AuthorDate: Tue Nov 22 17:41:43 2016 +0000

    conf: add C++ flags for uninative interoperatility
    
    Create a common include file for compiler flags which allow native binaries to
    be interoperable on a wide range of hosts. In particular the C++ ABI is
    problematic so choose the CXX11 version to allow interoperation between gcc4 and
    gcc5 based hosts. Moving this to a common include instead of uninative.bbclass
    allows uninative to be configured later and used in the eSDK (where its
    mandatory) even if the base configuration doesn't enable uninative by default
    (e.g. nodistro in OE-Core).
    
    [ YOCTO #10645 ]
    
    Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/classes/uninative.bbclass               | 11 -----------
 meta/conf/distro/defaultsetup.conf           |  3 ++-
 meta/conf/distro/include/uninative-flags.inc |  9 +++++++++
 3 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/meta/classes/uninative.bbclass b/meta/classes/uninative.bbclass
index 89cec07..9242320 100644
--- a/meta/classes/uninative.bbclass
+++ b/meta/classes/uninative.bbclass
@@ -7,17 +7,6 @@ UNINATIVE_TARBALL ?= "${BUILD_ARCH}-nativesdk-libc.tar.bz2"
 #UNINATIVE_CHECKSUM[x86_64] = "dead"
 UNINATIVE_DLDIR ?= "${DL_DIR}/uninative/"
 
-# https://wiki.debian.org/GCC5
-# We may see binaries built with gcc5 run or linked into gcc4 environment
-# so use the older libstdc++ standard for now until we don't support gcc4
-# on the host system.
-BUILD_CXXFLAGS_append = " -D_GLIBCXX_USE_CXX11_ABI=0"
-
-#
-# icu configure defaults to CXX11 if no -std= option is passed in CXXFLAGS
-# therefore pass one
-BUILD_CXXFLAGS_append_pn-icu-native = " -std=c++98"
-
 addhandler uninative_event_fetchloader
 uninative_event_fetchloader[eventmask] = "bb.event.BuildStarted"
 
diff --git a/meta/conf/distro/defaultsetup.conf b/meta/conf/distro/defaultsetup.conf
index 71c65b1..aa21345 100644
--- a/meta/conf/distro/defaultsetup.conf
+++ b/meta/conf/distro/defaultsetup.conf
@@ -9,6 +9,8 @@ require conf/distro/include/tcmode-${TCMODE}.inc
 TCLIBC ?= "glibc"
 require conf/distro/include/tclibc-${TCLIBC}.inc
 
+require conf/distro/include/uninative-flags.inc
+
 # Allow single libc distros to disable this code
 TCLIBCAPPEND ?= "-${TCLIBC}"
 TMPDIR .= "${TCLIBCAPPEND}"
@@ -20,4 +22,3 @@ PACKAGE_CLASSES ?= "package_ipk"
 INHERIT_BLACKLIST = "blacklist"
 INHERIT_DISTRO ?= "debian devshell sstate license"
 INHERIT += "${PACKAGE_CLASSES} ${USER_CLASSES} ${INHERIT_DISTRO} ${INHERIT_BLACKLIST}"
-
diff --git a/meta/conf/distro/include/uninative-flags.inc b/meta/conf/distro/include/uninative-flags.inc
new file mode 100644
index 0000000..e9f82c3
--- /dev/null
+++ b/meta/conf/distro/include/uninative-flags.inc
@@ -0,0 +1,9 @@
+# https://wiki.debian.org/GCC5
+# We may see binaries built with gcc5 run or linked into gcc4 environment
+# so use the older libstdc++ standard for now until we don't support gcc4
+# on the host system.
+BUILD_CXXFLAGS_append = " -D_GLIBCXX_USE_CXX11_ABI=0"
+
+# icu configure defaults to CXX11 if no -std= option is passed in CXXFLAGS
+# therefore pass one
+BUILD_CXXFLAGS_append_pn-icu-native = " -std=c++98"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list