[Pkg-ocaml-maint-commits] [dose3] 01/02: cherry-pick 42aa4c4: fix handling of versioned virtual packages
Ralf Treinen
treinen at moszumanska.debian.org
Tue Aug 29 13:01:42 UTC 2017
This is an automated email from the git hooks/post-receive script.
treinen pushed a commit to branch stretch/master
in repository dose3.
commit f00a1959e440f1f1541216afb5f5210703c44546
Author: Ralf Treinen <treinen at irif.fr>
Date: Tue Aug 29 14:44:53 2017 +0200
cherry-pick 42aa4c4: fix handling of versioned virtual packages
---
debian/changelog | 8 ++++++++
debian/patches/series | 1 +
debian/patches/versioned_provides | 30 ++++++++++++++++++++++++++++++
3 files changed, 39 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index f70cf83..af570ef 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+dose3 (5.0.1-8+deb9u1) stretch; urgency=medium
+
+ * 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> Tue, 29 Aug 2017 14:43:57 +0200
+
dose3 (5.0.1-8) unstable; urgency=medium
* Patches taken from upstream (thanks, Josch!)
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