gcc-target: Limit compile to host targets, don't build runtimes.

Submitted by Richard Purdie on April 27, 2014, 12:23 a.m. | Patch ID: 71079


Message ID 1398558226.16672.284.camel@ted
State Accepted
Commit 19448a50c106684ee7e3862f759418c982363a29
Headers show

Commit Message

Richard Purdie April 27, 2014, 12:23 a.m.
Currently the gcc builds are building copies of the target libraries
that we never use (it isn't installed in do_install). This is a rather
pointless waste of cpu time.

Instead just compile the host targets. Comparing the package output of
this compared to a previous build shows that the unwind.h header is
missing since its provided by gcc. Fix this simply by copying it in.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Patch hide | download patch | download mbox

diff --git a/meta/recipes-devtools/gcc/gcc-target.inc b/meta/recipes-devtools/gcc/gcc-target.inc
index aff395c..45a1637 100644
--- a/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/meta/recipes-devtools/gcc/gcc-target.inc
@@ -100,8 +100,16 @@  FILES_${PN}-doc = "\
   ${gcclibdir}/${TARGET_SYS}/${BINV}/include/README \
+do_compile () {
+	oe_runmake all-host
 do_install () {
 	oe_runmake 'DESTDIR=${D}' install-host
+	# Add unwind.h, it comes from libgcc which we don't want to build again
+	install ${STAGING_LIBDIR_NATIVE}/${TARGET_SYS}/gcc/${TARGET_SYS}/${BINV}/include/unwind.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/
 	# Info dir listing isn't interesting at this point so remove it if it exists.
 	if [ -e "${D}${infodir}/dir" ]; then
 		rm -f ${D}${infodir}/dir