[OE-core] [PATCH 1/1] buildhistory.bbclass: always record PKG, PKGE, PKGV and PKGR

Paul Eggleton paul.eggleton at linux.intel.com
Tue Oct 15 21:32:50 UTC 2013


On Tuesday 15 October 2013 15:58:17 Randy MacLeod wrote:
> On 13-10-01 01:28 PM, Mark Hatle wrote:
> > On 9/30/13 11:26 AM, Paul Eggleton wrote:
> >> On Thursday 26 September 2013 13:23:32 Qi.Chen at windriver.com wrote:
> >>> From: Chen Qi <Qi.Chen at windriver.com>
> >>> 
> >>> The buildhistory.bbclass always records PV instead of PKGV. However,
> >>> the buildhistory-diff script treats PKGV as a monitored variable
> >>> instead of PV.
> >>> 
> >>> If a recipe's PV changes, for example, hello_1.0.bb is renamed to
> >>> hello_2.0.bb, then buildhistory-diff reports nothing because PV is
> >>> not monitored and PKGV is not recorded.
> >>> 
> >>> So the buildhistory.bbclass should always record PKGV no matter it
> >>> equals to PV or not.
> >>> 
> >>> The same logic applies to PKG, PKGE and PKGR.
> >>> 
> >>> [YOCTO #5263]
> >>> 
> >>> Signed-off-by: Chen Qi <Qi.Chen at windriver.com>
> >>> ---
> >>> 
> >>>   meta/classes/buildhistory.bbclass |    8 ++++----
> >>>   1 file changed, 4 insertions(+), 4 deletions(-)
> >>> 
> >>> diff --git a/meta/classes/buildhistory.bbclass
> >>> b/meta/classes/buildhistory.bbclass index 3da03c8..cea917c 100644
> >>> --- a/meta/classes/buildhistory.bbclass
> >>> +++ b/meta/classes/buildhistory.bbclass
> >>> 
> >>> @@ -277,10 +277,10 @@ def write_pkghistory(pkginfo, d):
> >>>           f.write("PR = %s\n" %  pkginfo.pr)
> >>>           
> >>>           pkgvars = {}
> >>> 
> >>> -        pkgvars['PKG'] = pkginfo.pkg if pkginfo.pkg != pkginfo.name
> >>> else ''
> >>> -        pkgvars['PKGE'] = pkginfo.pkge if pkginfo.pkge != pkginfo.pe
> >>> else
> >>> '' -        pkgvars['PKGV'] = pkginfo.pkgv if pkginfo.pkgv != pkginfo.pv
> >>> else '' -        pkgvars['PKGR'] = pkginfo.pkgr if pkginfo.pkgr !=
> >>> pkginfo.pr else '' +        pkgvars['PKG'] = pkginfo.pkg
> >>> +        pkgvars['PKGE'] = pkginfo.pkge
> >>> +        pkgvars['PKGV'] = pkginfo.pkgv
> >>> +        pkgvars['PKGR'] = pkginfo.pkgr
> >>> 
> >>>           for pkgvar in pkgvars:
> >>>               val = pkgvars[pkgvar]
> >> 
> >>>               if val:
> >> Please see my comment on the bug (just added):
> >> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5263
> > 
> > Already added to the bug, but here so people not watching the bug can see:
> > 
> > I believe this change is requested because otherwise there is no way to
> > detect a package upgrade/uprev when using buildhistory.  This type of
> > upgrade can happy when comparing no-GPLv3 and GPLv3 builds -- or just
> > simple software updates when a layer gets updated.
> > 
> > We want to use the buildhistory from one build to the next to look for
> > changes that have occurred that may be unexpected.
> > 
> > --Mark
> 
> Paul,
> Any comments?
> Qi replied to your comment in bugzilla.
> 
> Qi,
> Perhaps you need to post an example showing how this change
> helps for a package upgrade and compare it to what happens when
> the patch is not applied.

My apologies, I've been meaning to get back to this. I'll run some tests 
tomorrow so we can get a definitive resolution.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the Openembedded-core mailing list