diff options
author | Anders Darander <anders@chargestorm.se> | 2011-10-19 13:15:19 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-01-30 16:38:03 +0000 |
commit | 795843df09f7548afa9f94823a3932ea04b0f585 (patch) | |
tree | 7359c5b9281337edcc465a0527b6bcd14024048e | |
parent | 8a20492e8a36965beaebc8eb0c3b6eaf8411d488 (diff) | |
download | poky-795843df09f7548afa9f94823a3932ea04b0f585.tar.gz |
module.bbclass: add lock to prevent error bulding ext modules
When external modules are built, files in $STAGING_KERNEL_DIR/scripts/basic will/can get
rebuilt.
This raises a potential race condition. Prevent this by adding a lock around the
do_make_scripts() function. Further, make sure that the kernel has been installed
to the sysroot, prior to executing this new task.
(From OE-Core rev: 8681b82e8b466929205edde7ba479f3ac1a6143e)
(From OE-Core rev: 694e3016e25dff3f573291830d79982c8b8793a2)
Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/module.bbclass | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/meta/classes/module.bbclass b/meta/classes/module.bbclass index 572df0d295..53c16b7389 100644 --- a/meta/classes/module.bbclass +++ b/meta/classes/module.bbclass | |||
@@ -14,8 +14,11 @@ do_make_scripts() { | |||
14 | -C ${STAGING_KERNEL_DIR} scripts | 14 | -C ${STAGING_KERNEL_DIR} scripts |
15 | } | 15 | } |
16 | 16 | ||
17 | addtask make_scripts before do_compile | ||
18 | do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock" | ||
19 | do_make_scripts[deptask] = "do_populate_sysroot" | ||
20 | |||
17 | module_do_compile() { | 21 | module_do_compile() { |
18 | do_make_scripts | ||
19 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS | 22 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS |
20 | oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \ | 23 | oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \ |
21 | KERNEL_SRC=${STAGING_KERNEL_DIR} \ | 24 | KERNEL_SRC=${STAGING_KERNEL_DIR} \ |