[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 22:02:49 UTC 2014


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

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