Skip to contentSkip to conversation

libc-common.bbclass: rename ALL the packages

PATCH New Peter Seebach 1 participant 2 messages Aug 20, 2014

lore
Share & tools
lore
#0 lore raw

cover libc-common.bbclass: rename ALL the packages

The DEBIAN_NAMES setting renames some libc packages, but doesn't rename them all, or work correctly with multilibs. I sent this patch out some time back, then never got around to making a suggested change (renaming a variable for clarity). With the patch, everything in libc gets renamed, not just a specific list that would have to be updated to continue working if the package list changes.

The following changes since commit 47d1fc9f5c38f3d092937c47bd4c2f45adaa7fe6:

qemu: fix Darwin cross-compilation (2014-08-18 20:43:24 +0100)

are available in the git repository at:
git://git.yoctoproject.org/poky-contrib seebs/renamelibc
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=seebs/renamelibc

Peter Seebach (1):
libc-common.bbclass: rename ALL the packages

 meta/classes/libc-common.bbclass |   19 +++++++++++++------
 1 files changed, 13 insertions(+), 6 deletions(-)
#1 lore raw

PATCH 1/1 libc-common.bbclass: rename ALL the packages

The DEBIAN_NAMES feature renames some of the libc packages to "libc6*" names --but only some. A previous patch added the -dbg package. However, this doesn't cover other packages (such as the -doc package), and it didn't take multilibs into account.

---
 meta/classes/libc-common.bbclass |   19 +++++++++++++------
 1 files changed, 13 insertions(+), 6 deletions(-)
meta/classes/libc-common.bbclass +13 -6
index daf499d..bbc8016 100644
@@ -25,12 +25,19 @@ def get_libc_fpu_setting(bb, d):
 
 python populate_packages_prepend () {
     if d.getVar('DEBIAN_NAMES', True):
+        pkgs = d.getVar('PACKAGES', True).split()
         bpn = d.getVar('BPN', True)
-        d.setVar('PKG_'+bpn, 'libc6')
-        d.setVar('PKG_'+bpn+'-dev', 'libc6-dev')
-        d.setVar('PKG_'+bpn+'-dbg', 'libc6-dbg')
+        prefix = d.getVar('MLPREFIX', True) or ""
+        # Set the base package...
+        d.setVar('PKG_' + prefix + bpn, prefix + 'libc6')
+        libcprefix = prefix + bpn + '-'
+        for p in pkgs:
+            # And all the subpackages.
+            if p.startswith(libcprefix):
+                renamed = p.replace(bpn, 'libc6', 1)
+                d.setVar('PKG_' + p, renamed)
         # For backward compatibility with old -dbg package
-        d.appendVar('RPROVIDES_' + bpn + '-dbg', ' libc-dbg')
-        d.appendVar('RCONFLICTS_' + bpn + '-dbg', ' libc-dbg')
-        d.appendVar('RREPLACES_' + bpn + '-dbg', ' libc-dbg')
+        d.appendVar('RPROVIDES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
+        d.appendVar('RCONFLICTS_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
+        d.appendVar('RREPLACES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
 }
Signature · 1 line
1.7.1