> -----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...
> - find ${B} -ignore_readdir_race -name \*.la -delete
> + find ${B} -ignore_readdir_race -name \*.la -type f
> -print0 | xargs -0 rm -f
> fi
> fi
> if [ -n "${CONFIGURESTAMPFILE}" ]; then
> --
> 2.17.1
//Peter
--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core