61ed74a725
There is a race where do_clean tries to clean WORKDIR but there are logfiles written into ${T} by bitbake and this can lead to exceptions due to open files. The easiest solution is to redirect T to a different location for the do_clean task, hence avoiding the errors and also allowing the logfiles to be visible somewhere. ${LOG_DIR} seems an appropriate place for this. [YOCTO #2846] (From OE-Core rev: eef9d6c2d52f5264a6e7a9d882f8323f9793fd7f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
61 lines
1.4 KiB
Text
61 lines
1.4 KiB
Text
addtask listtasks
|
|
do_listtasks[nostamp] = "1"
|
|
python do_listtasks() {
|
|
import sys
|
|
# emit variables and shell functions
|
|
#bb.data.emit_env(sys.__stdout__, d)
|
|
# emit the metadata which isnt valid shell
|
|
for e in d.keys():
|
|
if d.getVarFlag(e, 'task'):
|
|
bb.plain("%s" % e)
|
|
}
|
|
|
|
CLEANFUNCS ?= ""
|
|
|
|
T_task-clean = "${LOG_DIR}/cleanlogs/${PN}"
|
|
addtask clean
|
|
do_clean[nostamp] = "1"
|
|
python do_clean() {
|
|
"""clear the build and temp directories"""
|
|
dir = d.expand("${WORKDIR}")
|
|
bb.note("Removing " + dir)
|
|
oe.path.remove(dir)
|
|
|
|
dir = "%s.*" % bb.data.expand(d.getVar('STAMP'), d)
|
|
bb.note("Removing " + dir)
|
|
oe.path.remove(dir)
|
|
|
|
for f in (d.getVar('CLEANFUNCS', True) or '').split():
|
|
bb.build.exec_func(f, d)
|
|
}
|
|
|
|
addtask checkuri
|
|
do_checkuri[nostamp] = "1"
|
|
python do_checkuri() {
|
|
src_uri = (d.getVar('SRC_URI', True) or "").split()
|
|
if len(src_uri) == 0:
|
|
return
|
|
|
|
localdata = bb.data.createCopy(d)
|
|
bb.data.update_data(localdata)
|
|
|
|
try:
|
|
fetcher = bb.fetch2.Fetch(src_uri, localdata)
|
|
fetcher.checkstatus()
|
|
except bb.fetch2.BBFetchException, e:
|
|
raise bb.build.FuncFailed(e)
|
|
}
|
|
|
|
addtask checkuriall after do_checkuri
|
|
do_checkuriall[recrdeptask] = "do_checkuriall do_checkuri"
|
|
do_checkuriall[nostamp] = "1"
|
|
do_checkuriall() {
|
|
:
|
|
}
|
|
|
|
addtask fetchall after do_fetch
|
|
do_fetchall[recrdeptask] = "do_fetchall do_fetch"
|
|
do_fetchall() {
|
|
:
|
|
}
|