[OE-core] [PATCH v8 2/3] kernel-devicetree.bbclass: Rework to use tasks

Otavio Salvador otavio at ossystems.com.br
Tue Sep 12 20:36:07 UTC 2017


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 <otavio at 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




More information about the Openembedded-core mailing list