good work to track this tricky stuff down. :-) > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of > Dexuan Cui > Sent: Friday, April 08, 2011 6:00 PM > To: [email protected] > Subject: [OE-core] [PATCH 1/2] sstate: ensure an ordered mapping between > SSTATETASKS and SSTATETASKNAMES > > From: Dexuan Cui <[email protected]> > > Fix [YOCTO #964] > > A recent commit 25a6e5f9(sstate: use only unique set of SSTATETASK) breaks > the ordered mapping between SSTATETASKS and SSTATETASKNAMES. As a > result, > in sstate_cleanall, the line > taskname = tasks[namemap.index(name)] > gets an incorrect result, and "bitbake -c cleanall" doesn't really remove > the files populalted by do_populate_sysroot. > > Signed-off-by: Dexuan Cui <[email protected]> > --- > meta/classes/sstate.bbclass | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass > index cc0b866..be650c4 100644 > --- a/meta/classes/sstate.bbclass > +++ b/meta/classes/sstate.bbclass > @@ -39,8 +39,10 @@ python () { > scan_cmd = "grep -Irl ${STAGING_DIR} ${SSTATE_BUILDDIR}" > bb.data.setVar('SSTATE_SCAN_CMD', scan_cmd, d) > > + unique_tasks = set((bb.data.getVar('SSTATETASKS', d, True) or > "").split()) > + d.setVar('SSTATETASKS', " ".join(unique_tasks)) > namemap = [] > - for task in set((bb.data.getVar('SSTATETASKS', d, True) or "").split()): > + for task in unique_tasks: > namemap.append(bb.data.getVarFlag(task, 'sstate-name', d)) > funcs = bb.data.getVarFlag(task, 'prefuncs', d) or "" > funcs = "sstate_task_prefunc " + funcs > @@ -200,7 +202,7 @@ def sstate_clean_cachefile(ss, d): > oe.path.remove(sstatepkgfile) > > def sstate_clean_cachefiles(d): > - for task in set((bb.data.getVar('SSTATETASKS', d, True) or "").split()): > + for task in (bb.data.getVar('SSTATETASKS', d, True) or "").split(): > ss = sstate_state_fromvars(d, task[3:]) > sstate_clean_cachefile(ss, d) > > -- > 1.7.2 > > > _______________________________________________ > Openembedded-core mailing list > [email protected] > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
_______________________________________________ Openembedded-core mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
