diff options
author | Anders Darander <anders@chargestorm.se> | 2011-10-19 13:15:19 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-10-20 17:13:41 +0100 |
commit | 55092666ba9eb3c0265bc29613792a95536d8fae (patch) | |
tree | f44d3edcd5d5bdfad470ef667f47ec2a56cdb753 /meta/classes/module.bbclass | |
parent | 43f4f31ef047dd7f8e7fd1bbd7f29e50ced25aab (diff) | |
download | poky-55092666ba9eb3c0265bc29613792a95536d8fae.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)
Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/module.bbclass')
-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} \ |