Bug 2046 - Make KBRANCH default to a valid branch (not KMACHINE)
Summary: Make KBRANCH default to a valid branch (not KMACHINE)
Status: VERIFIED FIXED
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: kernel (show other bugs)
Version: 1.3
Hardware: x86 Multiple
: Medium normal
Target Milestone: 1.3 M1
Assignee: Bruce Ashfield
QA Contact:
URL:
Whiteboard: (Development)Mostly done, needs to be...
Depends on:
Blocks:
 
Reported: 2012-03-01 22:10 UTC by Darren Hart
Modified: 2012-06-14 17:45 UTC (History)
3 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Darren Hart 2012-03-01 22:10:15 UTC
The current linux-yocto* recipes use a trick to define the KMACHINE and the KBRANCH together by specifying the branch in KMACHINE, and allowing the kernel tools to deduce the rest.

This results in forcing every bbappend to define the KBRANCH in addition to the KMACHINE (or also reusing the magic path as a KMACHINE).

Instead, bbappend writers shouldn't need to do anything more than define the KMACHINE in it's purest form, for example:

KMACHINE="fri2"

In order for this to work, the default KBRANCH from linux-yocto_3.0.bb (for example) needs to be:

KBRANCH="yocto/standard/base"

and not:

KBANCH="${KMACHINE}"

which would result in KBRANCH="fri2" and the do_validate_branch() task will fail (as fri2 is not a branch).

This is a rather invasive change which impacts every BSP. This needs to be done early in a release phase, marking for 1.3.
Comment 1 Darren Hart 2012-04-09 19:51:41 UTC
This should have been marked for 1.3, not 1.2. Bruce, iirc, this is already the case for the 3.3 development recipes / repository. Do I have that right?
Comment 2 Bruce Ashfield 2012-04-10 04:29:44 UTC
Correct. This is already done in the new tools and pending recipes.
Comment 3 Darren Hart 2012-05-17 16:32:42 UTC
Bruce, you've done the work here and are driving things, so I'm assigning to you.
Comment 4 Darren Hart 2012-06-14 16:39:58 UTC
For linux-yocto_3.4 this is now:
KBRANCH = "standard/base"

linux-yocto_3.2 is now:
KBRANCH = "standard/default/base"

linux-yocto_3.0 is now:
KBRANCH = "yocto/standard/base"

linux-yocto-tiny_3.2 is now:
KBRANCH = "standard/tiny"

linux-yocto-rt_3.2 is now:
KBRANCH = "standard/preempt-rt/base"

linux-yocto-rt_3.0 is now:
KBRANCH = "yocto/standard/preempt-rt/base"


These are all correct.

Bruce, this looks fixed to me.
Comment 5 Bruce Ashfield 2012-06-14 17:45:03 UTC
ack'd. This one is done. verified.