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
committed by Saul Wold
parent dd7e260fe3
commit 9425e8eee1

View File

@@ -941,16 +941,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)