diff options
-rw-r--r-- | bitbake/ChangeLog | 9 | ||||
-rwxr-xr-x | bitbake/bin/bitbake | 2 | ||||
-rw-r--r-- | bitbake/lib/bb/__init__.py | 2 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 4 | ||||
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/BBHandler.py | 6 | ||||
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 8 | ||||
-rw-r--r-- | bitbake/lib/bb/taskdata.py | 6 |
7 files changed, 26 insertions, 11 deletions
diff --git a/bitbake/ChangeLog b/bitbake/ChangeLog index 0cb85db870..b254ce4ab6 100644 --- a/bitbake/ChangeLog +++ b/bitbake/ChangeLog | |||
@@ -1,8 +1,17 @@ | |||
1 | Changes in Bitbake 1.8.x: | ||
2 | - Make sure __inherit_cache is updated before calling include() (from Michael Krelin) | ||
3 | - Fix bug when target was in ASSUME_PROVIDED (#2236) | ||
4 | - Raise ParseError for filenames with multiple underscores instead of infinitely looping (#2062) | ||
5 | - Fix invalid regexp in BBMASK error handling (missing import) (#1124) | ||
6 | - Don't run build sanity checks on incomplete builds | ||
7 | - Promote certain warnings from debug to note 2 level | ||
8 | |||
1 | Changes in Bitbake 1.8.2: | 9 | Changes in Bitbake 1.8.2: |
2 | - Catch truncated cache file errors | 10 | - Catch truncated cache file errors |
3 | - Add PE (Package Epoch) support from Philipp Zabel (pH5) | 11 | - Add PE (Package Epoch) support from Philipp Zabel (pH5) |
4 | - Add code to handle inter-task dependencies | 12 | - Add code to handle inter-task dependencies |
5 | - Allow operations other than assignment on flag variables | 13 | - Allow operations other than assignment on flag variables |
14 | - Fix cache errors when generation dotGraphs | ||
6 | 15 | ||
7 | Changes in Bitbake 1.8.0: | 16 | Changes in Bitbake 1.8.0: |
8 | - Release 1.7.x as a stable series | 17 | - Release 1.7.x as a stable series |
diff --git a/bitbake/bin/bitbake b/bitbake/bin/bitbake index 70a862a815..b96b6b111c 100755 --- a/bitbake/bin/bitbake +++ b/bitbake/bin/bitbake | |||
@@ -27,7 +27,7 @@ sys.path.insert(0,os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), 'l | |||
27 | import bb | 27 | import bb |
28 | from bb import cooker | 28 | from bb import cooker |
29 | 29 | ||
30 | __version__ = "1.8.1" | 30 | __version__ = "1.8.3" |
31 | 31 | ||
32 | #============================================================================# | 32 | #============================================================================# |
33 | # BBOptions | 33 | # BBOptions |
diff --git a/bitbake/lib/bb/__init__.py b/bitbake/lib/bb/__init__.py index e34122a61e..6ce8e7949a 100644 --- a/bitbake/lib/bb/__init__.py +++ b/bitbake/lib/bb/__init__.py | |||
@@ -21,7 +21,7 @@ | |||
21 | # with this program; if not, write to the Free Software Foundation, Inc., | 21 | # with this program; if not, write to the Free Software Foundation, Inc., |
22 | # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | 22 | # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
23 | 23 | ||
24 | __version__ = "1.8.1" | 24 | __version__ = "1.8.3" |
25 | 25 | ||
26 | __all__ = [ | 26 | __all__ = [ |
27 | 27 | ||
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 4b2a906133..1868b268a3 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -26,7 +26,7 @@ import sys, os, getopt, glob, copy, os.path, re, time | |||
26 | import bb | 26 | import bb |
27 | from bb import utils, data, parse, event, cache, providers, taskdata, runqueue | 27 | from bb import utils, data, parse, event, cache, providers, taskdata, runqueue |
28 | from sets import Set | 28 | from sets import Set |
29 | import itertools | 29 | import itertools, sre_constants |
30 | 30 | ||
31 | parsespin = itertools.cycle( r'|/-\\' ) | 31 | parsespin = itertools.cycle( r'|/-\\' ) |
32 | 32 | ||
@@ -201,7 +201,7 @@ class BBCooker: | |||
201 | fnid = rq.runq_fnid[task] | 201 | fnid = rq.runq_fnid[task] |
202 | fn = taskdata.fn_index[fnid] | 202 | fn = taskdata.fn_index[fnid] |
203 | pn = self.status.pkg_fn[fn] | 203 | pn = self.status.pkg_fn[fn] |
204 | version = self.bb_cache.getVar('PV', fn, True ) + '-' + self.bb_cache.getVar('PR', fn, True) | 204 | version = "%s:%s-%s" % self.status.pkg_pepvpr[fn] |
205 | print >> tdepends_file, '"%s.%s" [label="%s %s\\n%s\\n%s"]' % (pn, taskname, pn, taskname, version, fn) | 205 | print >> tdepends_file, '"%s.%s" [label="%s %s\\n%s\\n%s"]' % (pn, taskname, pn, taskname, version, fn) |
206 | for dep in rq.runq_depends[task]: | 206 | for dep in rq.runq_depends[task]: |
207 | depfn = taskdata.fn_index[rq.runq_fnid[dep]] | 207 | depfn = taskdata.fn_index[rq.runq_fnid[dep]] |
diff --git a/bitbake/lib/bb/parse/parse_py/BBHandler.py b/bitbake/lib/bb/parse/parse_py/BBHandler.py index 2c39316325..20fa60355e 100644 --- a/bitbake/lib/bb/parse/parse_py/BBHandler.py +++ b/bitbake/lib/bb/parse/parse_py/BBHandler.py | |||
@@ -72,9 +72,9 @@ def inherit(files, d): | |||
72 | if not file in __inherit_cache: | 72 | if not file in __inherit_cache: |
73 | bb.msg.debug(2, bb.msg.domain.Parsing, "BB %s:%d: inheriting %s" % (fn, lineno, file)) | 73 | bb.msg.debug(2, bb.msg.domain.Parsing, "BB %s:%d: inheriting %s" % (fn, lineno, file)) |
74 | __inherit_cache.append( file ) | 74 | __inherit_cache.append( file ) |
75 | data.setVar('__inherit_cache', __inherit_cache, d) | ||
75 | include(fn, file, d, "inherit") | 76 | include(fn, file, d, "inherit") |
76 | data.setVar('__inherit_cache', __inherit_cache, d) | 77 | __inherit_cache = data.getVar('__inherit_cache', d) or [] |
77 | |||
78 | 78 | ||
79 | def handle(fn, d, include = 0): | 79 | def handle(fn, d, include = 0): |
80 | global __func_start_regexp__, __inherit_regexp__, __export_func_regexp__, __addtask_regexp__, __addhandler_regexp__, __infunc__, __body__, __residue__ | 80 | global __func_start_regexp__, __inherit_regexp__, __export_func_regexp__, __addtask_regexp__, __addhandler_regexp__, __infunc__, __body__, __residue__ |
@@ -377,6 +377,8 @@ def vars_from_file(mypkg, d): | |||
377 | myfile = os.path.splitext(os.path.basename(mypkg)) | 377 | myfile = os.path.splitext(os.path.basename(mypkg)) |
378 | parts = myfile[0].split('_') | 378 | parts = myfile[0].split('_') |
379 | __pkgsplit_cache__[mypkg] = parts | 379 | __pkgsplit_cache__[mypkg] = parts |
380 | if len(parts) > 3: | ||
381 | raise ParseError("Unable to generate default variables from the filename: %s (too many underscores)" % mypkg) | ||
380 | exp = 3 - len(parts) | 382 | exp = 3 - len(parts) |
381 | tmplist = [] | 383 | tmplist = [] |
382 | while exp != 0: | 384 | while exp != 0: |
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index 059f800b65..83c3ccf882 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py | |||
@@ -91,6 +91,10 @@ class RunQueue: | |||
91 | 91 | ||
92 | taskData = self.taskData | 92 | taskData = self.taskData |
93 | 93 | ||
94 | if len(taskData.tasks_name) == 0: | ||
95 | # Nothing to do | ||
96 | return | ||
97 | |||
94 | bb.msg.note(1, bb.msg.domain.RunQueue, "Preparing Runqueue") | 98 | bb.msg.note(1, bb.msg.domain.RunQueue, "Preparing Runqueue") |
95 | 99 | ||
96 | for task in range(len(taskData.tasks_name)): | 100 | for task in range(len(taskData.tasks_name)): |
@@ -536,8 +540,8 @@ class RunQueue: | |||
536 | self.stats.taskFailed() | 540 | self.stats.taskFailed() |
537 | del self.build_pids[result[0]] | 541 | del self.build_pids[result[0]] |
538 | self.active_builds = self.active_builds - 1 | 542 | self.active_builds = self.active_builds - 1 |
539 | if len(self.failed_fnids) > 0: | 543 | bb.msg.note(1, bb.msg.domain.RunQueue, "Tasks Summary: Attempted %d tasks of which %d didn't need to be rerun and %d failed." % (self.stats.completed, self.stats.skipped, self.stats.failed)) |
540 | return self.failed_fnids | 544 | return self.failed_fnids |
541 | except KeyboardInterrupt: | 545 | except KeyboardInterrupt: |
542 | bb.msg.note(1, bb.msg.domain.RunQueue, "Sending SIGINT to remaining %s tasks" % self.active_builds) | 546 | bb.msg.note(1, bb.msg.domain.RunQueue, "Sending SIGINT to remaining %s tasks" % self.active_builds) |
543 | for k, v in self.build_pids.iteritems(): | 547 | for k, v in self.build_pids.iteritems(): |
diff --git a/bitbake/lib/bb/taskdata.py b/bitbake/lib/bb/taskdata.py index 3d3adfdbda..fdd7848bb7 100644 --- a/bitbake/lib/bb/taskdata.py +++ b/bitbake/lib/bb/taskdata.py | |||
@@ -348,7 +348,7 @@ class TaskData: | |||
348 | return | 348 | return |
349 | 349 | ||
350 | if not item in dataCache.providers: | 350 | if not item in dataCache.providers: |
351 | bb.msg.debug(1, bb.msg.domain.Provider, "No providers of build target %s (for %s)" % (item, self.get_dependees_str(item))) | 351 | bb.msg.note(2, bb.msg.domain.Provider, "No providers of build target %s (for %s)" % (item, self.get_dependees_str(item))) |
352 | bb.event.fire(bb.event.NoProvider(item, cfgData)) | 352 | bb.event.fire(bb.event.NoProvider(item, cfgData)) |
353 | raise bb.providers.NoProvider(item) | 353 | raise bb.providers.NoProvider(item) |
354 | 354 | ||
@@ -365,7 +365,7 @@ class TaskData: | |||
365 | eligible.remove(p) | 365 | eligible.remove(p) |
366 | 366 | ||
367 | if not eligible: | 367 | if not eligible: |
368 | bb.msg.debug(1, bb.msg.domain.Provider, "No providers of build target %s after filtering (for %s)" % (item, self.get_dependees_str(item))) | 368 | bb.msg.note(2, bb.msg.domain.Provider, "No providers of build target %s after filtering (for %s)" % (item, self.get_dependees_str(item))) |
369 | bb.event.fire(bb.event.NoProvider(item, cfgData)) | 369 | bb.event.fire(bb.event.NoProvider(item, cfgData)) |
370 | raise bb.providers.NoProvider(item) | 370 | raise bb.providers.NoProvider(item) |
371 | 371 | ||
@@ -503,7 +503,7 @@ class TaskData: | |||
503 | Mark a build target as failed (unbuildable) | 503 | Mark a build target as failed (unbuildable) |
504 | Trigger removal of any files that have this as a dependency | 504 | Trigger removal of any files that have this as a dependency |
505 | """ | 505 | """ |
506 | bb.msg.debug(1, bb.msg.domain.Provider, "Removing failed build target %s" % self.build_names_index[targetid]) | 506 | bb.msg.note(2, bb.msg.domain.Provider, "Removing failed build target %s" % self.build_names_index[targetid]) |
507 | self.failed_deps.append(targetid) | 507 | self.failed_deps.append(targetid) |
508 | dependees = self.get_dependees(targetid) | 508 | dependees = self.get_dependees(targetid) |
509 | for fnid in dependees: | 509 | for fnid in dependees: |