--compile-errors
の機能を使用しており、menhir
非常に満足しています。ocamlbuild
プロジェクトのコンパイルの管理にも使用しています。このプロジェクトは非常に基本的なものであるため、ビルド インフラストラクチャはこれまでのところ簡単なままです。
プロジェクトのルートに単一の_tags
ファイルと単純なものがあります。Makefile
まだファイルがありませmyocamlbuild.ml
ん。この_tags
ファイルには次の 1 行しか含まれていません。
<src/*>: package(ppx_deriving.std)
Makefile の関連部分は次のとおりです。
all: src/ParsingErrors.ml
ocamlbuild $(OPTIONS) src/Main.native
src/ParsingErrors.ml: src/Handcrafted.messages src/Parser.mly
menhir --compile-errors src/Handcrafted.messages src/Parser.mly > src/ParsingErrors.ml
OPTIONS = -j 4 -use-menhir -use-ocamlfind -yaccflag --table -pkgs menhirLib,str,unix
OCamlbuild と Menhir は通常うまく統合されてい--compile-errors
ますが、かなり新しい機能のようです。src/ParsingErrors.ml
ビルド ディレクトリではなく、ソース ディレクトリに自動生成されたファイルを配置するのが嫌いなので、私の設定は理想的ではありません。Menhir にこのエラー メッセージ ファイルをビルドしてもらいたいことを OCamlbuild に説明するには、どうすればよいでしょうか? ファイルの命名規則を (たとえば、src/Parser.messages
とsrc/Parser.ml
に) 変更しても、物事が単純化されるのであれば問題ありません。
注:myocamlbuild.ml
他のプロジェクトにファイルがありますが、オンライン ソースからコピーしました。解読するのは難しいと思いますし、これらの書き方もよくわかりません。