[meta-freescale] Linux kernel recipe override question
John Weber
rjohnweber at gmail.com
Mon Feb 24 19:59:41 PST 2014
Hi Robin,
On 2/24/14, 2:27 PM, Robin Findley wrote:
> On 2014-02-24 12:51, John Weber wrote:
>> Here is a question someone might be able to quickly answer.
>>
>> I want to be able to override the SRCREV, SRCBRANCH, and the git repository
> for
>> the kernel recipe in local.conf. I like to do this so that I can do local
>> hacking on a kernel without having to edit the recipe files themselves, and
> I
>> find that managing local.conf is easier when I'm changing SRCREVs a lot.
>>
>> I've been able to override SRCBRANCH by doing this:
>>
>> In recipes-kernel/linux/linux-wandboard.inc:
>>
>> SRCBRANCH ??= "master"
>>
>> The default is set in recipes-kernel/linux/linux-wandboard_3.10.17.bb:
>>
>> SRCBRANCH ?= "<the-default-branch>"
>>
>> Then, in local.conf, I can override it:
>>
>> SRCBRANCH_linux-wandboard = "<my-local-hacking-branch>"
>>
>> This works fine for SRCBRANCH. If I do the same thing with SRCREV, it
> doesn't
>> seem to work. I've done this:
>>
>> In linux-wandboard_3.10.17.bb:
>>
>> SRCREV ??= "<default big long commit id>"
>>
>> In local.conf:
>>
>> SRCREV_linux-wandboard = "<my local branch commit id>"
>>
>> I always get the checkout of the SRCREV assignment done in the recipe file,
> not
>> the one I set in local.conf.
>>
>> Any idea why? The only thing I can think of is that SRCREV is evaluated
> completely before
>> local.conf settings are evaluated.
>
> John, you were close. Here's an example from my local.conf:
>
> PREFERRED_VERSION_linux-wandboard = "3.10.17"
> SRCBRANCH_pn-linux-wandboard = "wandboard_imx_3.10.17_1.0.0_beta_test"
> SRCREV_pn-linux-wandboard = "4299c87fd4d46fd786d1600c57986b1fe164138a"
Beautiful. Thanks for the help. This works.
>
> You may want to double-check if your SRCBRANCH override really did work as you
> expected. I think you need the "_pn-".
Yes. In my setup I had modified the assignment of SRCBRANCH to the weakest one
(??=) in the linux-wandboard.inc file and then set it using a stronger one (?=)
in the recipe (.bb) file, and then finally set it using the hardest one (=) in
the local.conf. I certainly do not have a solid foundation in these assignment
operators. :-)
Using this method I was able to remove those other changes, so this is all good
stuff. What does the _pn- do? In other recipes it serves as a short reference
for packagename, I think.
>
> -Robin
>
More information about the meta-freescale
mailing list