Merge pull request #38438 from vbgl/ocaml-ocsigen-deriving-0.8.1
ocamlPackages.ocsigen_deriving: 0.7.1 -> 0.8.1
This commit is contained in:
commit
5a4a3a6433
@ -1,15 +1,30 @@
|
|||||||
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, oasis, ocaml_optcomp, camlp4 }:
|
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, oasis, ocaml_optcomp, camlp4
|
||||||
|
, num
|
||||||
|
}:
|
||||||
|
|
||||||
let version = "0.7.1"; in
|
let param =
|
||||||
|
if stdenv.lib.versionAtLeast ocaml.version "4.03"
|
||||||
|
then {
|
||||||
|
version = "0.8.1";
|
||||||
|
sha256 = "03vzrybdpjydbpil97zmir71kpsn2yxkjnzysma7fvybk8ll4zh9";
|
||||||
|
buildInputs = [ num ];
|
||||||
|
} else {
|
||||||
|
version = "0.7.1";
|
||||||
|
sha256 = "0gg3nr3iic4rwqrcc0qvfm9x0x57zclvdsnpy0z8rv2fl5isbzms";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
|
||||||
|
let inherit (param) version; in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "ocsigen-deriving-${version}";
|
name = "ocsigen-deriving-${version}";
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://github.com/ocsigen/deriving/archive/${version}.tar.gz";
|
url = "https://github.com/ocsigen/deriving/archive/${version}.tar.gz";
|
||||||
sha256 = "0gg3nr3iic4rwqrcc0qvfm9x0x57zclvdsnpy0z8rv2fl5isbzms";
|
inherit (param) sha256;
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ ocaml findlib ocamlbuild oasis ocaml_optcomp camlp4 ];
|
buildInputs = [ ocaml findlib ocamlbuild oasis ocaml_optcomp camlp4 ]
|
||||||
|
++ (param.buildInputs or []);
|
||||||
|
|
||||||
createFindlibDestdir = true;
|
createFindlibDestdir = true;
|
||||||
|
|
||||||
|
12
pkgs/development/ocaml-modules/optcomp/META
Normal file
12
pkgs/development/ocaml-modules/optcomp/META
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# OASIS_START
|
||||||
|
# DO NOT EDIT (digest: ec844fa3189acb2a866b89a69d111ba4)
|
||||||
|
version = "1.6"
|
||||||
|
description = "Optional compilation with cpp-like directives"
|
||||||
|
requires = "camlp4"
|
||||||
|
archive(syntax, preprocessor) = "optcomp.cma"
|
||||||
|
archive(syntax, toploop) = "optcomp.cma"
|
||||||
|
archive(syntax, preprocessor, native) = "optcomp.cmxa"
|
||||||
|
archive(syntax, preprocessor, native, plugin) = "optcomp.cmxs"
|
||||||
|
exists_if = "optcomp.cma"
|
||||||
|
# OASIS_STOP
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, camlp4 }:
|
{ stdenv, fetchurl, fetchpatch, ocaml, findlib, ocamlbuild, camlp4 }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "ocaml-optcomp-1.6";
|
name = "ocaml-optcomp-1.6";
|
||||||
@ -7,10 +7,32 @@ stdenv.mkDerivation {
|
|||||||
sha256 = "0hhhb2gisah1h22zlg5iszbgqxdd7x85cwd57bd4mfkx9l7dh8jh";
|
sha256 = "0hhhb2gisah1h22zlg5iszbgqxdd7x85cwd57bd4mfkx9l7dh8jh";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches =
|
||||||
|
let inherit (stdenv.lib) optional versionAtLeast; in
|
||||||
|
optional (versionAtLeast ocaml.version "4.02") (fetchpatch {
|
||||||
|
url = "https://github.com/diml/optcomp/commit/b7f809360c9794b383a4bc0492f6df381276b429.patch";
|
||||||
|
sha256 = "1n095lk94jq1rwi0l24g2wbgms7249wdd31n0ji895dr6755s93y";
|
||||||
|
})
|
||||||
|
;
|
||||||
|
|
||||||
createFindlibDestdir = true;
|
createFindlibDestdir = true;
|
||||||
|
|
||||||
buildInputs = [ ocaml findlib ocamlbuild camlp4 ];
|
buildInputs = [ ocaml findlib ocamlbuild camlp4 ];
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
cp ${./META} META
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
ocamlbuild src/optcomp.cmxs src/optcomp.cma src/optcomp_o.native src/optcomp_r.native
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp _build/src/optcomp_o.native $out/bin/optcomp-o
|
||||||
|
cp _build/src/optcomp_r.native $out/bin/optcomp-r
|
||||||
|
ocamlfind install optcomp META _build/src/optcomp.{a,cma,cmxa,cmxs} _build/src/pa_optcomp.{cmi,cmx,mli}
|
||||||
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = https://github.com/diml/optcomp;
|
homepage = https://github.com/diml/optcomp;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user