summaryrefslogtreecommitdiffstats
path: root/classes/machine-overrides-extender.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'classes/machine-overrides-extender.bbclass')
-rw-r--r--classes/machine-overrides-extender.bbclass19
1 files changed, 19 insertions, 0 deletions
diff --git a/classes/machine-overrides-extender.bbclass b/classes/machine-overrides-extender.bbclass
index b9b00ebe..58cb45b1 100644
--- a/classes/machine-overrides-extender.bbclass
+++ b/classes/machine-overrides-extender.bbclass
@@ -55,3 +55,22 @@ python machine_overrides_extender_handler() {
55 55
56machine_overrides_extender_handler[eventmask] = "bb.event.ConfigParsed" 56machine_overrides_extender_handler[eventmask] = "bb.event.ConfigParsed"
57addhandler machine_overrides_extender_handler 57addhandler machine_overrides_extender_handler
58
59python machineoverrides_filtered_out_qa_handler() {
60 filtered_out = (d.getVar('MACHINEOVERRIDES_EXTENDER_FILTER_OUT') or "").split()
61 qa_error = d.getVar('MACHINEOVERRIDES_FILTERED_OUT_QA_ERROR')
62
63 for var in d.overridedata:
64 # We need to allow the overrides being used in the extender
65 # so avoid processing it.
66 if 'MACHINEOVERRIDES_EXTENDER' in var:
67 continue
68
69 for (r, o) in d.overridedata[var]:
70 common = list(set(o.split(":")).intersection(filtered_out))
71 if len(common) > 0:
72 raise bb.parse.SkipRecipe(qa_error % common)
73}
74
75machineoverrides_filtered_out_qa_handler[eventmask] = "bb.event.RecipeParsed"
76addhandler machineoverrides_filtered_out_qa_handler