[oe] [PATCH] bitbake.conf, freeze.inc: Add version lockdown implementation and use it by default.

Denys Dmytriyenko denis at denix.org
Mon May 18 18:58:26 UTC 2009


On Mon, May 18, 2009 at 11:00:11AM -0700, Christopher Larson wrote:
> Denys Dmytriyenko wrote:
>> On Wed, May 13, 2009 at 05:25:46PM -0400, Denys Dmytriyenko wrote:
>>   
>>> On Wed, May 13, 2009 at 01:53:18PM -0700, Chris Larson wrote:
>>>     
>>>> For each recipe which completes a task successfully, this emits the 
>>>> current
>>>> version into ${TMPDIR}/versions.conf as a PREFERRED_VERSION line.
>>>> ${TMPDIR}/versions.conf and conf/versions.conf are automatically 
>>>> included,
>>>> in that order, in subsequent builds, to provide more deterinistic builds 
>>>> by
>>>> default, and to let the user make the lockdown persist via a simple cp
>>>> command.
>>>>
>>>> Assuming that the latest ncurses in the recipes is 5.7, and that 5.7 is
>>>> preferred over 5.3 by default given any distro version preferences, if 
>>>> they
>>>> exist, the following are examples of its behavior:
>>>>
>>>> $ rm -rf tmp
>>>> $ bitbake ncurses-5.3
>>>> $ bitbake -c clean ncurses
>>>> $ bitbake ncurses # builds ncurses 5.3
>>>>
>>>> $ cp tmp/versions.conf conf/
>>>> $ rm -rf tmp
>>>> $ bitbake ncurses # builds ncurses 5.3
>>>>       
>>> Very nice! Let me try it here...
>>>
>>>     
>>>> Signed-off-by: Chris Larson <clarson at mvista.com>
>>>>       
>>
>> Chris,
>>
>> Will you be sending an updated version of the patch, which handles TMPDIR 
>> overwritten in local.conf, as we discussed last week? Thanks.
> Yep, I'm going to make the thing opt-in rather than default, since 
> apparently not everyone wants it as default behavior, and change it to use 
> ?= assignments, and leave it at that.

Hmm, I'm using the updated version of freeze.inc with weak assignments and 
there seems to be an issue with picking the correct version. Or maybe I'm 
doing something wrong...

I have a customized u-boot recipe, based on 1.3.4, which sets PV as "1.3.4" 
and PR as "myX.Y.Z". Having 2 revisions of the above recipe with X.Y.Z = 
"2.0.0" and "2.1.0", by default BitBake picks the correct one with higher PR - 
i.e. "1.3.4-my2.1.0". Then when freeze.inc sets PREFERRED_VERSION to "1.3.4", 
it starts picking the lowest version, i.e. "1.3.4-my2.0.0". What gives? Any 
ideas?

-- 
Denys




More information about the Openembedded-devel mailing list