summaryrefslogtreecommitdiffstats
path: root/meta/classes/uboot-extlinux-config.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/uboot-extlinux-config.bbclass')
-rw-r--r--meta/classes/uboot-extlinux-config.bbclass13
1 files changed, 8 insertions, 5 deletions
diff --git a/meta/classes/uboot-extlinux-config.bbclass b/meta/classes/uboot-extlinux-config.bbclass
index b5b1a81dfc..f4bf94be04 100644
--- a/meta/classes/uboot-extlinux-config.bbclass
+++ b/meta/classes/uboot-extlinux-config.bbclass
@@ -104,13 +104,16 @@ python do_create_extlinux_config() {
104 if default: 104 if default:
105 cfgfile.write('DEFAULT %s\n' % (default)) 105 cfgfile.write('DEFAULT %s\n' % (default))
106 106
107 for label in labels.split(): 107 # Need to deconflict the labels with existing overrides
108 label_overrides = labels.split()
109 default_overrides = localdata.getVar('OVERRIDES').split(':')
110 # We're keeping all the existing overrides that aren't used as a label
111 # an override for that label will be added back in while we're processing that label
112 keep_overrides = list(filter(lambda x: x not in label_overrides, default_overrides))
108 113
109 overrides = localdata.getVar('OVERRIDES') 114 for label in labels.split():
110 if not overrides:
111 bb.fatal('OVERRIDES not defined')
112 115
113 localdata.setVar('OVERRIDES', label + ':' + overrides) 116 localdata.setVar('OVERRIDES', ':'.join(keep_overrides + [label]))
114 117
115 extlinux_console = localdata.getVar('UBOOT_EXTLINUX_CONSOLE') 118 extlinux_console = localdata.getVar('UBOOT_EXTLINUX_CONSOLE')
116 119