[oe-commits] Richard Purdie : debian: Set RPROVIDES to include the original packagename when renaming

git at git.openembedded.org git at git.openembedded.org
Sat Aug 23 08:32:22 UTC 2014


Module: openembedded-core.git
Branch: master-next
Commit: 5adcf44e281e91f736e22aaf61a6add57e28bf64
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=5adcf44e281e91f736e22aaf61a6add57e28bf64

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Tue Aug 19 13:40:36 2014 +0100

debian: Set RPROVIDES to include the original packagename when renaming

Currently its hard for a packagegroup recipe to depend on something who's name
can change unpredictably. We therefore add in RPROVIDES for the original
package name so that these are also available to use as dependencies.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/debian.bbclass | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/meta/classes/debian.bbclass b/meta/classes/debian.bbclass
index 47d3ed8..c859703 100644
--- a/meta/classes/debian.bbclass
+++ b/meta/classes/debian.bbclass
@@ -52,6 +52,13 @@ python debian_package_name_hook () {
             return 0
         return (s[stat.ST_MODE] & stat.S_IEXEC)
 
+    def add_rprovides(pkg, d):
+        newpkg = d.getVar('PKG_' + pkg)
+        if newpkg and newpkg != pkg:
+            provs = (d.getVar('RPROVIDES_' + pkg, True) or "").split()
+            if pkg not in provs:
+                d.appendVar('RPROVIDES_' + pkg, " " + pkg)
+
     def auto_libname(packages, orig_pkg):
         sonames = []
         has_bins = 0
@@ -99,6 +106,7 @@ python debian_package_name_hook () {
                 (pkgname, devname) = soname_result
                 for pkg in packages.split():
                     if (d.getVar('PKG_' + pkg) or d.getVar('DEBIAN_NOAUTONAME_' + pkg)):
+                        add_rprovides(pkg, d)
                         continue
                     debian_pn = d.getVar('DEBIANNAME_' + pkg)
                     if debian_pn:
@@ -113,6 +121,9 @@ python debian_package_name_hook () {
                             newpkg = mlpre + newpkg
                     if newpkg != pkg:
                         d.setVar('PKG_' + pkg, newpkg)
+                        add_rprovides(pkg, d)
+        else:
+            add_rprovides(orig_pkg, d)
 
     # reversed sort is needed when some package is substring of another
     # ie in ncurses we get without reverse sort: 



More information about the Openembedded-commits mailing list