diff --git a/pkgs/development/ocaml-modules/frontc/default.nix b/pkgs/development/ocaml-modules/frontc/default.nix index c05422497ee..c4ec0908fb0 100644 --- a/pkgs/development/ocaml-modules/frontc/default.nix +++ b/pkgs/development/ocaml-modules/frontc/default.nix @@ -1,26 +1,19 @@ -{ stdenv, lib, fetchurl, fetchpatch, fetchFromGitHub, ocaml, findlib }: +{ lib, buildDunePackage, fetchFromGitHub, ocaml, menhir }: -let - meta_file = fetchurl { - url = "https://raw.githubusercontent.com/ocaml/opam-repository/3c191ae9356ca7b3b628f2707cfcb863db42480f/packages/FrontC/FrontC.3.4.1/files/META"; - sha256 = "0s2wsinycldk8y5p09xd0hsgbhckhy7bkghzl63bph6mwv64kq2d"; - }; -in - -stdenv.mkDerivation rec { - pname = "ocaml${ocaml.version}-FrontC"; - version = "3.4.1"; +buildDunePackage rec { + pname = "FrontC"; + version = "4.1.0"; src = fetchFromGitHub { owner = "BinaryAnalysisPlatform"; repo = "FrontC"; - rev = "V_${lib.replaceStrings ["."] ["_"] version}"; - sha256 = "1dq5nks0c9gsbr1m8k39m1bniawr5hqcy1r8x5px7naa95ch06ak"; + rev = "v${version}"; + sha256 = "1mi1vh4qgscnb470qwidccaqd068j1bqlz6pf6wddk21paliwnqb"; }; - nativeBuildInputs = [ ocaml findlib ]; + minimalOCamlVersion = "4.08"; - strictDeps = true; + nativeBuildInputs = [ menhir ]; meta = with lib; { inherit (src.meta) homepage; @@ -29,14 +22,4 @@ stdenv.mkDerivation rec { license = licenses.lgpl21; maintainers = [ maintainers.maurer ]; }; - - patches = [ (fetchpatch { - url = "https://raw.githubusercontent.com/ocaml/opam-repository/3c191ae9356ca7b3b628f2707cfcb863db42480f/packages/FrontC/FrontC.3.4.1/files/opam.patch"; - sha256 = "0v4f6740jbj1kxg1y03dzfa3x3gsrhv06wpzdj30gl4ki5fvj4hs"; - }) - ]; - - makeFlags = [ "PREFIX=$(out)" "OCAML_SITE=$(OCAMLFIND_DESTDIR)" ]; - - postInstall = "cp ${meta_file} $OCAMLFIND_DESTDIR/FrontC/META"; }