ocamlPackages.sedlex_2: fix build with OCaml ≥ 4.08

This commit is contained in:
Vincent Laporte 2020-03-08 16:58:47 +01:00 committed by Vincent Laporte
parent 0729b8c55e
commit e73a9e6b95

View File

@ -1,16 +1,15 @@
{ stdenv { lib
, fetchFromGitHub , fetchFromGitHub
, fetchurl , fetchurl
, buildDunePackage
, ocaml , ocaml
, dune
, findlib
, gen , gen
, ppx_tools_versioned , ppx_tools_versioned
, ocaml-migrate-parsetree , ocaml-migrate-parsetree
, uchar , uchar
}: }:
if stdenv.lib.versionOlder ocaml.version "4.02.3" if lib.versionOlder ocaml.version "4.02.3"
then throw "sedlex is not available for OCaml ${ocaml.version}" then throw "sedlex is not available for OCaml ${ocaml.version}"
else else
@ -28,8 +27,8 @@ let
sha256 = "0gsb1jpj3mnqbjgbavi4l95gl6g4agq58j82km22fdfg63j3w3fk"; sha256 = "0gsb1jpj3mnqbjgbavi4l95gl6g4agq58j82km22fdfg63j3w3fk";
}; };
in in
stdenv.mkDerivation rec { buildDunePackage rec {
name = "ocaml${ocaml.version}-sedlex-${version}"; pname = "sedlex";
version = "2.1"; version = "2.1";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -39,7 +38,7 @@ stdenv.mkDerivation rec {
sha256 = "05f6qa8x3vhpdz1fcnpqk37fpnyyq13icqsk2gww5idjnh6kng26"; sha256 = "05f6qa8x3vhpdz1fcnpqk37fpnyyq13icqsk2gww5idjnh6kng26";
}; };
buildInputs = [ ocaml findlib dune ppx_tools_versioned ocaml-migrate-parsetree ]; buildInputs = [ ppx_tools_versioned ocaml-migrate-parsetree ];
propagatedBuildInputs = [ gen uchar ]; propagatedBuildInputs = [ gen uchar ];
@ -49,21 +48,14 @@ stdenv.mkDerivation rec {
ln -s ${PropList} src/generator/data/PropList.txt ln -s ${PropList} src/generator/data/PropList.txt
''; '';
buildFlags = [ "build" ]; doCheck = true;
installPhase = ''
make INSTALL_ARGS="--prefix=$out --libdir=$OCAMLFIND_DESTDIR" install
'';
createFindlibDestdir = true;
dontStrip = true; dontStrip = true;
meta = { meta = {
homepage = https://github.com/ocaml-community/sedlex; homepage = https://github.com/ocaml-community/sedlex;
description = "An OCaml lexer generator for Unicode"; description = "An OCaml lexer generator for Unicode";
license = stdenv.lib.licenses.mit; license = lib.licenses.mit;
inherit (ocaml.meta) platforms; maintainers = [ lib.maintainers.marsam ];
maintainers = [ stdenv.lib.maintainers.marsam ];
}; };
} }