summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2009-05-11 22:41:17 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2009-05-11 22:41:17 +0100
commit107a9da00640a9e086a8608c20aee48aefd92893 (patch)
tree97ace0c2103993bc780b221619391edb5e797432 /bitbake
parent1ca980646deb13b2cf85b17e78de9faba0191dbf (diff)
downloadpoky-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__.py1
-rw-r--r--bitbake/lib/bb/cooker.py19
-rw-r--r--bitbake/lib/bb/data.py2
-rw-r--r--bitbake/lib/bb/parse/parse_py/BBHandler.py6
-rw-r--r--bitbake/lib/bb/parse/parse_py/ConfHandler.py7
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
1130if __name__ == "__main__": 1130if __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):
553def _test(): 553def _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
559if __name__ == "__main__": 561if __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)