Skip to contentSkip to conversation

Fix for sanity handling of meta-yocto -> meta-poky

PATCH New Peter Kjellerstedt 1 participant 2 messages Feb 29, 2016

lore
Share & tools
lore
#0 lore raw

cover Fix for sanity handling of meta-yocto -> meta-poky

The code in sanity.bbclass to handle the transition from meta-yocto to meta-poky needs to be more resilient and not mistake meta-yocto-bsp for meta-yocto. It also needs to handle all occurrences of meta-yocto.

Even with the suggested change here the code still relies on that all layers in bblayers.conf are specified on separate lines...

//Peter

The following changes since commit 4006a7f2762ccd5dcbc6cdff49482d4387a73261:

sanity: Fix int verses string reference (2016-02-28 22:54:09 +0000)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib pkj/sanity-meta-poky
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=pkj/sanity-meta-poky

Peter Kjellerstedt (1):
sanity: Do not mistake meta-yocto-bsp for meta-yocto

 meta/classes/sanity.bbclass | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)
Signature · 1 line
2.1.0
#1 lore raw

PATCH 1/1 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).

---
 meta/classes/sanity.bbclass | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)
meta/classes/sanity.bbclass +12 -6
index 52581f6..62a3809 100644
@@ -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:
Signature · 1 line
2.1.0