From 4eaef67a3892be84f1e06278c4ea82468049f283 Mon Sep 17 00:00:00 2001 From: Peter Kjellerstedt Date: Mon, 29 Feb 2016 17:28:56 +0100 Subject: sanity: Do not mistake meta-yocto-bsp for meta-yocto The code in oecore_update_bblayers() handling the transition from meta-yocto to meta-poky was not very resilient. It would, e.g., mistake meta-yocto-bsp for meta-yocto if the former occurred before the latter in BBLAYERS. The code also failed to update multiple existences of meta-yocto in the bblayers.conf file, e.g., if it was present in BBLAYERS_NON_REMOVABLE in addition to BBLAYERS (which it is by default). (From OE-Core rev: 8deb14898f351bd33950291ccde7c4458c6cf506) Signed-off-by: Peter Kjellerstedt Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/classes/sanity.bbclass | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'meta') diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass index cdb28995c6..4873e64a79 100644 --- a/meta/classes/sanity.bbclass +++ b/meta/classes/sanity.bbclass @@ -77,7 +77,7 @@ python oecore_update_bblayers() { lconf_version = int(d.getVar('LAYER_CONF_VERSION', True)) failmsg = """Your version of bblayers.conf has the wrong LCONF_VERSION (has %s, expecting %s). -Please compare the your file against bblayers.conf.sample and merge any changes before continuing. +Please compare your file against bblayers.conf.sample and merge any changes before continuing. "meld conf/bblayers.conf ${COREBASE}/meta*/conf/bblayers.conf.sample" is a good way to visualise the changes.""" % (current_lconf, lconf_version) @@ -132,12 +132,18 @@ is a good way to visualise the changes.""" % (current_lconf, lconf_version) # Handle rename of meta-yocto -> meta-poky # This marks the start of separate version numbers but code is needed in OE-Core # for the migration, one last time. - layers = d.getVar('BBLAYERS', True) + layers = d.getVar('BBLAYERS', True).split() + layers = [ os.path.basename(path) for path in layers ] if 'meta-yocto' in layers: - index, meta_yocto_line = sanity_conf_find_line('.*meta-yocto.*\n', lines) - if meta_yocto_line: - lines[index] = meta_yocto_line.replace('meta-yocto', 'meta-poky') - else: + found = False + while True: + index, meta_yocto_line = sanity_conf_find_line(r'.*meta-yocto[\'"\s\n]', lines) + if meta_yocto_line: + lines[index] = meta_yocto_line.replace('meta-yocto', 'meta-poky') + found = True + else: + break + if not found: raise NotImplementedError(failmsg) index, meta_yocto_line = sanity_conf_find_line('LCONF_VERSION.*\n', lines) if meta_yocto_line: -- cgit v1.2.3-54-g00ecf