From e52d6bc4e6567e8a68749ee1eb66fd6176810222 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sat, 1 Mar 2014 15:17:50 +0000 Subject: 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 --- meta/recipes-extended/ltp/ltp_20140115.bb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'meta') 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 -- cgit 1.2.3-korg