我期待加入到编译在LLVM Ocaml tutorial的背景下Ragel源文件到Ocaml程序编写的源文件的能力。具体来说,对于具有“.rl”扩展名的源文件我希望它来执行:添加构建工具ocamlbuild项目(Ragel)
ragel -O source.rl
构建系统当然应该再编译生成的ocaml的文件(S)和往常一样。什么是直接的方法来做到这一点?
这里是_tags文件:
<{lexer,parser}.ml>: use_camlp4, pp(camlp4of)
<*.{byte,native}>: g++, use_llvm, use_llvm_analysis
<*.{byte,native}>: use_llvm_executionengine, use_llvm_target
<*.{byte,native}>: use_llvm_scalar_opts, use_bindings
这里是myocamlbuild.ml文件:
open Ocamlbuild_plugin;;
ocaml_lib ~extern:true "llvm";;
ocaml_lib ~extern:true "llvm_analysis";;
ocaml_lib ~extern:true "llvm_executionengine";;
ocaml_lib ~extern:true "llvm_target";;
ocaml_lib ~extern:true "llvm_scalar_opts";;
flag ["link"; "ocaml"; "g++"] (S[A"-cc"; A"g++ -rdynamic"]);;
dep ["link"; "ocaml"; "use_bindings"] ["bindings.o"];;
,这将去myocamlbuild.ml的底部,是否正确?还有什么我需要做的?它似乎完全忽略了它。我所有的源文件都在同一个顶级目录中。 – brooks94
当'After_rules'被调用时,它进入传递给'dispatch'的函数。 – nlucaroni
我还需要一个“dep”命令吗? – brooks94