]> code.ossystems Code Review - openembedded-core.git/commitdiff
base: Avoid find race
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 14 May 2015 14:20:30 +0000 (15:20 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sun, 28 Jun 2015 08:41:53 +0000 (09:41 +0100)
In a similar way to http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=aa1438b56f30515f9c31b306decef7f562dda81f
and http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=527b28c10955daf0387597020d69593ce24bcaa4
there is a find race in base.bbclass.

For recipes with PACKAGES_remove = "${PN}", the find which removes
.la files can race against deletion of other directories in WORKDIR
e.g.:

find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
| find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete

Fix the race in the same way.

[YOCTO #7522]

(From OE-Core rev: 90861b8908d254154f4d1d613471070df8013da8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/base.bbclass

index 3d9235e1a638ddc6494f4407f92d2f0b6c71b67e..42f140276d95b5e39127c70dafb0244e58b54f5c 100644 (file)
@@ -255,7 +255,7 @@ base_do_configure() {
                        if [ "${CLEANBROKEN}" != "1" -a \( -e Makefile -o -e makefile -o -e GNUmakefile \) ]; then
                                oe_runmake clean
                        fi
-                       find ${B} -name \*.la -delete
+                       find ${B} -ignore_readdir_race -name \*.la -delete
                fi
        fi
        if [ -n "${CONFIGURESTAMPFILE}" ]; then