From 9425e8eee19a5a74a3aa35eb7e201c3a8e7fe8e6 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 27 May 2011 15:13:54 +0100 Subject: 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 (Bitbake rev: c12dd868368bdc3a4f800e075a30c67edca28d47) Signed-off-by: Richard Purdie --- bitbake/lib/bb/cooker.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index a1cd4d750e..707384aa68 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -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) -- cgit v1.2.3-54-g00ecf