Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-ml/opam-format/, dev-ml/opam-format/files/
Date: Sun, 06 Jun 2021 23:56:00
Message-Id: 1623023714.8ecc12752fc010ffab88cba03a3923674a3da448.sam@gentoo
1 commit: 8ecc12752fc010ffab88cba03a3923674a3da448
2 Author: Hank Leininger <hlein <AT> korelogic <DOT> com>
3 AuthorDate: Wed May 5 05:03:02 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Sun Jun 6 23:55:14 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8ecc1275
7
8 dev-ml/opam-format: patch for dose3-6.x compat
9
10 Lifted from Debian, see https://bugs.debian.org/982733
11
12 Signed-off-by: Hank Leininger <hlein <AT> korelogic.com>
13 Closes: https://bugs.gentoo.org/788265
14 Package-Manager: Portage-3.0.18, Repoman-3.0.3
15 Signed-off-by: Sam James <sam <AT> gentoo.org>
16
17 .../files/debian-Port-to-Dose3-6.0.1.patch | 142 +++++++++++++++++++++
18 dev-ml/opam-format/opam-format-2.0.8-r3.ebuild | 42 ++++++
19 2 files changed, 184 insertions(+)
20
21 diff --git a/dev-ml/opam-format/files/debian-Port-to-Dose3-6.0.1.patch b/dev-ml/opam-format/files/debian-Port-to-Dose3-6.0.1.patch
22 new file mode 100644
23 index 00000000000..a8af27416df
24 --- /dev/null
25 +++ b/dev-ml/opam-format/files/debian-Port-to-Dose3-6.0.1.patch
26 @@ -0,0 +1,142 @@
27 +From: Mehdi Dogguy <mehdi@××××××.org>
28 +Date: Sun, 28 Feb 2021 19:27:24 +0100
29 +Subject: Port to Dose3 6.0.1
30 +
31 +---
32 + src/client/opamAdminCheck.ml | 2 ++
33 + src/client/opamAdminRepoUpgrade.ml | 2 ++
34 + src/solver/opamBuiltinMccs.ml.real | 2 +-
35 + src/solver/opamCudf.ml | 5 ++++-
36 + src/solver/opamCudf.mli | 4 ++--
37 + src/solver/opamCudfSolver.ml | 4 ++--
38 + src/solver/opamSolver.ml | 4 +++-
39 + 7 files changed, 16 insertions(+), 7 deletions(-)
40 +
41 +diff --git a/src/client/opamAdminCheck.ml b/src/client/opamAdminCheck.ml
42 +index 05543a2..f23bfc4 100644
43 +--- a/src/client/opamAdminCheck.ml
44 ++++ b/src/client/opamAdminCheck.ml
45 +@@ -8,6 +8,8 @@
46 + (* *)
47 + (**************************************************************************)
48 +
49 ++module Algo = Dose_algo
50 ++
51 + open OpamTypes
52 + open OpamPackage.Set.Op
53 +
54 +diff --git a/src/client/opamAdminRepoUpgrade.ml b/src/client/opamAdminRepoUpgrade.ml
55 +index 0be53b2..635e792 100644
56 +--- a/src/client/opamAdminRepoUpgrade.ml
57 ++++ b/src/client/opamAdminRepoUpgrade.ml
58 +@@ -8,6 +8,8 @@
59 + (* *)
60 + (**************************************************************************)
61 +
62 ++module Algo = Dose_algo
63 ++
64 + open OpamTypes
65 + open OpamProcess.Job.Op
66 + open OpamStd.Option.Op
67 +diff --git a/src/solver/opamBuiltinMccs.ml.real b/src/solver/opamBuiltinMccs.ml.real
68 +index ab39ab3..2b41982 100644
69 +--- a/src/solver/opamBuiltinMccs.ml.real
70 ++++ b/src/solver/opamBuiltinMccs.ml.real
71 +@@ -35,7 +35,7 @@ let call solver_backend ext ~criteria ?timeout cudf =
72 + ~verbose:OpamCoreConfig.(!r.debug_level >= 2)
73 + ?timeout criteria cudf
74 + with
75 +- | None -> raise Common.CudfSolver.Unsat
76 ++ | None -> raise Dose_common.CudfSolver.Unsat
77 + | Some (preamble, univ) -> Some preamble, univ
78 + | exception Mccs.Timeout -> raise Timeout
79 +
80 +diff --git a/src/solver/opamCudf.ml b/src/solver/opamCudf.ml
81 +index e07ff54..ad7293c 100644
82 +--- a/src/solver/opamCudf.ml
83 ++++ b/src/solver/opamCudf.ml
84 +@@ -9,6 +9,9 @@
85 + (* *)
86 + (**************************************************************************)
87 +
88 ++module Common = Dose_common
89 ++module Algo = Dose_algo
90 ++
91 + open OpamTypes
92 + open OpamTypesBase
93 +
94 +@@ -634,7 +637,7 @@ let call_external_solver ~version_map univ req =
95 + let r =
96 + Algo.Depsolver.check_request_using
97 + ~call_solver:(OpamSolverConfig.call_solver ~criteria)
98 +- ~criteria ~explain:true cudf_request
99 ++ ~explain:true cudf_request
100 + in
101 + log "Solver call done in %.3f" (chrono ());
102 + r
103 +diff --git a/src/solver/opamCudf.mli b/src/solver/opamCudf.mli
104 +index cb8158d..c928ccf 100644
105 +--- a/src/solver/opamCudf.mli
106 ++++ b/src/solver/opamCudf.mli
107 +@@ -24,7 +24,7 @@ module Map: OpamStd.MAP with type key = Cudf.package
108 + module Graph: sig
109 + (** Graph of cudf packages *)
110 +
111 +- include module type of Algo.Defaultgraphs.PackageGraph.G
112 ++ include module type of Dose_algo.Defaultgraphs.PackageGraph.G
113 +
114 + (** Build a graph from a CUDF universe. Warning: dependency edges are towards
115 + the dependency, which is the reverse of what happens in the action
116 +@@ -180,7 +180,7 @@ val string_of_vpkgs: Cudf_types.vpkg list -> string
117 +
118 + val make_conflicts:
119 + version_map:int package_map -> Cudf.universe ->
120 +- Algo.Diagnostic.diagnosis -> ('a, conflict) result
121 ++ Dose_algo.Diagnostic.diagnosis -> ('a, conflict) result
122 + val cycle_conflict:
123 + version_map:int package_map -> Cudf.universe ->
124 + string list list -> ('a, conflict) result
125 +diff --git a/src/solver/opamCudfSolver.ml b/src/solver/opamCudfSolver.ml
126 +index 03486f1..2651373 100644
127 +--- a/src/solver/opamCudfSolver.ml
128 ++++ b/src/solver/opamCudfSolver.ml
129 +@@ -57,7 +57,7 @@ let call_external_solver command ~criteria ?timeout (_, universe,_ as cudf) =
130 + in
131 + OpamFilename.remove solver_in;
132 + if not (OpamFilename.exists solver_out) then
133 +- raise (Common.CudfSolver.Error "no output")
134 ++ raise (Dose_common.CudfSolver.Error "no output")
135 + else if
136 + (let ic = OpamFilename.open_in solver_out in
137 + try
138 +@@ -65,7 +65,7 @@ let call_external_solver command ~criteria ?timeout (_, universe,_ as cudf) =
139 + i = "FAIL"
140 + with End_of_file -> close_in ic; false)
141 + then
142 +- raise Common.CudfSolver.Unsat
143 ++ raise Dose_common.CudfSolver.Unsat
144 + else
145 + let r =
146 + Cudf_parser.load_solution_from_file
147 +diff --git a/src/solver/opamSolver.ml b/src/solver/opamSolver.ml
148 +index 3748e75..bbf995f 100644
149 +--- a/src/solver/opamSolver.ml
150 ++++ b/src/solver/opamSolver.ml
151 +@@ -9,6 +9,8 @@
152 + (* *)
153 + (**************************************************************************)
154 +
155 ++module Algo = Dose_algo
156 ++
157 + open OpamTypes
158 + open OpamTypesBase
159 + open OpamPackage.Set.Op
160 +@@ -84,7 +86,7 @@ let cudf_versions_map universe packages =
161 + pmap OpamPackage.Map.empty
162 +
163 + let name_to_cudf name =
164 +- Common.CudfAdd.encode (OpamPackage.Name.to_string name)
165 ++ Dose_common.CudfAdd.encode (OpamPackage.Name.to_string name)
166 +
167 + let constraint_to_cudf version_map name (op,v) =
168 + let nv = OpamPackage.create name v in
169
170 diff --git a/dev-ml/opam-format/opam-format-2.0.8-r3.ebuild b/dev-ml/opam-format/opam-format-2.0.8-r3.ebuild
171 new file mode 100644
172 index 00000000000..14bac276fd5
173 --- /dev/null
174 +++ b/dev-ml/opam-format/opam-format-2.0.8-r3.ebuild
175 @@ -0,0 +1,42 @@
176 +# Copyright 1999-2021 Gentoo Authors
177 +# Distributed under the terms of the GNU General Public License v2
178 +
179 +EAPI=7
180 +
181 +# We are opam
182 +OPAM_INSTALLER_DEP=" "
183 +inherit dune
184 +
185 +DESCRIPTION="Core libraries for opam"
186 +HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
187 +SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
188 +S="${WORKDIR}/opam-${PV}"
189 +OPAM_INSTALLER="${S}/opam-installer"
190 +
191 +LICENSE="LGPL-2.1"
192 +SLOT="0/${PV}"
193 +KEYWORDS="~amd64"
194 +IUSE="+ocamlopt"
195 +
196 +RDEPEND="
197 + ~dev-ml/opam-core-${PV}:=
198 + dev-ml/re:=
199 + dev-ml/opam-file-format:=
200 + >=dev-ml/dose3-6.0:=
201 +"
202 +DEPEND="${RDEPEND}
203 + dev-ml/cppo"
204 +
205 +# Cherry-picked from https://deb.debian.org/debian/pool/main/o/opam/opam_2.0.8-1.debian.tar.xz
206 +PATCHES=( "${FILESDIR}/debian-Port-to-Dose3-6.0.1.patch" )
207 +
208 +src_prepare() {
209 + default
210 + cat <<- EOF >> "${S}/dune"
211 + (env
212 + (dev
213 + (flags (:standard -warn-error -3-9-33)))
214 + (release
215 + (flags (:standard -warn-error -3-9-33))))
216 + EOF
217 +}