From: Richard Purdie Date: Sat, 1 Mar 2014 15:17:50 +0000 (+0000) Subject: ltp: Work around parallel make race X-Git-Tag: 2015-4~3489 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=e52d6bc4e6567e8a68749ee1eb66fd6176810222;p=openembedded-core.git ltp: Work around parallel make race As per the comments, the makefiles use make -C extensively and this causes particular problems around the kernel syscall header. We therefore ensure its up to date in advance. Also, append the configure, not prepend since otherwise the configure will rerun during the build due to the timestamps being outdated. Signed-off-by: Richard Purdie --- diff --git a/meta/recipes-extended/ltp/ltp_20140115.bb b/meta/recipes-extended/ltp/ltp_20140115.bb index 361eccb0b1..2a3999b8cb 100644 --- a/meta/recipes-extended/ltp/ltp_20140115.bb +++ b/meta/recipes-extended/ltp/ltp_20140115.bb @@ -39,10 +39,18 @@ export exec_prefix = "/opt/ltp" # ltp doesn't regenerate ffsb-6.0-rc2 configure and hardcode configure call. # we explicitly force regeneration of that directory and pass configure options. -do_configure_prepend() { +do_configure_append() { (cd utils/ffsb-6.0-rc2; autoreconf -fvi; ./configure ${CONFIGUREOPTS}) } +# The makefiles make excessive use of make -C and several include testcases.mk +# which triggers a build of the syscall header. To reproduce, build ltp, +# then delete the header, then "make -j XX" and watch regen.sh run multiple +# times. Its easier to generate this once here instead. +do_compile_prepend () { + ( make -C ${B}/testcases/kernel include/linux_syscall_numbers.h ) +} + do_install(){ install -d ${D}/opt/ltp/ oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install