about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/coq-modules/dpdgraph/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/coq-modules/dpdgraph/default.nix')
-rw-r--r--nixpkgs/pkgs/development/coq-modules/dpdgraph/default.nix61
1 files changed, 61 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/coq-modules/dpdgraph/default.nix b/nixpkgs/pkgs/development/coq-modules/dpdgraph/default.nix
new file mode 100644
index 000000000000..e403f7d4fb5c
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/dpdgraph/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, coq }:
+
+let params = {
+  "8.8" = {
+    version = "0.6.3";
+    rev = "0acbd0a594c7e927574d5f212cc73a486b5305d2";
+    sha256 = "0c95b0bz2kjm6swr5na4gs06lxxywradszxbr5ldh2zx02r3f3rx";
+  };
+  "8.7" = {
+    version = "0.6.2";
+    rev = "d76ddde37d918569945774733b7997e8b24daf51";
+    sha256 = "04lnf4b25yarysj848cfl8pd3i3pr3818acyp9hgwdgd1rqmhjwm";
+  };
+  "8.6" = {
+    version = "0.6.1";
+    rev = "c3b87af6bfa338e18b83f014ebd0e56e1f611663";
+    sha256 = "1jaafkwsb5450378nprjsds1illgdaq60gryi8kspw0i25ykz2c9";
+  };
+  "8.5" = {
+    version = "0.6";
+    rev = "v0.6";
+    sha256 = "0qvar8gfbrcs9fmvkph5asqz4l5fi63caykx3bsn8zf0xllkwv0n";
+  };
+};
+param = params."${coq.coq-version}";
+in
+
+stdenv.mkDerivation {
+  name = "coq${coq.coq-version}-dpdgraph-${param.version}";
+  src = fetchFromGitHub {
+    owner = "Karmaki";
+    repo = "coq-dpdgraph";
+    inherit (param) rev sha256;
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ coq ]
+  ++ (with coq.ocamlPackages; [ ocaml camlp5 findlib ocamlgraph ]);
+
+  preInstall = ''
+    mkdir -p $out/bin
+  '';
+
+  installFlags = ''
+    COQLIB=$(out)/lib/coq/${coq.coq-version}/
+    BINDIR=$(out)/bin
+  '';
+
+  meta = {
+    description = "Build dependency graphs between Coq objects";
+    license = stdenv.lib.licenses.lgpl21;
+    homepage = https://github.com/Karmaki/coq-dpdgraph/;
+    maintainers = with stdenv.lib.maintainers; [ vbgl ];
+    platforms = coq.meta.platforms;
+  };
+
+  passthru = {
+    compatibleCoqVersions = v: builtins.hasAttr v params;
+  };
+
+}