ocamlPackages.menhir: support --suggest-menhirLib (#358146)
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
{ buildDunePackage
|
||||
{ buildDunePackage, substituteAll, ocaml
|
||||
, menhirLib, menhirSdk
|
||||
}:
|
||||
|
||||
@@ -11,6 +11,13 @@ buildDunePackage rec {
|
||||
|
||||
buildInputs = [ menhirLib menhirSdk ];
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./menhir-suggest-menhirLib.patch;
|
||||
libdir = "${menhirLib}/lib/ocaml/${ocaml.version}/site-lib/menhirLib";
|
||||
})
|
||||
];
|
||||
|
||||
meta = menhirSdk.meta // {
|
||||
description = "LR(1) parser generator for OCaml";
|
||||
mainProgram = "menhir";
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
diff --git a/src/installation.ml b/src/installation.ml
|
||||
index 3c64e395..be7d6e7b 100644
|
||||
--- a/src/installation.ml
|
||||
+++ b/src/installation.ml
|
||||
@@ -39,13 +39,4 @@ let rec normalize fn =
|
||||
and hope that it is of the form [.../bin/menhir]. We change this to
|
||||
[.../lib/menhirLib], and hope that this is where MenhirLib is installed. *)
|
||||
|
||||
-let libdir () =
|
||||
- let root =
|
||||
- Sys.executable_name
|
||||
- |> normalize
|
||||
- |> Filename.dirname (* remove [menhir] *)
|
||||
- |> Filename.dirname (* remove [bin] *)
|
||||
- in
|
||||
- Filename.concat
|
||||
- root
|
||||
- (Filename.concat "lib" "menhirLib")
|
||||
+let libdir () = ignore normalize; "@libdir@"
|
||||
Reference in New Issue
Block a user