aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-shared-source.inc
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-11-25 17:58:10 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-12-03 12:17:32 +0000
commitceaa0a448dc5ebddb4f7fb94fb8a503a1c0248c3 (patch)
tree8e9a3d1785833e8e69d01adfc62ccd9482d1ffbb /meta/recipes-devtools/gcc/gcc-shared-source.inc
parentb53e06c8fc4a8183a2f8232c13931a39b1ca0e23 (diff)
downloadopenembedded-core-ceaa0a448dc5ebddb4f7fb94fb8a503a1c0248c3.tar.gz
gcc: Rework shared work
The current implementation of shared work for gcc is at best confusing. It relies on the fetch/unpack/patch tasks having exactly the same stamps and if this gets broken for some reason, its hard to figure out what the problem is. It also leads to complex code in bitbake. The benefits of shared work for gcc are clear but a better approach is needed. This patch adjusts things so that a single new recipe (gcc-source) provides the fetch/unpack/patch/preconfigure tasks, the rest of gcc simply depends on these tasks and have no fetch/unpack/patch tasks of their own. This means we should get the significant benefits (disk usage/performance) of the single source tree but in a way which has less potential for problems and is easier for people to understand. The cost is an extra recipe/some inc files which is probably a good tradeoff. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-shared-source.inc')
-rw-r--r--meta/recipes-devtools/gcc/gcc-shared-source.inc6
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-shared-source.inc b/meta/recipes-devtools/gcc/gcc-shared-source.inc
new file mode 100644
index 0000000000..ec30865c6a
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-shared-source.inc
@@ -0,0 +1,6 @@
+deltask do_fetch
+deltask do_unpack
+deltask do_patch
+
+do_configure[depends] += "gcc-source:do_preconfigure"
+do_populate_lic[depends] += "gcc-source:do_unpack"