* Add ocaml packages findlib, camlzip, ocaml-ssl, ocaml-batteries, menhir, camomile, ocaml-lwt, cryptokit, ocaml-cryptgps, ounit, ocaml-react
svn path=/nixpkgs/trunk/; revision=25041
This commit is contained in:
@@ -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";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
Setting paths to search for dnynmic libraries isn't very useful in Nix.
|
||||
|
||||
--- findlib-1.2.6/findlib.conf.in 2010-08-17 14:50:28.000000000 -0400
|
||||
+++ findlib-1.2.6/findlib.conf.in 2010-11-24 09:46:55.179648354 -0500
|
||||
@@ -1,2 +1,3 @@
|
||||
destdir="@SITELIB@"
|
||||
path="@SITELIB@"
|
||||
+ldconf="ignore"
|
||||
Reference in New Issue
Block a user