summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-cross-initial.inc
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-24 13:18:12 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-26 10:44:27 +0000
commit42ed1d8ac9799e41544c2da93069ecc6f86cbded (patch)
tree0a67a6c18c1964c048c8a821fddf7da7de506c95 /meta/recipes-devtools/gcc/gcc-cross-initial.inc
parent1cec0f3bf4fa784e91ee4cdb66376361ecbff18e (diff)
downloadpoky-42ed1d8ac9799e41544c2da93069ecc6f86cbded.tar.gz
gcc: Split builddir saving into its own sstate task
When we stashed the gcc build directory for use in generating the various runtimes we were being lazy and just used the staging directory. With recipe specific sysroots this means we're copying a large chunk of data around with the cross compiler which we don't really need in most cases. Separate out the data into its own task and inject this into the configure step. We have to do that here since autotools will wipe out ${B} if it thinks we're rebuilding and we therefore have to time its recreation after that. This also takes the opportunity to remove some pointless (as far as I can tell) conditionals from the do_install code. (From OE-Core rev: dcf15ccf3cc9d55e77228ba8d526f967fc9791b4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-cross-initial.inc')
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-initial.inc10
1 files changed, 2 insertions, 8 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-cross-initial.inc b/meta/recipes-devtools/gcc/gcc-cross-initial.inc
index d47f42e4c3..dd35681c98 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-initial.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross-initial.inc
@@ -75,14 +75,6 @@ do_install () {
75 # so we overwirte the generated include-fixed/limits.h for gcc-cross-initial 75 # so we overwirte the generated include-fixed/limits.h for gcc-cross-initial
76 # to get rid references to real limits.h 76 # to get rid references to real limits.h
77 cp gcc/include-fixed/limits.h ${D}${gcclibdir}/${TARGET_SYS}/${BINV}/include/limits.h 77 cp gcc/include-fixed/limits.h ${D}${gcclibdir}/${TARGET_SYS}/${BINV}/include/limits.h
78
79 # gcc-runtime installs libgcc into a special location in staging since it breaks doing a standalone build
80 case ${PN} in
81 *gcc-cross-initial-${TARGET_ARCH}|*gcc-crosssdk-initial-${SDK_SYS})
82 dest=${D}/${includedir}/gcc-build-internal-initial-${TARGET_SYS}
83 hardlinkdir . $dest
84 ;;
85 esac
86} 78}
87# 79#
88# Override the default sysroot staging copy since this won't look like a target system 80# Override the default sysroot staging copy since this won't look like a target system
@@ -99,3 +91,5 @@ do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_HOST}/
99do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR}-components/${PACKAGE_ARCH}/${PN}" 91do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR}-components/${PACKAGE_ARCH}/${PN}"
100 92
101inherit nopackages 93inherit nopackages
94
95COMPILERINITIAL = "-initial"