utility-taska.bbclass: Add distclean task for removing sources
Submitted by Noor Ahsan on April 11, 2012, 11:51 a.m.
|
Patch ID: 25585
Details
Commit Message
@@ -28,6 +28,36 @@ python do_clean() {
bb.build.exec_func(f, d)
}
+addtask distclean
+do_distclean[nostamp] = "1"
+python do_distclean() {
+ """clear downloaded sources, build and temp directories"""
+
+ bb.build.exec_func('do_clean', d)
+
+ src_uri = bb.data.getVar('SRC_URI', d, 1)
+ if not src_uri:
+ return
+
+ for uri in src_uri.split():
+ if bb.decodeurl(uri)[0] == "file":
+ continue
+
+ try:
+ local = bb.data.expand(bb.fetch.localpath(uri, d), d)
+ except bb.MalformedUrl, e:
+ bb.debug(1, 'Unable to generate local path for malformed uri: %s' % e)
+ else:
+ bb.note("removing %s" % base_path_out(local, d))
+ try:
+ if os.path.exists(local + ".done"):
+ os.remove(local + ".done")
+ if os.path.exists(local):
+ os.remove(local)
+ except OSError, e:
+ bb.note("Error in removal: %s" % e)
+}
+
addtask checkuri
do_checkuri[nostamp] = "1"
python do_checkuri() {