diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2009-05-11 22:41:17 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2009-05-11 22:41:17 +0100 |
commit | 107a9da00640a9e086a8608c20aee48aefd92893 (patch) | |
tree | 97ace0c2103993bc780b221619391edb5e797432 /bitbake | |
parent | 1ca980646deb13b2cf85b17e78de9faba0191dbf (diff) | |
download | poky-107a9da00640a9e086a8608c20aee48aefd92893.tar.gz |
bitbake: Merge further fixes from upstream 1.8 branch
* Make the test functionality work
* Optimise BBPATH handling when changing directory
* Optimise file globing for BBFILES
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/__init__.py | 1 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 19 | ||||
-rw-r--r-- | bitbake/lib/bb/data.py | 2 | ||||
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/BBHandler.py | 6 | ||||
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/ConfHandler.py | 7 |
5 files changed, 21 insertions, 14 deletions
diff --git a/bitbake/lib/bb/__init__.py b/bitbake/lib/bb/__init__.py index 7d01d52b64..b8f7c7f59e 100644 --- a/bitbake/lib/bb/__init__.py +++ b/bitbake/lib/bb/__init__.py | |||
@@ -1129,4 +1129,5 @@ def dep_opconvert(mysplit, myuse): | |||
1129 | 1129 | ||
1130 | if __name__ == "__main__": | 1130 | if __name__ == "__main__": |
1131 | import doctest, bb | 1131 | import doctest, bb |
1132 | bb.msg.set_debug_level(0) | ||
1132 | doctest.testmod(bb) | 1133 | doctest.testmod(bb) |
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 9f8c71ff13..610824ab21 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -281,13 +281,13 @@ class BBCooker: | |||
281 | print >> depends_file, '"%s" -> "%s"' % (pn, depend) | 281 | print >> depends_file, '"%s" -> "%s"' % (pn, depend) |
282 | rdepends = self.status.rundeps[fn] | 282 | rdepends = self.status.rundeps[fn] |
283 | for package in rdepends: | 283 | for package in rdepends: |
284 | for rdepend in rdepends[package]: | 284 | for rdepend in re.findall("([\w.-]+)(\ \(.+\))?", rdepends[package]): |
285 | print >> depends_file, '"%s" -> "%s" [style=dashed]' % (package, rdepend) | 285 | print >> depends_file, '"%s" -> "%s%s" [style=dashed]' % (package, rdepend[0], rdepend[1]) |
286 | packages.append(package) | 286 | packages.append(package) |
287 | rrecs = self.status.runrecs[fn] | 287 | rrecs = self.status.runrecs[fn] |
288 | for package in rrecs: | 288 | for package in rrecs: |
289 | for rdepend in rrecs[package]: | 289 | for rdepend in re.findall("([\w.-]+)(\ \(.+\))?", rrecs[package]): |
290 | print >> depends_file, '"%s" -> "%s" [style=dashed]' % (package, rdepend) | 290 | print >> depends_file, '"%s" -> "%s%s" [style=dashed]' % (package, rdepend[0], rdepend[1]) |
291 | if not package in packages: | 291 | if not package in packages: |
292 | packages.append(package) | 292 | packages.append(package) |
293 | for package in packages: | 293 | for package in packages: |
@@ -688,7 +688,11 @@ class BBCooker: | |||
688 | if dirfiles: | 688 | if dirfiles: |
689 | newfiles += dirfiles | 689 | newfiles += dirfiles |
690 | continue | 690 | continue |
691 | newfiles += glob.glob(f) or [ f ] | 691 | else: |
692 | globbed = glob.glob(f) | ||
693 | if not globbed and os.path.exists(f): | ||
694 | globbed = [f] | ||
695 | newfiles += globbed | ||
692 | 696 | ||
693 | bbmask = bb.data.getVar('BBMASK', self.configuration.data, 1) | 697 | bbmask = bb.data.getVar('BBMASK', self.configuration.data, 1) |
694 | 698 | ||
@@ -701,9 +705,8 @@ class BBCooker: | |||
701 | bb.msg.fatal(bb.msg.domain.Collection, "BBMASK is not a valid regular expression.") | 705 | bb.msg.fatal(bb.msg.domain.Collection, "BBMASK is not a valid regular expression.") |
702 | 706 | ||
703 | finalfiles = [] | 707 | finalfiles = [] |
704 | for i in xrange( len( newfiles ) ): | 708 | for f in newfiles: |
705 | f = newfiles[i] | 709 | if bbmask_compiled.search(f): |
706 | if bbmask and bbmask_compiled.search(f): | ||
707 | bb.msg.debug(1, bb.msg.domain.Collection, "skipping masked file %s" % f) | 710 | bb.msg.debug(1, bb.msg.domain.Collection, "skipping masked file %s" % f) |
708 | masked += 1 | 711 | masked += 1 |
709 | continue | 712 | continue |
diff --git a/bitbake/lib/bb/data.py b/bitbake/lib/bb/data.py index cc08d69009..f424ac7a22 100644 --- a/bitbake/lib/bb/data.py +++ b/bitbake/lib/bb/data.py | |||
@@ -553,7 +553,9 @@ def inherits_class(klass, d): | |||
553 | def _test(): | 553 | def _test(): |
554 | """Start a doctest run on this module""" | 554 | """Start a doctest run on this module""" |
555 | import doctest | 555 | import doctest |
556 | import bb | ||
556 | from bb import data | 557 | from bb import data |
558 | bb.msg.set_debug_level(0) | ||
557 | doctest.testmod(data) | 559 | doctest.testmod(data) |
558 | 560 | ||
559 | if __name__ == "__main__": | 561 | if __name__ == "__main__": |
diff --git a/bitbake/lib/bb/parse/parse_py/BBHandler.py b/bitbake/lib/bb/parse/parse_py/BBHandler.py index 97786c4202..d13428aa0b 100644 --- a/bitbake/lib/bb/parse/parse_py/BBHandler.py +++ b/bitbake/lib/bb/parse/parse_py/BBHandler.py | |||
@@ -155,12 +155,6 @@ def handle(fn, d, include = 0): | |||
155 | f = open(fn,'r') | 155 | f = open(fn,'r') |
156 | abs_fn = fn | 156 | abs_fn = fn |
157 | 157 | ||
158 | if ext != ".bbclass": | ||
159 | dname = os.path.dirname(abs_fn) | ||
160 | if bbpath[0] != dname: | ||
161 | bbpath.insert(0, dname) | ||
162 | data.setVar('BBPATH', ":".join(bbpath), d) | ||
163 | |||
164 | if include: | 158 | if include: |
165 | bb.parse.mark_dependency(d, abs_fn) | 159 | bb.parse.mark_dependency(d, abs_fn) |
166 | 160 | ||
diff --git a/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/bitbake/lib/bb/parse/parse_py/ConfHandler.py index f8a49689e2..c9f1ea13fb 100644 --- a/bitbake/lib/bb/parse/parse_py/ConfHandler.py +++ b/bitbake/lib/bb/parse/parse_py/ConfHandler.py | |||
@@ -102,6 +102,13 @@ def include(oldfn, fn, data, error_out): | |||
102 | fn = bb.data.expand(fn, data) | 102 | fn = bb.data.expand(fn, data) |
103 | oldfn = bb.data.expand(oldfn, data) | 103 | oldfn = bb.data.expand(oldfn, data) |
104 | 104 | ||
105 | if not os.path.isabs(fn): | ||
106 | dname = os.path.dirname(oldfn) | ||
107 | bbpath = "%s:%s" % (dname, bb.data.getVar("BBPATH", data, 1)) | ||
108 | abs_fn = bb.which(bbpath, fn) | ||
109 | if abs_fn: | ||
110 | fn = abs_fn | ||
111 | |||
105 | from bb.parse import handle | 112 | from bb.parse import handle |
106 | try: | 113 | try: |
107 | ret = handle(fn, data, True) | 114 | ret = handle(fn, data, True) |