summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2017-02-19 06:51:57 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-02-23 12:49:49 -0800
commit9eaf51be2d578016d24ca47fb3cd679d3da4baca (patch)
treea6667b143c6b3ae68276c55c53bd8b14a0bfbe30
parent3711607d918c800e249c441c85227111362a796f (diff)
downloadpoky-9eaf51be2d578016d24ca47fb3cd679d3da4baca.tar.gz
gcc-cross: Avoid races with gcc_stash_builddir
Its sad we need to do this but do_install and do_populate_sysroot appear to change the files in ${B} and this breaks if something works in parallel like gcc_stash_builddir. We've seen a few too many race errors on the autobuilder which appear to be from this so make things run in sequence deterministically for now. An example failure was this from do_populate_sysroot whilst stash_builddir was running in parallel: ERROR: gcc-cross-initial-arm-6.3.0-r0 do_populate_sysroot: split_and_strip_files: 'file /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm-lsb/build/build/tmp/work/x86_64-linux/ gcc-cross-initial-arm/6.3.0-r0/sysroot-destdir/home/pokybuild/yocto-autobuilder/yocto-worker/ nightly-arm-lsb/build/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/6.3.0-r0/recipe-sysroot-native/ usr/bin/arm-poky-linux-gnueabi.gcc-cross-initial-arm/arm-poky-linux-gnueabi-gcov' failed Exception: subprocess.CalledProcessError: Command '('patchelf-uninative', '--set-interpreter', '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm-lsb/build/build/tmp/sysroots-uninative/ x86_64-linux/lib/ld-linux-x86-64.so.2', '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm-lsb/ build/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/6.3.0-r0/sstate-build-populate_sysroot/ recipe-sysroot-native/usr/bin/arm-poky-linux-gnueabi.gcc-cross-initial-arm/arm-poky-linux-gnueabi-gcov')' returned non-zero exit status 1 Subprocess output: missing section headers (From OE-Core rev: 75b76eb08c7e344142f0326605aeb6b24e61e38e) (From OE-Core rev: 7265e99d0b4b662ca7f23d480f2845a309ac57fc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross.inc2
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc b/meta/recipes-devtools/gcc/gcc-cross.inc
index fa5cfbd5d1..bb5f7a0a5e 100644
--- a/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -200,7 +200,7 @@ do_gcc_stash_builddir () {
200 dest=${BUILDDIRSTASH} 200 dest=${BUILDDIRSTASH}
201 hardlinkdir . $dest 201 hardlinkdir . $dest
202} 202}
203addtask do_gcc_stash_builddir after do_compile before do_build 203addtask do_gcc_stash_builddir after do_compile before do_install
204SSTATETASKS += "do_gcc_stash_builddir" 204SSTATETASKS += "do_gcc_stash_builddir"
205do_gcc_stash_builddir[sstate-inputdirs] = "${BUILDDIRSTASH}" 205do_gcc_stash_builddir[sstate-inputdirs] = "${BUILDDIRSTASH}"
206do_gcc_stash_builddir[sstate-outputdirs] = "${STAGING_DIR}-components/${BUILD_ARCH}/gcc-stashed-builddir${COMPILERINITIAL}-${TARGET_SYS}" 206do_gcc_stash_builddir[sstate-outputdirs] = "${STAGING_DIR}-components/${BUILD_ARCH}/gcc-stashed-builddir${COMPILERINITIAL}-${TARGET_SYS}"