rm_work.bbclass: Add event handler to take care of removing stamps when trying to...
authorRichard Purdie <rpurdie@rpsys.net>
Tue, 26 Feb 2008 17:54:55 +0000 (17:54 +0000)
committerRichard Purdie <rpurdie@rpsys.net>
Tue, 26 Feb 2008 17:54:55 +0000 (17:54 +0000)
classes/rm_work.bbclass

index 4efd39c..97de5e2 100644 (file)
@@ -25,3 +25,23 @@ do_rm_work_all () {
 }
 do_rm_work_all[recrdeptask] = "do_rm_work"
 addtask rm_work_all after do_rm_work
+
+
+addhandler rmwork_stampfixing_eventhandler
+python rmwork_stampfixing_eventhandler() {
+    from bb.event import getName
+    import os
+
+    if getName(e) == "StampUpdate":
+        for (fn, task) in e.targets:
+            if task == 'rm_work_all':
+                continue
+            stamp = "%s.do_rm_work" % e.stampPrefix[fn]
+            if os.path.exists(stamp):
+                dir = "%s.*" % e.stampPrefix[fn]
+                bb.note("Removing stamps: " + dir)
+                os.system('rm -f '+ dir)
+
+    return NotHandled
+}
+