diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-12-14 11:02:59 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-12-14 13:59:49 +0000 |
commit | 3a3be518536acc868c7eeb3c1111ad1b321480b7 (patch) | |
tree | 758fc036b7bac21ad1569abd829285333d2012c9 /lib/bb/data_smart.py | |
parent | 8667605d016e82add95638fcb15c2bbc1b489ecc (diff) | |
download | bitbake-contrib-3a3be518536acc868c7eeb3c1111ad1b321480b7.tar.gz |
data_smart: Allow numeric characters in overrides
We're seeing problems due to the way x86-64 is handled (or not handled)
as an override. Relax the containts on overrides from being lowercase
to being lowercase or numeric. This fixes problem where MACHINE=qemux86
would work but MACHINE=qemux86-64 would fail the same tests.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/data_smart.py')
-rw-r--r-- | lib/bb/data_smart.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py index 297a2f45b..c342adaa0 100644 --- a/lib/bb/data_smart.py +++ b/lib/bb/data_smart.py @@ -43,6 +43,7 @@ __setvar_regexp__ = re.compile(r'(?P<base>.*?)(?P<keyword>_append|_prepend|_remo __expand_var_regexp__ = re.compile(r"\${[^{}@\n\t :]+}") __expand_python_regexp__ = re.compile(r"\${@.+?}") __whitespace_split__ = re.compile(r'(\s)') +__override_regexp__ = re.compile(r'[a-z0-9]+') def infer_caller_details(loginfo, parent = False, varval = True): """Save the caller the trouble of specifying everything.""" @@ -597,7 +598,7 @@ class DataSmart(MutableMapping): # aka pay the cookie monster override = var[var.rfind('_')+1:] shortvar = var[:var.rfind('_')] - while override and override.islower(): + while override and __override_regexp__.match(override): if shortvar not in self.overridedata: self.overridedata[shortvar] = [] if [var, override] not in self.overridedata[shortvar]: |