[oe-commits] Richard Purdie : debian: Add versions to RPROVIDES

git at git.openembedded.org git at git.openembedded.org
Mon Jul 20 09:42:09 UTC 2015


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

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Thu Jul 16 23:48:51 2015 +0100

debian: Add versions to RPROVIDES

Recently, libspeexdsp-dev added RCONFLICTS = "speex-dev < 1.2rc2". where
libspeexdsp is 1.2rc3. That all seems reasonable, except there is a problem.

debian.bbclass renames speex-dev to libspeex-dev and adds a "Provides: speex-dev"
which the packaging backends duly note. The trouble is rpm sees that as having no
version at all. This means that "speex-dev < 1.2rc2" conflicts with "speex-dev"
and the -dev package simply cannot be installed.

We can't simply version all Provides for rpm since some dependencies clearly
shouldn't be versioned (e.g. the locale ones).

The solution that seems to work best is to add the versions in debian.bbclass.
If the backend doesn't like these, the backend can then strip them off
(separate patch does this).

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton at intel.com>

---

 meta/classes/debian.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/debian.bbclass b/meta/classes/debian.bbclass
index ada2fb5..1b6979a 100644
--- a/meta/classes/debian.bbclass
+++ b/meta/classes/debian.bbclass
@@ -57,7 +57,7 @@ python debian_package_name_hook () {
         if newpkg and newpkg != pkg:
             provs = (d.getVar('RPROVIDES_' + pkg, True) or "").split()
             if pkg not in provs:
-                d.appendVar('RPROVIDES_' + pkg, " " + pkg)
+                d.appendVar('RPROVIDES_' + pkg, " " + pkg + " (=" + d.getVar("PKGV", True) + ")")
 
     def auto_libname(packages, orig_pkg):
         sonames = []



More information about the Openembedded-commits mailing list