diff options
| -rw-r--r-- | bitbake/lib/bb/data.py | 2 | ||||
| -rw-r--r-- | bitbake/lib/bb/data_smart.py | 23 |
2 files changed, 14 insertions, 11 deletions
diff --git a/bitbake/lib/bb/data.py b/bitbake/lib/bb/data.py index a21de112e7..f6415a4674 100644 --- a/bitbake/lib/bb/data.py +++ b/bitbake/lib/bb/data.py | |||
| @@ -202,7 +202,7 @@ def emit_var(var, o=sys.__stdout__, d = init(), all=False): | |||
| 202 | return False | 202 | return False |
| 203 | 203 | ||
| 204 | if all: | 204 | if all: |
| 205 | d.varhistory.emit(var, oval, val, o) | 205 | d.varhistory.emit(var, oval, val, o, d) |
| 206 | 206 | ||
| 207 | if (var.find("-") != -1 or var.find(".") != -1 or var.find('{') != -1 or var.find('}') != -1 or var.find('+') != -1) and not all: | 207 | if (var.find("-") != -1 or var.find(".") != -1 or var.find('{') != -1 or var.find('}') != -1 or var.find('+') != -1) and not all: |
| 208 | return False | 208 | return False |
diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py index f0187b7a17..26f69d105a 100644 --- a/bitbake/lib/bb/data_smart.py +++ b/bitbake/lib/bb/data_smart.py | |||
| @@ -252,8 +252,20 @@ class VariableHistory(object): | |||
| 252 | else: | 252 | else: |
| 253 | return [] | 253 | return [] |
| 254 | 254 | ||
| 255 | def emit(self, var, oval, val, o): | 255 | def emit(self, var, oval, val, o, d): |
| 256 | history = self.variable(var) | 256 | history = self.variable(var) |
| 257 | |||
| 258 | # Append override history | ||
| 259 | if var in d.overridedata: | ||
| 260 | for (r, override) in d.overridedata[var]: | ||
| 261 | for event in self.variable(r): | ||
| 262 | loginfo = event.copy() | ||
| 263 | if 'flag' in loginfo and not loginfo['flag'].startswith("_"): | ||
| 264 | continue | ||
| 265 | loginfo['variable'] = var | ||
| 266 | loginfo['op'] = 'override[%s]:%s' % (override, loginfo['op']) | ||
| 267 | history.append(loginfo) | ||
| 268 | |||
| 257 | commentVal = re.sub('\n', '\n#', str(oval)) | 269 | commentVal = re.sub('\n', '\n#', str(oval)) |
| 258 | if history: | 270 | if history: |
| 259 | if len(history) == 1: | 271 | if len(history) == 1: |
| @@ -496,15 +508,6 @@ class DataSmart(MutableMapping): | |||
| 496 | # Force CoW by recreating the list first | 508 | # Force CoW by recreating the list first |
| 497 | self.overridedata[shortvar] = list(self.overridedata[shortvar]) | 509 | self.overridedata[shortvar] = list(self.overridedata[shortvar]) |
| 498 | self.overridedata[shortvar].append([var, override]) | 510 | self.overridedata[shortvar].append([var, override]) |
| 499 | for event in self.varhistory.variable(var): | ||
| 500 | if 'flag' in loginfo and not loginfo['flag'].startswith("_"): | ||
| 501 | continue | ||
| 502 | loginfo = event.copy() | ||
| 503 | loginfo['variable'] = shortvar | ||
| 504 | loginfo['op'] = 'override[%s]:%s' % (override, loginfo['op']) | ||
| 505 | loginfo['nodups'] = True | ||
| 506 | self.varhistory.record(**loginfo) | ||
| 507 | |||
| 508 | override = None | 511 | override = None |
| 509 | if "_" in shortvar: | 512 | if "_" in shortvar: |
| 510 | override = var[shortvar.rfind('_')+1:] | 513 | override = var[shortvar.rfind('_')+1:] |
