From 4b048ac882a265e0da73faeac31cedba96c4a811 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sat, 1 Mar 2014 15:17:50 +0000 Subject: [PATCH] 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. (From OE-Core rev: e52d6bc4e6567e8a68749ee1eb66fd6176810222) Signed-off-by: Richard Purdie --- meta/recipes-extended/ltp/ltp_20140115.bb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) 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