summaryrefslogtreecommitdiff
path: root/dev-ml/opam
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ml/opam')
-rw-r--r--dev-ml/opam/Manifest2
-rw-r--r--dev-ml/opam/files/debian-Port-to-Dose3-6.0.1.patch142
-rw-r--r--dev-ml/opam/opam-2.0.8-r2.ebuild41
3 files changed, 185 insertions, 0 deletions
diff --git a/dev-ml/opam/Manifest b/dev-ml/opam/Manifest
index bc88798bebea..28888eba1682 100644
--- a/dev-ml/opam/Manifest
+++ b/dev-ml/opam/Manifest
@@ -1,3 +1,5 @@
+AUX debian-Port-to-Dose3-6.0.1.patch 5223 BLAKE2B 8fada8b358cfae3aab9f6b8f0554894f55081197760a08b544229fdcc9d74434c1408cf72a8bb1d4280d11ef94d593ebb54a8f656617d99191d3576d02556793 SHA512 969c79a0552e0ea2388f732ca266d07b4c2a5a6945bd75daa2a435340ffbd8d87d2ada39dbab9cb364b2ad918f60600a59cf1fc06290a3dcbb68568c52fc9c7d
DIST opam-2.0.8.tar.gz 643221 BLAKE2B 66510a18285f315fe95665e8ba2f334dd44211c716543cdc25f2951a7dfe537f115981046e5963fd08deea4c76f5672fa7cf8e7af2274a713a3165bdd0bac8c2 SHA512 14737dc994be2c54dfeaf2658d3713178033e1bc2b4b845a58b4bfc118bbbf12b502924add0ae32b4b2b6c1944462e5ee7143df3de362d9ee39573249d013bc9
EBUILD opam-2.0.8-r1.ebuild 796 BLAKE2B 83b7753c328cc34f0b96c2609b97e4c9ecced2e759e678adb8f4a4d9b69718b78918d258364431a47d86066db0cec6d8741344da0e0921c2c8cea34362233203 SHA512 a4e040c25560f328d8e533dc348fce084c839b5ad001dc41ea58823b64e437730e0bf2b4826f2d8d4ad0bc988f4f4328115562a5b28534f99cd9b01690a0f15f
+EBUILD opam-2.0.8-r2.ebuild 958 BLAKE2B 2226c961145ae54d6ae44533ffde97051df621f43ecc1979011398bca11e06ed3ad339e2c4c934668d1b839d7178bce8389b90a6102a3969f111693e156612f5 SHA512 5daad86b60886e02d011a22b2be48fca1751586daae90e45407547e778a067f5fa84a19e7bd7f22e36de714ac351e5ef35f509bcc68f51417e052dd1551560af
MISC metadata.xml 412 BLAKE2B 3cd375059a5716aba5f14f8004970adb55bbec02cf911cc5739475a80789c86ab6d27f192e4757191be8e914e61db531b330695eba224e81273e351d507bd57b SHA512 6119e7d8b9cf779ac2070b8cbe9820849fa80542e86b353d0cab9c60bca6e5d122a1e4f57a75f3189058587e9e8c7d8c5f37e5d4a22395506c437f411df1c4e4
diff --git a/dev-ml/opam/files/debian-Port-to-Dose3-6.0.1.patch b/dev-ml/opam/files/debian-Port-to-Dose3-6.0.1.patch
new file mode 100644
index 000000000000..a8af27416df1
--- /dev/null
+++ b/dev-ml/opam/files/debian-Port-to-Dose3-6.0.1.patch
@@ -0,0 +1,142 @@
+From: Mehdi Dogguy <mehdi@debian.org>
+Date: Sun, 28 Feb 2021 19:27:24 +0100
+Subject: Port to Dose3 6.0.1
+
+---
+ src/client/opamAdminCheck.ml | 2 ++
+ src/client/opamAdminRepoUpgrade.ml | 2 ++
+ src/solver/opamBuiltinMccs.ml.real | 2 +-
+ src/solver/opamCudf.ml | 5 ++++-
+ src/solver/opamCudf.mli | 4 ++--
+ src/solver/opamCudfSolver.ml | 4 ++--
+ src/solver/opamSolver.ml | 4 +++-
+ 7 files changed, 16 insertions(+), 7 deletions(-)
+
+diff --git a/src/client/opamAdminCheck.ml b/src/client/opamAdminCheck.ml
+index 05543a2..f23bfc4 100644
+--- a/src/client/opamAdminCheck.ml
++++ b/src/client/opamAdminCheck.ml
+@@ -8,6 +8,8 @@
+ (* *)
+ (**************************************************************************)
+
++module Algo = Dose_algo
++
+ open OpamTypes
+ open OpamPackage.Set.Op
+
+diff --git a/src/client/opamAdminRepoUpgrade.ml b/src/client/opamAdminRepoUpgrade.ml
+index 0be53b2..635e792 100644
+--- a/src/client/opamAdminRepoUpgrade.ml
++++ b/src/client/opamAdminRepoUpgrade.ml
+@@ -8,6 +8,8 @@
+ (* *)
+ (**************************************************************************)
+
++module Algo = Dose_algo
++
+ open OpamTypes
+ open OpamProcess.Job.Op
+ open OpamStd.Option.Op
+diff --git a/src/solver/opamBuiltinMccs.ml.real b/src/solver/opamBuiltinMccs.ml.real
+index ab39ab3..2b41982 100644
+--- a/src/solver/opamBuiltinMccs.ml.real
++++ b/src/solver/opamBuiltinMccs.ml.real
+@@ -35,7 +35,7 @@ let call solver_backend ext ~criteria ?timeout cudf =
+ ~verbose:OpamCoreConfig.(!r.debug_level >= 2)
+ ?timeout criteria cudf
+ with
+- | None -> raise Common.CudfSolver.Unsat
++ | None -> raise Dose_common.CudfSolver.Unsat
+ | Some (preamble, univ) -> Some preamble, univ
+ | exception Mccs.Timeout -> raise Timeout
+
+diff --git a/src/solver/opamCudf.ml b/src/solver/opamCudf.ml
+index e07ff54..ad7293c 100644
+--- a/src/solver/opamCudf.ml
++++ b/src/solver/opamCudf.ml
+@@ -9,6 +9,9 @@
+ (* *)
+ (**************************************************************************)
+
++module Common = Dose_common
++module Algo = Dose_algo
++
+ open OpamTypes
+ open OpamTypesBase
+
+@@ -634,7 +637,7 @@ let call_external_solver ~version_map univ req =
+ let r =
+ Algo.Depsolver.check_request_using
+ ~call_solver:(OpamSolverConfig.call_solver ~criteria)
+- ~criteria ~explain:true cudf_request
++ ~explain:true cudf_request
+ in
+ log "Solver call done in %.3f" (chrono ());
+ r
+diff --git a/src/solver/opamCudf.mli b/src/solver/opamCudf.mli
+index cb8158d..c928ccf 100644
+--- a/src/solver/opamCudf.mli
++++ b/src/solver/opamCudf.mli
+@@ -24,7 +24,7 @@ module Map: OpamStd.MAP with type key = Cudf.package
+ module Graph: sig
+ (** Graph of cudf packages *)
+
+- include module type of Algo.Defaultgraphs.PackageGraph.G
++ include module type of Dose_algo.Defaultgraphs.PackageGraph.G
+
+ (** Build a graph from a CUDF universe. Warning: dependency edges are towards
+ the dependency, which is the reverse of what happens in the action
+@@ -180,7 +180,7 @@ val string_of_vpkgs: Cudf_types.vpkg list -> string
+
+ val make_conflicts:
+ version_map:int package_map -> Cudf.universe ->
+- Algo.Diagnostic.diagnosis -> ('a, conflict) result
++ Dose_algo.Diagnostic.diagnosis -> ('a, conflict) result
+ val cycle_conflict:
+ version_map:int package_map -> Cudf.universe ->
+ string list list -> ('a, conflict) result
+diff --git a/src/solver/opamCudfSolver.ml b/src/solver/opamCudfSolver.ml
+index 03486f1..2651373 100644
+--- a/src/solver/opamCudfSolver.ml
++++ b/src/solver/opamCudfSolver.ml
+@@ -57,7 +57,7 @@ let call_external_solver command ~criteria ?timeout (_, universe,_ as cudf) =
+ in
+ OpamFilename.remove solver_in;
+ if not (OpamFilename.exists solver_out) then
+- raise (Common.CudfSolver.Error "no output")
++ raise (Dose_common.CudfSolver.Error "no output")
+ else if
+ (let ic = OpamFilename.open_in solver_out in
+ try
+@@ -65,7 +65,7 @@ let call_external_solver command ~criteria ?timeout (_, universe,_ as cudf) =
+ i = "FAIL"
+ with End_of_file -> close_in ic; false)
+ then
+- raise Common.CudfSolver.Unsat
++ raise Dose_common.CudfSolver.Unsat
+ else
+ let r =
+ Cudf_parser.load_solution_from_file
+diff --git a/src/solver/opamSolver.ml b/src/solver/opamSolver.ml
+index 3748e75..bbf995f 100644
+--- a/src/solver/opamSolver.ml
++++ b/src/solver/opamSolver.ml
+@@ -9,6 +9,8 @@
+ (* *)
+ (**************************************************************************)
+
++module Algo = Dose_algo
++
+ open OpamTypes
+ open OpamTypesBase
+ open OpamPackage.Set.Op
+@@ -84,7 +86,7 @@ let cudf_versions_map universe packages =
+ pmap OpamPackage.Map.empty
+
+ let name_to_cudf name =
+- Common.CudfAdd.encode (OpamPackage.Name.to_string name)
++ Dose_common.CudfAdd.encode (OpamPackage.Name.to_string name)
+
+ let constraint_to_cudf version_map name (op,v) =
+ let nv = OpamPackage.create name v in
diff --git a/dev-ml/opam/opam-2.0.8-r2.ebuild b/dev-ml/opam/opam-2.0.8-r2.ebuild
new file mode 100644
index 000000000000..b94e4ef3bcb6
--- /dev/null
+++ b/dev-ml/opam/opam-2.0.8-r2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="A source-based package manager for OCaml"
+HOMEPAGE="http://opam.ocaml.org/"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/cmdliner:=
+ dev-ml/cudf:=
+ >=dev-ml/dose3-6.0:=
+ dev-ml/extlib:=
+ ~dev-ml/opam-client-${PV}:=
+ dev-ml/opam-file-format:=
+ dev-ml/re:="
+DEPEND="${RDEPEND}"
+
+# Cherry-picked from https://deb.debian.org/debian/pool/main/o/opam/opam_2.0.8-1.debian.tar.xz
+PATCHES=( "${FILESDIR}/debian-Port-to-Dose3-6.0.1.patch" )
+
+src_prepare() {
+ default
+
+ cat <<- EOF >> "${S}/dune"
+ (env
+ (dev
+ (flags (:standard -warn-error -3-9-33)))
+ (release
+ (flags (:standard -warn-error -3-9-33))))
+ EOF
+}