diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-03-28 15:09:50 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-03-28 15:09:50 +0100 |
commit | 12b163dbd81cafafec1ebe3c4039c65af60ee261 (patch) | |
tree | bb4b0aed62393b27c05d2a977b256be67c42be58 /meta/recipes-devtools | |
parent | afd28598368963dc49bfd02ef2d6f54218d663ae (diff) | |
download | poky-12b163dbd81cafafec1ebe3c4039c65af60ee261.tar.gz |
bitbake/gcc: Enable a shared common source tree
This patch is a quick proof of concept to show how source code could
be shared between recipes which use ${B} to have a separate build
directory compared to source directory ${S}.
Issues:
a) gcc uses sed and creates config files against ${S} which means
the directory should not be shared. Need to change the way that works.
b) Could be extended to cover eglibc except there is a patch applied
against nativesdk versions which again makes the source incompatible.
c) Need to clean up the layout in work-shared and make a directory level deeper
to ensure patch separation.
d) clean task does not remove stamps
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-common.inc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-common.inc b/meta/recipes-devtools/gcc/gcc-common.inc index a3fa234422..4d378339ab 100644 --- a/meta/recipes-devtools/gcc/gcc-common.inc +++ b/meta/recipes-devtools/gcc/gcc-common.inc | |||
@@ -37,8 +37,16 @@ ${GNU_MIRROR}/gcc/ http://gcc.get-software.com/releases/ \n \ | |||
37 | # | 37 | # |
38 | gcclibdir = "${libdir}/gcc" | 38 | gcclibdir = "${libdir}/gcc" |
39 | BINV = "${PV}" | 39 | BINV = "${PV}" |
40 | S = "${WORKDIR}/gcc-${PV}" | 40 | #S = "${WORKDIR}/gcc-${PV}" |
41 | B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" | 41 | S = "${TMPDIR}/work-shared/gcc-${PV}" |
42 | B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}" | ||
43 | |||
44 | do_fetch[stamp-base] = "${TMPDIR}/stamps/work-shared/gcc-${PV}" | ||
45 | do_unpack[stamp-base] = "${TMPDIR}/stamps/work-shared/gcc-${PV}" | ||
46 | do_patch[stamp-base] = "${TMPDIR}/stamps/work-shared/gcc-${PV}" | ||
47 | |||
48 | WORKDIR_task-unpack = "${TMPDIR}/work-shared/" | ||
49 | WORKDIR_task-patch = "${TMPDIR}/work-shared/" | ||
42 | 50 | ||
43 | target_includedir ?= "${includedir}" | 51 | target_includedir ?= "${includedir}" |
44 | target_libdir ?= "${libdir}" | 52 | target_libdir ?= "${libdir}" |