aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClemens Lang <clemens.lang@bmw-carit.de>2015-08-17 10:37:47 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-08-19 17:57:51 +0100
commite22685ff11af6d54c939aa8f327a0aaa1557fbbc (patch)
treec5b886cc4f63574e2f06370ff5acdd0faaa001c3
parent1c28f9300f133dc49755b34e4861ab5509609da4 (diff)
downloadopenembedded-core-contrib-e22685ff11af6d54c939aa8f327a0aaa1557fbbc.tar.gz
archiver.bbclass: Run deploy_archives in $WORKDIR
In recipes that are exempt from source code archiving due to COPYLEFT_LICENSE_EXCLUDE, do_deploy_archives does not have a transitive dependency on do_unpack. Given enough parallelism, this means do_deploy_archives can run at the same time or before do_unpack. Because do_deploy_archives did not specify a working directory, its working directory was ${B}, which defaults to ${S}, which may be set by a recipe to a directory that is created by do_unpack. In this case, do_deploy_archives can fail because do_unpack deletes and re-creates the directory and do_deploy_archives cannot change into the non-existent directory. Avoid this problem by explicitly specifying a working directory for do_deploy_archives (and for do_deploy_all_archives as well for good measure). Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/classes/archiver.bbclass2
1 files changed, 2 insertions, 0 deletions
diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
index d908d162b1..089d70748c 100644
--- a/meta/classes/archiver.bbclass
+++ b/meta/classes/archiver.bbclass
@@ -45,6 +45,8 @@ ARCHIVER_WORKDIR = "${WORKDIR}/archiver-work/"
do_dumpdata[dirs] = "${ARCHIVER_OUTDIR}"
do_ar_recipe[dirs] = "${ARCHIVER_OUTDIR}"
do_ar_original[dirs] = "${ARCHIVER_OUTDIR} ${ARCHIVER_WORKDIR}"
+do_deploy_archives[dirs] = "${WORKDIR}"
+do_deploy_all_archives[dirs] = "${WORKDIR}"
# This is a convenience for the shell script to use it