diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2006-05-31 20:25:15 +0000 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2006-05-31 20:25:15 +0000 |
commit | 450ac692c12154700c612abf8b4165a6a85b48a0 (patch) | |
tree | e32d77d050007b7f909c6c0d19856a80f0bcc955 | |
parent | 9ebf8358f3b91a96eb268ab6f9c331ea30f5bfba (diff) | |
download | bitbake-450ac692c12154700c612abf8b4165a6a85b48a0.tar.gz |
bitbake-1.4/bin/bitbake: Make sure to install all event handlers
Currently we assumed that we at least have seen one .inc
which would have evaluated INHERIT. For the NSLU2 builds
this is not the case.
Make sure to parse all bbclasses from INHERIT.
-rwxr-xr-x | bin/bitbake | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/bin/bitbake b/bin/bitbake index 10cf4bd00..7fbe7ed5e 100755 --- a/bin/bitbake +++ b/bin/bitbake @@ -781,11 +781,19 @@ class BBCooker: try: self.configuration.data = bb.parse.handle( afile, self.configuration.data ) - # Add the handlers we inherited by INHERITS + # Add the handlers we inherited by INHERIT + # we need to do this manually as it is not guranteed + # we will pick up these classes... as we only INHERIT + # on .inc and .bb files but not on .conf + data = bb.data.createCopy( self.configuration.data ) + inherits = ["base"] + (bb.data.getVar('INHERIT', data, True ) or "").split() + for inherit in inherits: + data = bb.parse.handle( os.path.join('classes', '%s.bbclass' % inherit ), data, True ) + # FIXME: This assumes that we included at least one .inc file - for var in bb.data.keys(self.configuration.data): - if bb.data.getVarFlag(var, 'handler', self.configuration.data): - bb.event.register(var,bb.data.getVar(var,self.configuration.data)) + for var in bb.data.keys(data): + if bb.data.getVarFlag(var, 'handler', data): + bb.event.register(var,bb.data.getVar(var, data)) except IOError: bb.fatal( "Unable to open %s" % afile ) |