[oe-commits] Bruce Ashfield : kernel-yocto: split meta data generation from patching phase

git at git.openembedded.org git at git.openembedded.org
Fri Mar 20 10:59:20 UTC 2015


Module: openembedded-core.git
Branch: master-next
Commit: 3611d79eed459ea0619595dacff71cfe387fe4e3
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=3611d79eed459ea0619595dacff71cfe387fe4e3

Author: Bruce Ashfield <bruce.ashfield at windriver.com>
Date:   Thu Mar  5 09:04:01 2015 -0500

kernel-yocto: split meta data generation from patching phase

The linux-yocto kernel has a meta-data component which accompanies the
actual tree. That meta-data is processed to generate a series file that
controls the patching and configuration of the kernel.

patching and configuration are two distinct phases, so when working on
kernel configuration, it doesn't make sense to always have to re-run
the patching step just to update configuration data in the meta-series.

To allow a more granular set of tasks, we break the meta-data generation
into a separate task, which runs before do_patch. This allows the task
to be explicitly called when working on configuration, but otherwise
has no impact on the build.

Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>

---

 meta/classes/kernel-yocto.bbclass | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index 8db4899..1e226a5 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -55,7 +55,7 @@ def get_machine_branch(d, default):
 	    
     return default
 
-do_patch() {
+do_kernel_metadata() {
 	cd ${S}
 	export KMETA=${KMETA}
 
@@ -81,7 +81,7 @@ do_patch() {
 		createme_flags="--disable-meta-gen --meta ${KMETA}"
 	fi
 
-	createme ${createme_flags} ${ARCH} ${machine_branch}
+	createme -v -v ${createme_flags} ${ARCH} ${machine_branch}
 	if [ $? -ne 0 ]; then
 		bbfatal "Could not create ${machine_branch}"
 	fi
@@ -118,6 +118,10 @@ do_patch() {
 	if [ $? -ne 0 ]; then
 		bbfatal "Could not update ${machine_branch}"
 	fi
+}
+
+do_patch() {
+	cd ${S}
 
 	# executes and modifies the source tree as required
 	patchme ${KMACHINE}
@@ -221,6 +225,7 @@ do_kernel_checkout() {
 do_kernel_checkout[dirs] = "${S}"
 
 addtask kernel_checkout before do_patch after do_unpack
+addtask kernel_metadata after do_validate_branches before do_patch
 
 do_kernel_configme[dirs] += "${S} ${B}"
 do_kernel_configme() {



More information about the Openembedded-commits mailing list