From 12b163dbd81cafafec1ebe3c4039c65af60ee261 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Mon, 28 Mar 2011 15:09:50 +0100 Subject: 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 --- meta/recipes-devtools/gcc/gcc-common.inc | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'meta') 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 \ # gcclibdir = "${libdir}/gcc" BINV = "${PV}" -S = "${WORKDIR}/gcc-${PV}" -B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" +#S = "${WORKDIR}/gcc-${PV}" +S = "${TMPDIR}/work-shared/gcc-${PV}" +B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}" + +do_fetch[stamp-base] = "${TMPDIR}/stamps/work-shared/gcc-${PV}" +do_unpack[stamp-base] = "${TMPDIR}/stamps/work-shared/gcc-${PV}" +do_patch[stamp-base] = "${TMPDIR}/stamps/work-shared/gcc-${PV}" + +WORKDIR_task-unpack = "${TMPDIR}/work-shared/" +WORKDIR_task-patch = "${TMPDIR}/work-shared/" target_includedir ?= "${includedir}" target_libdir ?= "${libdir}" -- cgit v1.2.3-54-g00ecf