On Fri, Nov 2, 2018 at 8:43 AM Richard Purdie <[email protected]> wrote: > > On Fri, 2018-11-02 at 15:19 +0000, Peter Kjellerstedt wrote: > > > -----Original Message----- > > > From: [email protected] > > > <openembedded- > > > [email protected]> On Behalf Of > > > [email protected] > > > Sent: den 2 november 2018 15:39 > > > To: [email protected] > > > Subject: [OE-core] [PATCH] base.bbclass: avoid 'find - > > > ignore_readdir_race -delete' > > > > > > From: Matthias Schiffer <[email protected]> > > > > > > Until recent versions of findutils, -ignore_readdir_race did not > > > work > > > correctly with -delete. This led to spurious build failures when > > > files > > > disappeared; specifically this was seen due to do_configure and > > > do_populate_lic running concurrently for packages with ${B} == > > > ${WORKDIR}: > > > > > > find: '.../sstate-build-populate_lic': No such file or directory > > > > > > As the find command of the host system is used here, we can't > > > ensure that > > > the used version contains the fix. Work around the issue by passing > > > the > > > output of find to 'rm -f' instead of using -delete. > > > > > > Signed-off-by: Matthias Schiffer <[email protected] > > > > > > > --- > > > > > > It would be great if this patch could be backported to all versions > > > back to Rocko, as our current setup is still based on Rocko. > > > > > > meta/classes/base.bbclass | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass > > > index df11c8b270..5ffd8396e3 100644 > > > --- a/meta/classes/base.bbclass > > > +++ b/meta/classes/base.bbclass > > > @@ -303,7 +303,7 @@ base_do_configure() { > > > if [ "${CLEANBROKEN}" != "1" -a \( -e Makefile > > > -o -e makefile -o -e GNUmakefile \) ]; then > > > oe_runmake clean > > > fi > > > > You might want to include a comment here explaining why rm -f is > > used instead of -delete, or someone might come along and optimize the > > code... > > We should detail which versions of findutils have the issue as > ultimately it would be nice to use the simpler command. I'm curious how > many of the distros we support have the problem.
There's a test case in the patch proposed to fix the issue: https://savannah.gnu.org/bugs/?52981 https://savannah.gnu.org/bugs/download.php?file_id=43119 Regarding the proposed patch for base.bbclass, xargs should generally always be called with --no-run-if-empty, unless there's a clear reason not to. -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
