通常の Makefile の使用を避けるために、私が取り組んでいるプロジェクトを ocamlbuild でコンパイルしようとしていますが、これは少し複雑です。
具体的には、最初にコンパイルする必要がある構文拡張ファイル (extend.ml) があります。通常の Makefile には次のルールがあります。
extend.cmo: extend.ml
$(OCAMLC) -pp "camlp5o pa_extend.cmo q_MLast.cmo" -I +camlp5 -c $<
次に、依存関係を計算するために、次のようなルールがあります。
depend: $(MLFILES) extend.cmo
$(OCAMLDEP) -pp "camlp5o ./extend.cmo"
もちろん、オブジェクト ファイルの作成には、上記と同様のルールが必要です。
私の質問は、これらのルール/要件を1 つの ocamlbuild コマンドに統合するにはどうすればよいですか (可能な場合) ?
最初にextend.mlファイルをコンパイルしてから、次のコマンドを使用しようとしました:
ocamlbuild -pp "camlp5o ./extend.cmo" -I +camlp5 -use-menhir -no-hygiene Main.byte
しかし、私はそれが決して最適だとは思いません。
残念ながら、私は ocamlbuild をコンパイル ツールとして使用することに慣れていないので、助けていただければ幸いです。