From: Richard Purdie Date: Sat, 12 Mar 2016 08:57:07 +0000 (+0000) Subject: uninative: Add a fix for icu-native to use the correct ABI X-Git-Tag: 2016-4~433 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=ac59063bee0e32d0737340974f657341717a6abe;p=openembedded-core.git 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. Signed-off-by: Richard Purdie --- 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"