summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2016-05-11 10:35:31 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-05-13 13:40:52 +0100
commitd774bb2d10f2c05900f87dcc53f073433ca02121 (patch)
tree2d79c855f09ffdfa5c0bd70c3fd7a616c559122a
parent21d8d60b2bfb205dcb5d304119d4dbd627db7163 (diff)
downloadopenembedded-core-d774bb2d10f2c05900f87dcc53f073433ca02121.tar.gz
libgcc: Ensure that gcc configure options are passed to libgcc too
libgcc uses certain options from EXTRA_OECONF as well, curently we are ignoring them, as a result we do not configure libgcc to match cross gcc in some cases e.g. ppc/musl should have used 64bit long doubles but it went for 128-ldbls which is default, works on glibc but not on musl Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/gcc/gcc-common.inc2
-rw-r--r--meta/recipes-devtools/gcc/libgcc-common.inc7
2 files changed, 9 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-common.inc b/meta/recipes-devtools/gcc/gcc-common.inc
index e4fd4d6f70..f540b4d965 100644
--- a/meta/recipes-devtools/gcc/gcc-common.inc
+++ b/meta/recipes-devtools/gcc/gcc-common.inc
@@ -33,6 +33,8 @@ def get_gcc_ppc_plt_settings(bb, d):
def get_long_double_setting(bb, d):
if d.getVar('TRANSLATED_TARGET_ARCH', True) in [ 'powerpc', 'powerpc64' ] and d.getVar('TCLIBC', True) in [ 'uclibc', 'glibc' ]:
return "--with-long-double-128"
+ else:
+ return "--without-long-double-128"
return ""
def get_gcc_multiarch_setting(bb, d):
diff --git a/meta/recipes-devtools/gcc/libgcc-common.inc b/meta/recipes-devtools/gcc/libgcc-common.inc
index dae07e96da..e6d31bc305 100644
--- a/meta/recipes-devtools/gcc/libgcc-common.inc
+++ b/meta/recipes-devtools/gcc/libgcc-common.inc
@@ -4,6 +4,13 @@ require gcc-shared-source.inc
INHIBIT_DEFAULT_DEPS = "1"
+EXTRA_OECONF += "\
+ ${@get_gcc_mips_plt_setting(bb, d)} \
+ ${@get_gcc_ppc_plt_settings(bb, d)} \
+ ${@get_long_double_setting(bb, d)} \
+ ${@get_gcc_multiarch_setting(bb, d)} \
+"
+
do_configure () {
target=`echo ${TARGET_SYS} | sed -e s#-${SDKPKGSUFFIX}##`
install -d ${D}${base_libdir} ${D}${libdir}