diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2006-03-13 22:58:51 +0000 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2006-03-13 22:58:51 +0000 |
commit | d17325cdaad9c3a4e0de1dbbbd546a5778839162 (patch) | |
tree | 9fb5c2044d4f6a68cfb0ba0bf31d931749414955 | |
parent | 42af6588791236c95c21053ac9d6c54281cf1952 (diff) | |
download | bitbake-d17325cdaad9c3a4e0de1dbbbd546a5778839162.tar.gz |
bitbake/lib/bb/event.py:
Introduce a NoProvider Event. It contains
a 'runtime' flag, the item name and the
configuration data.
bitbake/bin/bitbake:
Fire the NoProvider event at some spots. There
are more events we need to fire. Ideally the
BitBake UI would just be a handler...
-rwxr-xr-x | bin/bitbake | 4 | ||||
-rw-r--r-- | lib/bb/event.py | 13 |
2 files changed, 17 insertions, 0 deletions
diff --git a/bin/bitbake b/bin/bitbake index 8ecd98ba6..e6bdbee4d 100755 --- a/bin/bitbake +++ b/bin/bitbake @@ -492,6 +492,7 @@ class BBCooker: if not item in self.status.providers: bb.error("Nothing provides dependency %s" % item) + bb.event.fire(bb.event.NoProvider(item,self.configuration.data)) return 0 all_p = self.status.providers[item] @@ -539,6 +540,7 @@ class BBCooker: return 1 bb.note("no buildable providers for %s" % item) + bb.event.fire(bb.event.NoProvider(item,self.configuration.data)) return 0 def buildRProvider( self, item , buildAllDeps ): @@ -558,6 +560,7 @@ class BBCooker: if not all_p: bb.error("Nothing provides runtime dependency %s" % (item)) + bb.event.fire(bb.event.NoProvider(item,self.configuration.data,runtime=True)) return False for p in all_p: @@ -612,6 +615,7 @@ class BBCooker: return True bb.error("No buildable providers for runtime %s" % item) + bb.event.fire(bb.event.NoProvider(item,self.configuration.data)) return False def getProvidersRun(self, rdepend): diff --git a/lib/bb/event.py b/lib/bb/event.py index 673f307ba..cbe6d2a11 100644 --- a/lib/bb/event.py +++ b/lib/bb/event.py @@ -212,6 +212,19 @@ class UnsatisfiedDep(DepBase): class RecursiveDep(DepBase): """Recursive Dependency""" +class NoProvider(Event): + """No Provider for an Event""" + + def __init__(self, item, data,runtime=False): + Event.__init__(self, data) + self._item = item + self._runtime = runtime + + def getItem(self): + return self._item + + def isRuntime(self): + return self._runtime class MultipleProviders(Event): """Multiple Providers""" |