summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/build.py23
-rw-r--r--bitbake/lib/bb/parse/ast.py3
2 files changed, 14 insertions, 12 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py
index 764163f37f..948c3951f4 100644
--- a/bitbake/lib/bb/build.py
+++ b/bitbake/lib/bb/build.py
@@ -686,7 +686,7 @@ def stampfile(taskname, d, file_name = None):
686 """ 686 """
687 return stamp_internal(taskname, d, file_name) 687 return stamp_internal(taskname, d, file_name)
688 688
689def add_tasks(tasklist, deltasklist, d): 689def add_tasks(tasklist, d):
690 task_deps = d.getVar('_task_deps', False) 690 task_deps = d.getVar('_task_deps', False)
691 if not task_deps: 691 if not task_deps:
692 task_deps = {} 692 task_deps = {}
@@ -698,9 +698,6 @@ def add_tasks(tasklist, deltasklist, d):
698 for task in tasklist: 698 for task in tasklist:
699 task = d.expand(task) 699 task = d.expand(task)
700 700
701 if task in deltasklist:
702 continue
703
704 d.setVarFlag(task, 'task', 1) 701 d.setVarFlag(task, 'task', 1)
705 702
706 if not task in task_deps['tasks']: 703 if not task in task_deps['tasks']:
@@ -738,7 +735,7 @@ def addtask(task, before, after, d):
738 735
739 d.setVarFlag(task, "task", 1) 736 d.setVarFlag(task, "task", 1)
740 bbtasks = d.getVar('__BBTASKS', False) or [] 737 bbtasks = d.getVar('__BBTASKS', False) or []
741 if not task in bbtasks: 738 if task not in bbtasks:
742 bbtasks.append(task) 739 bbtasks.append(task)
743 d.setVar('__BBTASKS', bbtasks) 740 d.setVar('__BBTASKS', bbtasks)
744 741
@@ -760,8 +757,14 @@ def deltask(task, d):
760 if task[:3] != "do_": 757 if task[:3] != "do_":
761 task = "do_" + task 758 task = "do_" + task
762 759
763 bbtasks = d.getVar('__BBDELTASKS', False) or [] 760 bbtasks = d.getVar('__BBTASKS', False) or []
764 if not task in bbtasks: 761 if task in bbtasks:
765 bbtasks.append(task) 762 bbtasks.remove(task)
766 d.setVar('__BBDELTASKS', bbtasks) 763 d.setVar('__BBTASKS', bbtasks)
767 764
765 d.delVarFlag(task, 'deps')
766 for bbtask in d.getVar('__BBTASKS', False) or []:
767 deps = d.getVarFlag(bbtask, 'deps') or []
768 if task in deps:
769 deps.remove(task)
770 d.setVarFlag(bbtask, 'deps', deps)
diff --git a/bitbake/lib/bb/parse/ast.py b/bitbake/lib/bb/parse/ast.py
index bd42bd3a7a..11db1801b3 100644
--- a/bitbake/lib/bb/parse/ast.py
+++ b/bitbake/lib/bb/parse/ast.py
@@ -330,8 +330,7 @@ def finalize(fn, d, variant = None):
330 bb.data.update_data(d) 330 bb.data.update_data(d)
331 331
332 tasklist = d.getVar('__BBTASKS', False) or [] 332 tasklist = d.getVar('__BBTASKS', False) or []
333 deltasklist = d.getVar('__BBDELTASKS', False) or [] 333 bb.build.add_tasks(tasklist, d)
334 bb.build.add_tasks(tasklist, deltasklist, d)
335 334
336 bb.parse.siggen.finalise(fn, d, variant) 335 bb.parse.siggen.finalise(fn, d, variant)
337 336