Я хочу добавить возможность компилировать исходные файлы Ragel в исходные файлы Ocaml в контексте LLVM Ocaml tutorial. В частности, для исходных файлов с расширением «.rl» Я хотел бы, чтобы это выполнить:Добавить инструмент построения в проект ocamlbuild (Ragel)
ragel -O source.rl
Система сборки должна, конечно, затем компилировать результирующий OCAML файл (ы), как обычно. Что такое простой способ сделать это?
Вот файл _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
Он переходит в функцию, переданную 'dispatch', когда вызывается' After_rules'. – nlucaroni
Мне также нужна команда «dep»? – brooks94