This reworks the compile and install in tasks as well as run the build
of the Device Tree files in parallel, if possible.

Signed-off-by: Otavio Salvador <ota...@ossystems.com.br>
---

Changes in v8: None
Changes in v7:
- Split tasks change from linux-dtb rework
- Run do_compile_devicetree before do_compile_kernelmodules

Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 meta/classes/kernel-devicetree.bbclass | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/meta/classes/kernel-devicetree.bbclass 
b/meta/classes/kernel-devicetree.bbclass
index 72814ca224..8723f24212 100644
--- a/meta/classes/kernel-devicetree.bbclass
+++ b/meta/classes/kernel-devicetree.bbclass
@@ -20,14 +20,19 @@ get_real_dtb_path_in_kernel () {
        echo "${DTB_PATH}"
 }
 
-do_compile_append() {
-       for DTB in ${KERNEL_DEVICETREE}; do
-               DTB=`normalize_dtb "${DTB}"`
-               oe_runmake ${DTB}
+do_compile_devicetree() {
+       DTBS=""
+       for dtb in ${KERNEL_DEVICETREE}; do
+               dtb=`normalize_dtb "${dtb}"`
+               DTBS="$DTBS $dtb"
        done
+       oe_runmake -C ${B} ${PARALLEL_MAKE} ${DTBS}
 }
+addtask compile_devicetree after do_compile before do_compile_kernelmodules 
do_install
 
-do_install_append() {
+do_install_devicetree[dirs] = "${B}"
+do_install_devicetree[umask] = "022"
+fakeroot do_install_devicetree() {
        for DTB in ${KERNEL_DEVICETREE}; do
                DTB=`normalize_dtb "${DTB}"`
                DTB_EXT=${DTB##*.}
@@ -41,6 +46,7 @@ do_install_append() {
                done
        done
 }
+addtask install_devicetree after do_install before do_deploy
 
 do_deploy_append() {
        for DTB in ${KERNEL_DEVICETREE}; do
-- 
2.14.1

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to