summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/frontc/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules/frontc/default.nix')
-rw-r--r--pkgs/development/ocaml-modules/frontc/default.nix33
1 files changed, 8 insertions, 25 deletions
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";
 }