summaryrefslogtreecommitdiff
path: root/meta
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-04-24 10:19:42 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-04-25 17:10:57 +0100
commit459e4dc25462771038459567c22e87d4cd38b117 (patch)
tree6b432b39b54cc9c51288ce7f6f47d96bed7cfc47 /meta
parent7c9f4a22d5c14d768be872beb9fc798163d6d204 (diff)
downloadopenembedded-core-459e4dc25462771038459567c22e87d4cd38b117.tar.gz
openembedded-core-459e4dc25462771038459567c22e87d4cd38b117.tar.bz2
openembedded-core-459e4dc25462771038459567c22e87d4cd38b117.zip
gcc-cross: Improve handling of unwind.h
Rather than building the whole of libgcc to obtain the unwind.h header file, simply configure it and then install the file. This avoids copying chunks of data around when we don't need to and building the same thing twice. After doing this we need to make sure the target build directory exists in the libgcc case since it will no longer be created automatically. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.8.inc1
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross.inc3
-rw-r--r--meta/recipes-devtools/gcc/libgcc-common.inc1
3 files changed, 3 insertions, 2 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.8.inc b/meta/recipes-devtools/gcc/gcc-4.8.inc
index c32060034e..855ec26aef 100644
--- a/meta/recipes-devtools/gcc/gcc-4.8.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.8.inc
@@ -71,7 +71,6 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://0048-PR58854_fix_arm_apcs_epilogue.patch \
file://0049-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch \
file://0050-PR-target-58595.patch \
- file://0051-fix-unwind-race.patch \
"
SRC_URI[md5sum] = "a3d7d63b9cb6b6ea049469a0c4a43c9d"
SRC_URI[sha256sum] = "09dc2276c73424bbbfda1dbddc62bbbf900c9f185acf7f3e1d773ce2d7e3cdc8"
diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc b/meta/recipes-devtools/gcc/gcc-cross.inc
index 165230b15f..27ebcf6485 100644
--- a/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -41,7 +41,7 @@ do_compile () {
export CXXFLAGS_FOR_TARGET="${TARGET_CXXFLAGS}"
export LDFLAGS_FOR_TARGET="${TARGET_LDFLAGS}"
- oe_runmake all-host all-target-libgcc
+ oe_runmake all-host configure-target-libgcc
# now generate script to drive testing
echo "#!/usr/bin/env sh" >${B}/${TARGET_PREFIX}testgcc
set >> ${B}/${TARGET_PREFIX}testgcc
@@ -141,6 +141,7 @@ INHIBIT_PACKAGE_STRIP = "1"
BINRELPATH = "${@os.path.relpath(d.expand("${STAGING_DIR_NATIVE}${prefix_native}/bin/${MULTIMACH_TARGET_SYS}"), 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
install -d ${D}${target_base_libdir}
diff --git a/meta/recipes-devtools/gcc/libgcc-common.inc b/meta/recipes-devtools/gcc/libgcc-common.inc
index c4ab885cc3..b30bcfeaeb 100644
--- a/meta/recipes-devtools/gcc/libgcc-common.inc
+++ b/meta/recipes-devtools/gcc/libgcc-common.inc
@@ -7,6 +7,7 @@ do_configure () {
install -d ${D}${base_libdir} ${D}${libdir}
hardlinkdir ${STAGING_INCDIR_NATIVE}/${LIBGCCBUILDTREENAME}$target/ ${B}
mkdir -p ${B}/${BPN}
+ mkdir -p ${B}/$target/${BPN}/
cd ${B}/${BPN}
chmod a+x ${S}/${BPN}/configure
${S}/${BPN}/configure ${CONFIGUREOPTS} ${EXTRA_OECONF}