2021-01-15 22:18:51 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, which, ocaml, findlib }:
|
2020-04-24 23:36:52 +00:00
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
if !lib.versionAtLeast ocaml.version "4.02"
|
2020-04-24 23:36:52 +00:00
|
|
|
then throw "camlpdf is not available for OCaml ${ocaml.version}"
|
|
|
|
else
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2020-09-25 04:45:31 +00:00
|
|
|
version = "2.3.1";
|
2020-04-24 23:36:52 +00:00
|
|
|
name = "ocaml${ocaml.version}-camlpdf-${version}";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "johnwhitington";
|
|
|
|
repo = "camlpdf";
|
|
|
|
rev = "v${version}";
|
2020-09-25 04:45:31 +00:00
|
|
|
sha256 = "1q69hhk63z836jbkv4wsng27w35w0qpz01c7ax0mqm8d8kmnr0v4";
|
2020-04-24 23:36:52 +00:00
|
|
|
};
|
|
|
|
|
2020-09-25 04:45:31 +00:00
|
|
|
buildInputs = [ which ocaml findlib ];
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
# Version number in META file is wrong
|
|
|
|
patchPhase = ''
|
|
|
|
patch -p 0 META <<EOF
|
|
|
|
3c3
|
|
|
|
< version="1.7.1"
|
|
|
|
---
|
|
|
|
> version="${version}"
|
|
|
|
EOF
|
|
|
|
'';
|
|
|
|
|
2020-09-25 04:45:31 +00:00
|
|
|
preInstall = ''
|
|
|
|
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
|
|
|
|
'';
|
2020-04-24 23:36:52 +00:00
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
meta = with lib; {
|
2020-04-24 23:36:52 +00:00
|
|
|
description = "An OCaml library for reading, writing and modifying PDF files";
|
|
|
|
homepage = "https://github.com/johnwhitington/camlpdf";
|
|
|
|
license = licenses.lgpl21Plus;
|
|
|
|
maintainers = with maintainers; [vbgl];
|
|
|
|
};
|
|
|
|
}
|