summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/build.py
diff options
context:
space:
mode:
authorChristopher Larson <chris_larson@mentor.com>2015-08-03 12:20:43 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-03 12:33:08 +0100
commit383450c78a46060de9a483d4cce5955136dca807 (patch)
treeaa439a580c052e3dec0fcda39ae0dbe7772d4dc1 /bitbake/lib/bb/build.py
parent71b0568fa43285f0946fae93fb43cea5f3bbecec (diff)
downloadpoky-383450c78a46060de9a483d4cce5955136dca807.tar.gz
bitbake: build: delete tasks thoroughly
We want addtask to be able to bring back a deleted task, but we don't want its previous dependencies to come back with it, so rather than marking a task as deleted and then skipping tasks marked as such, actually delete the task and its dependency information in deltask. While we're in that part of the code, also fix a couple 'not foo in bar' instances to 'foo not in bar', which is preferred in python. (Bitbake rev: 94b3f3d6bdfbfa47f7eb3c3de64940a145b2ddd1) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/build.py')
-rw-r--r--bitbake/lib/bb/build.py23
1 files changed, 13 insertions, 10 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)