[3/4] gcc-cross-canadian: Add configure-target-libgcc

Submitted by Mark Hatle on June 25, 2014, 12:28 a.m.

Details

Message ID 68a4601291e067276353fb08065392931c938b70.1403655933.git.mark.hatle@windriver.com
State Accepted
Commit e67b24401a366b20644510703c7140be975869ea
Headers show

Commit Message

Mark Hatle June 25, 2014, 12:28 a.m.
While we're not going to package the libgcc component as part of the SDK,
we do need to generate it to get the unwind, and quadmath headers.  Without
this change it is not possible to build eglibc or other components that
require these headers with the SDK toolchain.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
 meta/recipes-devtools/gcc/gcc-cross-canadian.inc | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

Patch hide | download patch | download mbox

diff --git a/meta/recipes-devtools/gcc/gcc-cross-canadian.inc b/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
index 307f73c..63adae8 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
@@ -58,7 +58,7 @@  do_configure () {
 }
 
 do_compile () {
-	oe_runmake all-host
+	oe_runmake all-host configure-target-libgcc
 }
 
 INHIBIT_PACKAGE_STRIP = "1"
@@ -97,6 +97,7 @@  EXEEXT = ""
 BINRELPATH = "${@os.path.relpath(d.expand("${bindir}"), d.expand("${libexecdir}/gcc/${TARGET_SYS}/${BINV}"))}"
 
 do_install () {
+	( cd ${B}/${TARGET_SYS}/libgcc; oe_runmake 'DESTDIR=${D}' install-unwind_h )
 	oe_runmake 'DESTDIR=${D}' install-host
 
 	# Cleanup some of the ${libdir}{,exec}/gcc stuff ...
@@ -137,6 +138,11 @@  do_install () {
 		ln -sf ${BINRELPATH}/${TARGET_PREFIX}$t$suffix $dest$t$suffix
 	done
 
+	# libquadmath headers need to  be available in the gcc libexec dir
+	install -d ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/
+	cp ${S}/libquadmath/quadmath.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/
+	cp ${S}/libquadmath/quadmath_weak.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/
+
 	chown -R root:root ${D}
 	
 	cross_canadian_bindirlinks
@@ -150,8 +156,9 @@  SYSTEMHEADERS = "/usr/include"
 SYSTEMLIBS = "${target_base_libdir}/"
 SYSTEMLIBS1 = "${target_libdir}/"
 
-EXTRA_OECONF += "--disable-libunwind-exceptions --disable-libssp \
-		--disable-libgomp --disable-libmudflap \
+EXTRA_OECONF += " --enable-poison-system-directories"
+
+EXTRA_OECONF += "--disable-libunwind-exceptions \
 		--with-mpfr=${STAGING_DIR_HOST}${layout_exec_prefix} \
 		--with-mpc=${STAGING_DIR_HOST}${layout_exec_prefix}"