Я пытаюсь компилировать проект, над которым работаю, с помощью ocamlbuild, чтобы избежать использования обычного Makefile, который мне кажется несколько более сложным.
В частности, у меня есть файл расширения синтаксиса (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"
Конечно, для создания любого объектного файла потребуется правило, подобное приведенному выше.
Мой вопрос: как я могу интегрировать эти правила/требования в одну команду ocamlbuild (если возможно)?
Я попытался сначала скомпилировать файл extend.ml, а затем использовать следующую команду:
ocamlbuild -pp "camlp5o ./extend.cmo" -I +camlp5 -use-menhir -no-hygiene Main.byte
но я не думаю, что это оптимально в любом случае.
К сожалению, я не знаком с использованием ocamlbuild в качестве инструмента для компиляции, поэтому буду очень признателен за любую помощь.