diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-04-11 00:20:01 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-04-11 18:10:18 +0100 |
commit | 283a9b3883083e45bbdaf0488a3c6c76c5b197d7 (patch) | |
tree | 9b71409d66ff0d8163ba197cee70aab2d475a53c | |
parent | ca22ef73d03ec5140493f29d1fe0cb6c0400c307 (diff) | |
download | poky-283a9b3883083e45bbdaf0488a3c6c76c5b197d7.tar.gz |
staging: Fix sysroot problem with populate_sysroot dependencies on do_fetch
Dependencies on svn:// urls were failing as the cleandirs on do_fetch was destroying
any sysroot setup by the extend_recipe_sysroot function.
Add code so that if the task do_fetch, we move the cleandirs to a separate function before
the extend_recipe_sysroot prefunc else we'd wipe out the sysroot we just created.
This allows fetcher do_populate_sysroot dependencies to work correctly again.
I did try various other approaches and a seperate function with cleandirs was the
cleanest way to add this without code duplication or too much complexity.
(From OE-Core rev: b32fbfc85b14059f0bfdeeffe2c52f8d3c20f276)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/staging.bbclass | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass index 27fcd1efa9..8bdb437a1f 100644 --- a/meta/classes/staging.bbclass +++ b/meta/classes/staging.bbclass | |||
@@ -639,7 +639,12 @@ python do_prepare_recipe_sysroot () { | |||
639 | addtask do_prepare_recipe_sysroot before do_configure after do_fetch | 639 | addtask do_prepare_recipe_sysroot before do_configure after do_fetch |
640 | 640 | ||
641 | # Clean out the recipe specific sysroots before do_fetch | 641 | # Clean out the recipe specific sysroots before do_fetch |
642 | do_fetch[cleandirs] += "${RECIPE_SYSROOT} ${RECIPE_SYSROOT_NATIVE}" | 642 | # (use a prefunc so we can order before extend_recipe_sysroot if it gets added) |
643 | python clean_recipe_sysroot() { | ||
644 | return | ||
645 | } | ||
646 | clean_recipe_sysroot[cleandirs] += "${RECIPE_SYSROOT} ${RECIPE_SYSROOT_NATIVE}" | ||
647 | do_fetch[prefuncs] += "clean_recipe_sysroot" | ||
643 | 648 | ||
644 | python staging_taskhandler() { | 649 | python staging_taskhandler() { |
645 | bbtasks = e.tasklist | 650 | bbtasks = e.tasklist |