about summary refs log tree commit diff
path: root/pkgs/development/tools/ocaml/findlib/default.nix
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-12-11 12:47:00 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-12-11 12:47:00 +0000
commitee04ffcb550809f7d97d709ff4ec709a21b30ab9 (patch)
tree470bdb3f97b0ab18d3abeec3e1f59db7a4af34ed /pkgs/development/tools/ocaml/findlib/default.nix
parent3f1a32c266f792290cb08c45ab40f22a43cb13cb (diff)
parent97d4a54698a4dea4b57ec4124591d75a740ee44e (diff)
downloadnixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.gz
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.bz2
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.lz
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.xz
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.zst
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.zip
Updating from trunk. I resolved simple conflicts.
svn path=/nixpkgs/branches/stdenv-updates/; revision=25061
Diffstat (limited to 'pkgs/development/tools/ocaml/findlib/default.nix')
-rw-r--r--pkgs/development/tools/ocaml/findlib/default.nix54
1 files changed, 54 insertions, 0 deletions
diff --git a/pkgs/development/tools/ocaml/findlib/default.nix b/pkgs/development/tools/ocaml/findlib/default.nix
new file mode 100644
index 000000000000..e1f85f745759
--- /dev/null
+++ b/pkgs/development/tools/ocaml/findlib/default.nix
@@ -0,0 +1,54 @@
+{stdenv, fetchurl, m4, ncurses, ocaml, writeText}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "1.2.6";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-findlib-${version}";
+
+  src = fetchurl {
+    url = "http://download.camlcity.org/download/findlib-${version}.tar.gz";
+    sha256 = "1b6z5lylsjxxaifw2yc21cs0dc84zqi4q57sgwg4j8k3m60ivpxs";
+  };
+
+  buildInputs = [m4 ncurses ocaml];
+
+  patches = [ ./ldconf.patch ];
+
+  dontAddPrefix=true;
+
+  preConfigure=''
+    configureFlagsArray=(
+      -bindir $out/bin
+      -mandir $out/share/man
+      -sitelib $out/lib/ocaml/${ocaml_version}/site-lib
+      -config $out/etc/findlib.conf
+      -no-topfind
+    )
+  '';
+
+  buildPhase = ''
+    make all
+    make opt
+  '';
+
+  setupHook = writeText "setupHook.sh" ''
+    addOCamlPath () {
+        if test -d "''$1/lib/ocaml/${ocaml_version}/site-lib"; then
+            export OCAMLPATH="''${OCAMLPATH}''${OCAMLPATH:+:}''$1/lib/ocaml/${ocaml_version}/site-lib/"
+        fi
+        export OCAMLFIND_DESTDIR="''$out/lib/ocaml/${ocaml_version}/site-lib/"
+        ensureDir ''$OCAMLFIND_DESTDIR
+    }
+    
+    envHooks=(''${envHooks[@]} addOCamlPath)
+  '';
+
+  meta = {
+    homepage = http://projects.camlcity.org/projects/findlib.html;
+    description = "O'Caml library manager";
+    license = "MIT/X11";
+  };
+}