From 999ae9291cda3e3472341b0b66b59d5c6bad986e Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 14 Dec 2018 11:02:59 +0000 Subject: bitbake: 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. (Bitbake rev: 3a3be518536acc868c7eeb3c1111ad1b321480b7) Signed-off-by: Richard Purdie --- bitbake/lib/bb/data_smart.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py index 297a2f45b4..c342adaa0a 100644 --- a/bitbake/lib/bb/data_smart.py +++ b/bitbake/lib/bb/data_smart.py @@ -43,6 +43,7 @@ __setvar_regexp__ = re.compile(r'(?P.*?)(?P_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]: -- cgit v1.2.3-54-g00ecf