summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2016-03-12 08:57:07 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-03-12 22:11:48 +0000
commit637b3c82597e5c021170e9e835420f10497e26e0 (patch)
tree534260dafef1cb12360025a1e928a2c090c14ad4
parent9dbfbe994063e2a3ec2baacce0e57b5e5fbea253 (diff)
downloadopenembedded-core-contrib-637b3c82597e5c021170e9e835420f10497e26e0.tar.gz
openembedded-core-contrib-637b3c82597e5c021170e9e835420f10497e26e0.tar.bz2
openembedded-core-contrib-637b3c82597e5c021170e9e835420f10497e26e0.zip
uninative: Add a fix for icu-native to use the correct ABI
If no -std= option is passed to icu's configure, it defaults to CXX11. This isn't what we want for uninative, so pass an explicit option which selects an older ABI on newer versions of g++. This avoids the __cxa_bad_array_new_length@CXXABI_1.3.8 symbol being used. (From OE-Core rev: ac59063bee0e32d0737340974f657341717a6abe) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/uninative.bbclass5
1 files changed, 5 insertions, 0 deletions
diff --git a/meta/classes/uninative.bbclass b/meta/classes/uninative.bbclass
index 810e105097..d3208e71a9 100644
--- a/meta/classes/uninative.bbclass
+++ b/meta/classes/uninative.bbclass
@@ -13,6 +13,11 @@ UNINATIVE_DLDIR ?= "${DL_DIR}/uninative/"
# 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"