summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorMatthew Maurer <matthew.r.maurer@gmail.com>2016-09-13 17:42:26 -0400
committerMatthew Maurer <matthew.r.maurer@gmail.com>2016-09-14 02:34:32 -0400
commit95d9e2b86a0a3fb078f844592c626501d52e09d8 (patch)
tree569f3d42253919f10580444dd1292b9515259e8f /pkgs/development
parent3c5e31ec00a02a35a9ec1f377a9bbbb181745ddf (diff)
downloadnixlib-95d9e2b86a0a3fb078f844592c626501d52e09d8.tar
nixlib-95d9e2b86a0a3fb078f844592c626501d52e09d8.tar.gz
nixlib-95d9e2b86a0a3fb078f844592c626501d52e09d8.tar.bz2
nixlib-95d9e2b86a0a3fb078f844592c626501d52e09d8.tar.lz
nixlib-95d9e2b86a0a3fb078f844592c626501d52e09d8.tar.xz
nixlib-95d9e2b86a0a3fb078f844592c626501d52e09d8.tar.zst
nixlib-95d9e2b86a0a3fb078f844592c626501d52e09d8.zip
ppx_core: init at 113.33.03
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/ocaml-modules/janestreet/buildOcamlJane.nix30
-rw-r--r--pkgs/development/ocaml-modules/janestreet/ppx-core.nix14
2 files changed, 44 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/janestreet/buildOcamlJane.nix b/pkgs/development/ocaml-modules/janestreet/buildOcamlJane.nix
new file mode 100644
index 000000000000..33397e35aa6d
--- /dev/null
+++ b/pkgs/development/ocaml-modules/janestreet/buildOcamlJane.nix
@@ -0,0 +1,30 @@
+{ buildOcaml, opam, js_build_tools, ocaml_oasis, fetchurl } :
+
+{ name, version ? "113.33.03", buildInputs ? [],
+  hash ? "",
+  minimumSupportedOcamlVersion ? "4.02", ...
+}@args:
+
+buildOcaml (args // {
+  inherit name version minimumSupportedOcamlVersion;
+  src = fetchurl {
+    url = "https://github.com/janestreet/${name}/archive/${version}.tar.gz";
+    sha256 = hash;
+  };
+
+  hasSharedObjects = true;
+
+  buildInputs = [ ocaml_oasis js_build_tools opam ] ++ buildInputs;
+
+  dontAddPrefix = true;
+
+  configurePhase = "./configure --prefix $out";
+
+  buildPhase = "OCAML_TOPLEVEL_PATH=`ocamlfind query findlib`/.. make";
+
+  installPhase = ''
+    opam-installer -i --prefix $prefix --libdir `ocamlfind printconf destdir` --stubsdir `ocamlfind printconf destdir`/${name} ${name}.install
+    if [ -d $out/lib/${name} ]; then if [ "$(ls -A $out/lib/${name})" ]; then mv $out/lib/${name}/* `ocamlfind printconf destdir`/${name}; fi; rmdir $out/lib/${name}; fi
+  '';
+
+})
diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-core.nix b/pkgs/development/ocaml-modules/janestreet/ppx-core.nix
new file mode 100644
index 000000000000..4f5bb87b7675
--- /dev/null
+++ b/pkgs/development/ocaml-modules/janestreet/ppx-core.nix
@@ -0,0 +1,14 @@
+{stdenv, buildOcamlJane, ppx_tools}:
+
+buildOcamlJane rec {
+  name = "ppx_core";
+  hash = "0df7vyai488lfkyh8szw2hvn22jsyrkfvq1b91j1s0g0y27nnfax";
+  propagatedBuildInputs =
+    [ ppx_tools ];
+
+  meta = with stdenv.lib; {
+    description = "PPX standard library";
+    maintainers = [ maintainers.maurer ];
+    license = licenses.asl20;
+  };
+}