diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-05-27 15:13:54 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-05-27 17:55:50 +0100 |
commit | 00c71132d5a326546bbb7fdf173995c76a9e9803 (patch) | |
tree | 25c2d40631e52ed76f9bf19d045092f1f9903718 /bitbake/lib/bb | |
parent | 65b5553278980c3de62b835b034b1fcaf5d6db23 (diff) | |
download | poky-00c71132d5a326546bbb7fdf173995c76a9e9803.tar.gz |
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>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r-- | bitbake/lib/bb/cooker.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 8b144fbee4..9ce64dbca3 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -957,16 +957,21 @@ class BBCooker: | |||
957 | collectlog.error("no recipe files to build, check your BBPATH and BBFILES?") | 957 | collectlog.error("no recipe files to build, check your BBPATH and BBFILES?") |
958 | bb.event.fire(CookerExit(), self.configuration.event_data) | 958 | bb.event.fire(CookerExit(), self.configuration.event_data) |
959 | 959 | ||
960 | newfiles = set() | 960 | # Can't use set here as order is important |
961 | newfiles = [] | ||
961 | for f in files: | 962 | for f in files: |
962 | if os.path.isdir(f): | 963 | if os.path.isdir(f): |
963 | dirfiles = self.find_bbfiles(f) | 964 | dirfiles = self.find_bbfiles(f) |
964 | newfiles.update(dirfiles) | 965 | for g in dirfiles: |
966 | if g not in newfiles: | ||
967 | newfiles.append(g) | ||
965 | else: | 968 | else: |
966 | globbed = glob.glob(f) | 969 | globbed = glob.glob(f) |
967 | if not globbed and os.path.exists(f): | 970 | if not globbed and os.path.exists(f): |
968 | globbed = [f] | 971 | globbed = [f] |
969 | newfiles.update(globbed) | 972 | for g in globbed: |
973 | if g not in newfiles: | ||
974 | newfiles.append(g) | ||
970 | 975 | ||
971 | bbmask = bb.data.getVar('BBMASK', self.configuration.data, 1) | 976 | bbmask = bb.data.getVar('BBMASK', self.configuration.data, 1) |
972 | 977 | ||