diff options
author | Chris Johns <chrisj@rtems.org> | 2013-04-27 20:26:49 +1000 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2013-04-27 20:26:49 +1000 |
commit | 517f03669cd4e352faf32e5ffd17b297f8409678 (patch) | |
tree | 55fc0b428f305ed714256a784d494ccbdd8b0ccf /source-builder/sb/config.py | |
parent | Make _sbdir absolute. Add locks to read maps. (diff) | |
download | rtems-source-builder-517f03669cd4e352faf32e5ffd17b297f8409678.tar.bz2 |
Add '%disable select' to turn off the macros maps.
Diffstat (limited to 'source-builder/sb/config.py')
-rw-r--r-- | source-builder/sb/config.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/source-builder/sb/config.py b/source-builder/sb/config.py index 7cd1daf..b59e9d5 100644 --- a/source-builder/sb/config.py +++ b/source-builder/sb/config.py @@ -219,7 +219,8 @@ class file: re.compile('%configure'), re.compile('%source[0-9]*'), re.compile('%patch[0-9]*'), - re.compile('%select') ] + re.compile('%select'), + re.compile('%disable') ] def __init__(self, name, opts, macros = None): self.opts = opts @@ -469,6 +470,16 @@ class file: self._error("macro '%s' not found" % (mn)) return self._shell(s) + def _disable(self, config, ls): + if len(ls) != 2: + log.warning('invalid disable statement') + else: + if ls[1] == 'select': + self.macros.lock_read_map() + log.trace('config: %s: _disable_select: %s %s' % (self.init_name, r, ls[1])) + else: + log.warning('invalid disable statement: %s' % (ls[1])) + def _select(self, config, ls): if len(ls) != 2: log.warning('invalid select statement') @@ -676,6 +687,9 @@ class file: else: name = self.name + '-' + ls[1] return ('package', name) + elif ls[0] == '%disable': + if isvalid: + self._disable(config, ls) elif ls[0] == '%select': if isvalid: self._select(config, ls) |