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). (From OE-Core rev: e22685ff11af6d54c939aa8f327a0aaa1557fbbc) Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
d6eb9cceb3
commit
76d7e8e9c9
|
@ -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
|
||||
|
||||
|
|
Loading…
Reference in New Issue