]> code.ossystems Code Review - openembedded-core.git/commitdiff
linux-yocto: streamline new BSP creation
authorBruce Ashfield <bruce.ashfield@windriver.com>
Fri, 14 Jan 2011 05:33:26 +0000 (00:33 -0500)
committerSaul Wold <sgw@linux.intel.com>
Wed, 19 Jan 2011 19:36:27 +0000 (11:36 -0800)
By setting BOOTSTRAP to the branch that should be used for a
currently undefined BSP a build can be completed and an
environment for streamlining the BSP created.

With the appropriate machine.conf, and a defconfig any MACHINE
can be built against and inherit the configuration of the
standard yocto kernel.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
meta/classes/kernel-yocto.bbclass

index df2a8a43bced7635898327418ab50df9070e981f..88dcf32a063b03a8bb0c5ea729ce79ec3011abc4 100644 (file)
@@ -24,7 +24,7 @@ python __anonymous () {
             bb.data.setVar("KMACHINE", "${MACHINE}", d)
             # track the global configuration on a bootstrapped BSP
             bb.data.setVar("SRCREV_machine", "${SRCREV_meta}", d)
-            bb.data.setVar("BOOTSTRAP", "t", d)
+            bb.data.setVar("BOOTSTRAP", bb.data.expand("${MACHINE}",d) + "-standard", d)
     else:
         # The branch for a build is:
         #    yocto/<kernel type>/${KMACHINE} or
@@ -44,10 +44,10 @@ python __anonymous () {
         bb.data.setVar('KMACHINE_' + bb.data.expand("${MACHINE}",d), kmachine, d)
 
         if mach == "UNDEFINED":
-            bb.data.setVar("KBRANCH", "yocto/standard/base", d)
             bb.data.setVar('KMACHINE_' + bb.data.expand("${MACHINE}",d), bb.data.expand("${MACHINE}",d), d)
+            bb.data.setVar("KBRANCH", "yocto/standard/base", d)
             bb.data.setVar("SRCREV_machine", "standard", d)
-            bb.data.setVar("BOOTSTRAP", "t", d)
+            bb.data.setVar("BOOTSTRAP", "yocto/standard/" + bb.data.expand("${MACHINE}",d), d)
 }
 
 do_patch() {
@@ -57,6 +57,11 @@ do_patch() {
        fi
 
        kbranch=${KBRANCH}
+       if [ -n "${BOOTSTRAP}" ]; then
+           # switch from a generic to a specific branch
+           kbranch=${BOOTSTRAP}
+       fi
+
 
        # simply ensures that a branch of the right name has been created
        createme ${ARCH} ${kbranch} ${defconfig}