From: Joshua Watt Date: Wed, 18 Sep 2019 21:21:32 +0000 (-0500) Subject: classes/archiver: Fix WORKDIR for shared source X-Git-Tag: uninative-2.7~92 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=e3caee8f86f2cca1d052f1f1b233018a3d4baa97;p=openembedded-core.git classes/archiver: Fix WORKDIR for shared source When archiving patched source, WORKDIR should only be changed to ${ARCHIVER_WORKDIR} if the recipe doesn't use a shared work directory. This matches the behavior of do_unpack_and_patch for these recipes. This fixes kernel recipes that set S = "${WORKDIR}/git" Signed-off-by: Joshua Watt Signed-off-by: Richard Purdie --- diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass index 13b05bb5f2..093e2d95af 100644 --- a/meta/classes/archiver.bbclass +++ b/meta/classes/archiver.bbclass @@ -221,9 +221,10 @@ python do_ar_patched() { # Get the ARCHIVER_OUTDIR before we reset the WORKDIR ar_outdir = d.getVar('ARCHIVER_OUTDIR') - ar_workdir = d.getVar('ARCHIVER_WORKDIR') + if not is_work_shared(d): + ar_workdir = d.getVar('ARCHIVER_WORKDIR') + d.setVar('WORKDIR', ar_workdir) bb.note('Archiving the patched source...') - d.setVar('WORKDIR', ar_workdir) create_tarball(d, d.getVar('S'), 'patched', ar_outdir) }