我正在使用ocamlbuild的本地支持来简化我的项目构建过程。文件foo.ml
依赖于使用camlp4宏进行条件编译。 _tags
文件包含以下内容:
<foo.ml>: package(camlp4.macro), syntax(camlp4o)
这样做效果很好,但是我在传递选项给camlp4时遇到了麻烦。如果不使用ocamlbuild+ocamlfind自动化,命令行应该是这样的:
camlp4o pa_macro.cmo -DFOO file.ml
但是在使用ocamlbuild+ocamlfind时,我该如何向camlp4传递-DFOO
变量?我认为应该有一个简单的命令行选项,而不是要去修改myocamlbuild.ml
文件。
-pp
和-ppopt
传递给 ocamlfind,则似乎会忽略-ppopt
的值。因此,我不得不从我的 ocamlbuild_tags
文件中删除 "camlp4of" 标签,并在myocamlbuild.ml
文件中设置-pp
。 - Thomas Leonard