[Pkg-ocaml-maint-commits] [dose3] 01/03: fix handling of virtual packages: coinstallable with real packages, even when versioned
Ralf Treinen
treinen at moszumanska.debian.org
Mon Jul 17 20:24:54 UTC 2017
This is an automated email from the git hooks/post-receive script.
treinen pushed a commit to branch master
in repository dose3.
commit 42aa4c43aac0357aa59d2a1b2d9d640cd5f10dc1
Author: Ralf Treinen <treinen at free.fr>
Date: Mon Jul 17 22:08:34 2017 +0200
fix handling of virtual packages: coinstallable with real packages, even when versioned
---
debian/changelog | 5 ++++-
debian/patches/series | 1 +
debian/patches/versioned_provides | 30 ++++++++++++++++++++++++++++++
3 files changed, 35 insertions(+), 1 deletion(-)
diff --git a/debian/changelog b/debian/changelog
index ee3ec93..a7f479a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,11 @@
dose3 (5.0.1-9) UNRELEASED; urgency=medium
* dose-doc: set Multi-Arch=foreign
+ * patch virtual_provides: packages that provide the same virtual package
+ in different versions, or that provide the same versioned virtual package
+ as a real package, are co-installable (closes: #867104).
- -- Ralf Treinen <treinen at debian.org> Sat, 21 Jan 2017 11:47:14 +0100
+ -- Ralf Treinen <treinen at debian.org> Mon, 17 Jul 2017 22:07:31 +0200
dose3 (5.0.1-8) unstable; urgency=medium
diff --git a/debian/patches/series b/debian/patches/series
index beee4c9..b0ebd7d 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -12,3 +12,4 @@ ocaml-4.02.3+gcc-6.2.0
architecture-tuples
architectures-dpkg-1.18.15
deb-drop-b-d-arch
+versioned_provides
diff --git a/debian/patches/versioned_provides b/debian/patches/versioned_provides
new file mode 100644
index 0000000..63609de
--- /dev/null
+++ b/debian/patches/versioned_provides
@@ -0,0 +1,30 @@
+Author: Ralf Treinen <treinen at debian.org>
+Description: packages that provide the same virtual package in different
+ versions, or that provide the same versioned virtual package as a real
+ package, are co-installable
+Debian-bug: #867104
+
+diff --git a/deb/debcudf.ml b/deb/debcudf.ml
+index 44f72e8..c70ed67 100644
+--- a/deb/debcudf.ml
++++ b/deb/debcudf.ml
+@@ -307,12 +307,13 @@ let loadlc ?native_arch ?package_arch tables name l =
+ let loadlp ?native_arch ?package_arch tables l =
+ List.flatten (
+ List.map (fun ((name,_) as vpkgname,constr) ->
+- let encname = add_arch_info ?native_arch ?package_arch vpkgname in
+- match constr with
+- |None -> [("--virtual-"^encname,Some(`Eq,Util.max32int - 1))]
+- |Some("=",v) ->
+- let constr = Some(`Eq,get_cudf_version tables (name,v)) in
+- [("--virtual-"^encname,constr);(encname,constr)]
++ let encname = add_arch_info ?native_arch ?package_arch vpkgname in
++ let vencname = "--virtual-"^encname in
++ match constr with
++ |None -> [(vencname,Some(`Eq,Util.max32int - 1))]
++ |Some("=",v) ->
++ let constr = Some(`Eq,get_cudf_version tables (name,v)) in
++ [(vencname,constr);(vencname,Some(`Eq,Util.max32int - 1))]
+ |_ -> fatal "This should never happen : a provide can be either = or unversioned"
+ ) l
+ )
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ocaml-maint/packages/dose3.git
More information about the Pkg-ocaml-maint-commits
mailing list