summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2014-02-17 14:22:29 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-02-17 15:34:45 +0000
commit77a53c5a2a947b6515d4188e37ed823a2602ff83 (patch)
tree683d7fd6d07dcfe3232f04fc96b881a075a814eb /meta/classes
parent8dff4af00c471c32e648b8618b4aae78a26374f9 (diff)
downloadpoky-77a53c5a2a947b6515d4188e37ed823a2602ff83.tar.gz
classes/populate_sdk_base: fix race condition with do_rootfs
do_rootfs has ${S} in cleandirs, and during do_populate_sdk we call exec_func() several times, which by default uses ${B} as the working directory. If do_populate_sysroot and do_rootfs race against eachother, the directory may not exist at the exact instant that the setup code for do_populate_sdk tries to cd into it. We don't actually use ${B} for do_populate_sysroot so we can set it to something else just for that task to avoid the race. NOTE: because this task name contains an underscore, the override will not work; the BitBake patch that changes these to hyphens for the task override is required for this patch to work (but won't break things without it.) (From OE-Core rev: 53578cef2cbc59dcc637d1cc561f63b3c448425a) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/populate_sdk_base.bbclass2
1 files changed, 2 insertions, 0 deletions
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index ee2a7c1d59..e2e013afd6 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -26,6 +26,8 @@ SDK_DIR = "${WORKDIR}/sdk"
26SDK_OUTPUT = "${SDK_DIR}/image" 26SDK_OUTPUT = "${SDK_DIR}/image"
27SDK_DEPLOY = "${TMPDIR}/deploy/sdk" 27SDK_DEPLOY = "${TMPDIR}/deploy/sdk"
28 28
29B_task-populate-sdk = "${SDK_DIR}"
30
29SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${REAL_MULTIMACH_TARGET_SYS}" 31SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${REAL_MULTIMACH_TARGET_SYS}"
30 32
31TOOLCHAIN_HOST_TASK ?= "nativesdk-packagegroup-sdk-host packagegroup-cross-canadian-${MACHINE}" 33TOOLCHAIN_HOST_TASK ?= "nativesdk-packagegroup-sdk-host packagegroup-cross-canadian-${MACHINE}"