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 | |
| 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>
| -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) |
