dkml-dune-dsl-show index
Library dkml-dune-dsl-show
The entry point of this library is the module: DkmlDuneDslShow
.
You use this library by:
- applying the
DkmlDuneDslShow.I
interpreter module to your Dune DSL expression - converting the last step into an executable
- run the executable, capturing its results into a
"dune.inc"
include file - running the
"dune.inc"
as part of your Dune build
All of that is represented by the following Dune snippet:
(rule
(target dune_inc.ml)
(action
(with-stdout-to
%{target}
(echo
; YOU: Change "My_dune" to the name of your Dune DSL expression module
"module M = My_dune.Build (DkmlDuneDslShow.I)
let () = print_string @@ DkmlDuneDslShow.plain_hum M.res"))))
(executable
(name dune_inc)
; YOU: Change "my_dune" to the name of your Dune DSL file
(modules dune_inc my_dune)
(libraries dkml-dune-dsl-show))
(rule
(alias gendune)
(action
(progn
(with-stdout-to
dune.gen.inc
(run ./dune_inc.exe %{dep:dune-parameters.json}))
(diff? dune.inc dune.gen.inc))))
(include dune.inc)
You will need to change "my_dune"
and the corresponding name of the module ("My_dune"
) in the above snippet.