classes/patch: switch to new bb.build.tasksbetween() function
A generic version of the code to work out the tasks between two tasks (based on the code here) has been added to bb.build, so use that instead. (From OE-Core rev: 1226e2eb2678407c315befd5700e653602e616a0) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
4b870ed47b
commit
1a9f33ccc7
|
@ -12,25 +12,7 @@ inherit terminal
|
||||||
|
|
||||||
python () {
|
python () {
|
||||||
if d.getVar('PATCHTOOL') == 'git' and d.getVar('PATCH_COMMIT_FUNCTIONS') == '1':
|
if d.getVar('PATCHTOOL') == 'git' and d.getVar('PATCH_COMMIT_FUNCTIONS') == '1':
|
||||||
tasks = list(filter(lambda k: d.getVarFlag(k, "task"), d.keys()))
|
extratasks = bb.build.tasksbetween('do_unpack', 'do_patch', d)
|
||||||
extratasks = []
|
|
||||||
def follow_chain(task, endtask, chain=None):
|
|
||||||
if not chain:
|
|
||||||
chain = []
|
|
||||||
chain.append(task)
|
|
||||||
for othertask in tasks:
|
|
||||||
if othertask == task:
|
|
||||||
continue
|
|
||||||
if task == endtask:
|
|
||||||
for ctask in chain:
|
|
||||||
if ctask not in extratasks:
|
|
||||||
extratasks.append(ctask)
|
|
||||||
else:
|
|
||||||
deps = d.getVarFlag(othertask, 'deps', False)
|
|
||||||
if task in deps:
|
|
||||||
follow_chain(othertask, endtask, chain)
|
|
||||||
chain.pop()
|
|
||||||
follow_chain('do_unpack', 'do_patch')
|
|
||||||
try:
|
try:
|
||||||
extratasks.remove('do_unpack')
|
extratasks.remove('do_unpack')
|
||||||
except ValueError:
|
except ValueError:
|
||||||
|
|
Loading…
Reference in New Issue