我正在使用camlp4.macro啓用條件編譯。我有 問題通知OCamlbuild某些標記爲「use_jscore」 的文件必須使用給定的camlp4選項進行預處理。這是我目前有的:OCamlbuild和camlp4選項
let _ = dispatch begin function
| After_rules ->
flag ["ocaml"; "use_jscore"] (S[A"-package"; A"camlp4.macro"; A"-syntax"; A"camlp4o"; A"-ppopt"; A"-DUSE_JSCORE"]);
但是這被OCamlbuild錯過了。我正在使用ocamlfind,因此我基本上想告訴OCamlbuild,所有標記爲 「use_jscore」的OCaml文件都必須由camlp4.macro進行預處理,該命令也會給出 -DUSE_JSCORE選項。
但不會有我要重複完全相同的語句,但與S /編譯/ DEP /?有沒有辦法避免重複? – 2012-04-18 18:16:12
你是對的,你可能不得不重複'dep'語句。如果不想重複,可以將'S(...)'的內容存儲在局部變量中。 – Thomas 2012-04-18 21:53:32