{stdenv, fetchurl, m4, ncurses, ocaml, writeText}: let ocaml_version = (builtins.parseDrvName ocaml.name).version; in stdenv.mkDerivation { name = "ocaml-findlib-1.3.3"; src = fetchurl { url = http://download.camlcity.org/download/findlib-1.3.3.tar.gz; sha256 = "981f5c67118a2be015efa79f3af3cb0063376b93123b5d695e7cb5c586b1d45c"; }; buildInputs = [m4 ncurses ocaml]; patches = [ ./ldconf.patch ./install_topfind.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 ) ''; 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/" if test -n "$createFindlibDestdir"; then mkdir -p $OCAMLFIND_DESTDIR fi } envHooks=(''${envHooks[@]} addOCamlPath) ''; meta = { homepage = http://projects.camlcity.org/projects/findlib.html; description = "O'Caml library manager"; license = "MIT/X11"; platforms = ocaml.meta.platforms; maintainers = [ stdenv.lib.maintainers.z77z ]; }; }