bitbake/cooker.py: Ensure BBFILES is processed in order

The files found by collect_bbfiles should be processed in order but due
to being processed using python's set(), the order was not being preserved.

Use a list instead as whilst the code is slightly more ugly, order
is preserved.

Addresses [YOCTO #1100]

Acked-by: Darren Hart <dvhart@linux.intel.com>
(Bitbake rev: c12dd868368bdc3a4f800e075a30c67edca28d47)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2011-05-27 15:13:54 +01:00
parent 65b5553278
commit 00c71132d5
1 changed files with 8 additions and 3 deletions

View File

@ -957,16 +957,21 @@ class BBCooker:
collectlog.error("no recipe files to build, check your BBPATH and BBFILES?")
bb.event.fire(CookerExit(), self.configuration.event_data)
newfiles = set()
# Can't use set here as order is important
newfiles = []
for f in files:
if os.path.isdir(f):
dirfiles = self.find_bbfiles(f)
newfiles.update(dirfiles)
for g in dirfiles:
if g not in newfiles:
newfiles.append(g)
else:
globbed = glob.glob(f)
if not globbed and os.path.exists(f):
globbed = [f]
newfiles.update(globbed)
for g in globbed:
if g not in newfiles:
newfiles.append(g)
bbmask = bb.data.getVar('BBMASK', self.configuration.data, 1)