]> code.ossystems Code Review - openembedded-core.git/commitdiff
debian: Add versions to RPROVIDES
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 16 Jul 2015 22:48:51 +0000 (23:48 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 20 Jul 2015 09:39:00 +0000 (10:39 +0100)
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@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/debian.bbclass

index ada2fb57604bb1383d0dd5e6260b7e4c332e497d..1b6979a285d0b5511d517d95f3ad8849a27755ca 100644 (file)
@@ -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 = []