summaryrefslogtreecommitdiff
path: root/meta/recipes-extended
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-01 15:17:50 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-02 17:25:01 +0000
commite52d6bc4e6567e8a68749ee1eb66fd6176810222 (patch)
tree631988110266bc0b6091267b7e514230764f763b /meta/recipes-extended
parent591d488bb4600daf586385311505083e9eb227d5 (diff)
downloadopenembedded-core-e52d6bc4e6567e8a68749ee1eb66fd6176810222.tar.gz
openembedded-core-e52d6bc4e6567e8a68749ee1eb66fd6176810222.tar.bz2
openembedded-core-e52d6bc4e6567e8a68749ee1eb66fd6176810222.zip
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 <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended')
-rw-r--r--meta/recipes-extended/ltp/ltp_20140115.bb10
1 files changed, 9 insertions, 1 deletions
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