aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2015-06-07 08:07:13 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-06-09 13:28:14 +0100
commitc5e6f929f3d5eeb7954660dea62611c58b795ff8 (patch)
tree777754c32b54c509358f545a650ea1fac2ac908e
parent88e4600aa66dda2e6c807f9d97af8982bcd8817b (diff)
downloadbitbake-c5e6f929f3d5eeb7954660dea62611c58b795ff8.tar.gz
cooker/event: Add an event which lists all stamps reachable after parsing
The metadata can potentially use such an event to clean up any "unreachable" data, solving several problems we currently have where obsolete data may continue to exist in the shared areas. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/cooker.py5
-rw-r--r--lib/bb/event.py10
2 files changed, 15 insertions, 0 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 577d80851..d2b5ceb3b 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -1477,6 +1477,11 @@ class BBCooker:
self.handlePrefProviders()
self.recipecache.bbfile_priority = self.collection.collection_priorities(self.recipecache.pkg_fn, self.data)
self.state = state.running
+
+ # Send an event listing all stamps reachable after parsing
+ # which the metadata may use to clean up stale data
+ event = bb.event.ReachableStamps(self.recipecache.stamp)
+ bb.event.fire(event, self.expanded_data)
return None
return True
diff --git a/lib/bb/event.py b/lib/bb/event.py
index fec6a05b3..ba0de11cd 100644
--- a/lib/bb/event.py
+++ b/lib/bb/event.py
@@ -497,6 +497,16 @@ class TargetsTreeGenerated(Event):
Event.__init__(self)
self._model = model
+class ReachableStamps(Event):
+ """
+ An event listing all stamps reachable after parsing
+ which the metadata may use to clean up stale data
+ """
+
+ def __init__(self, stamps):
+ Event.__init__(self)
+ self.stamps = stamps
+
class FilesMatchingFound(Event):
"""
Event when a list of files matching the supplied pattern has