1dune-rules(1) Dune Manual dune-rules(1)
2
3
4
6 dune-rules - Dump internal rules.
7
9 dune rules [OPTION]... [TARGET]...
10
12 Dump Dune internal rules for the given targets. If no targets are
13 given, dump all the internal rules.
14
15 By default the output is a list of S-expressions, one S-expression per
16 rule. Each S-expression is of the form:
17
18 ((deps (<dependencies>))
19 (targets (<targets>))
20 (context <context-name>)
21 (action <action>))
22
23 <context-name> is the context is which the action is executed. It is
24 omitted if the action is independent from the context.
25
26 <action> is the action following the same syntax as user actions, as
27 described in the manual.
28
30 -f, --force
31 Force actions associated to aliases to be re-executed even if their
32 dependencies haven't changed.
33
34 --help[=FMT] (default=auto)
35 Show this help in format FMT. The value FMT must be one of `auto',
36 `pager', `groff' or `plain'. With `auto', the format is `pager` or
37 `plain' whenever the TERM env var is `dumb' or undefined.
38
39 -m, --makefile
40 Output the rules in Makefile syntax.
41
42 -o FILE
43 Output to a file instead of stdout.
44
45 -r, --recursive
46 Print all rules needed to build the transitive dependencies of the
47 given targets.
48
49 --version
50 Show version information.
51
53 These options are common to all commands.
54
55 --auto-promote
56 Automatically promote files. This is similar to running dune
57 promote after the build.
58
59 --build-dir=FILE (absent DUNE_BUILD_DIR env)
60 Specified build directory. _build if unspecified
61
62 --config-file=FILE
63 Load this configuration file instead of the default one.
64
65 --debug-backtraces
66 Always print exception backtraces.
67
68 --debug-dependency-path
69 In case of error, print the dependency path from the targets on the
70 command line to the rule that failed.
71
72 --debug-findlib
73 Debug the findlib sub-system.
74
75 --default-target=TARGET
76 Set the default target that when none is specified to dune build.
77 It defaults to @@default.
78
79 --dev
80 Same as --profile dev
81
82 --diff-command=VAL
83 Shell command to use to diff files
84
85 --display=MODE
86 Control the display mode of Dune. See dune-config(5) for more
87 details.
88
89 --ignore-promoted-rules
90 Ignore rules with (mode promote)
91
92 -j JOBS
93 Run no more than JOBS commands simultaneously.
94
95 --no-buffer
96 Do not buffer the output of commands executed by dune. By default
97 dune buffers the output of subcommands, in order to prevent
98 interleaving when multiple commands are executed in parallel.
99 However, this can be an issue when debugging long running tests.
100 With --no-buffer, commands have direct access to the terminal. Note
101 that as a result their output won't be captured in the log file.
102 You should use this option in conjunction with -j 1, to avoid
103 interleaving. Additionally you should use --verbose as well, to
104 make sure that commands are printed before they are being executed.
105
106 --no-config
107 Do not load the configuration file
108
109 --only-packages=PACKAGES
110 Ignore stanzas referring to a package that is not in PACKAGES.
111 PACKAGES is a comma-separated list of package names. Note that this
112 has the same effect as deleting the relevant stanzas from jbuild
113 files. It is mostly meant for releases. During development, it is
114 likely that what you want instead is to build a particular
115 <package>.install target.
116
117 -p PACKAGES, --for-release-of-packages=PACKAGES
118 Shorthand for --root . --only-packages PACKAGE --promote ignore
119 --no-config --profile release. You must use this option in your
120 <package>.opam files, in order to build only what's necessary when
121 your project contains multiple packages as well as getting
122 reproducible builds.
123
124 --profile=VAL
125 Select the build profile, for instance dev or release. The default
126 is dev.
127
128 --root=DIR
129 Use this directory as workspace root instead of guessing it. Note
130 that this option doesn't change the interpretation of targets given
131 on the command line. It is only intended for scripts.
132
133 --verbose
134 Same as --display verbose
135
136 --workspace=FILE
137 Use this specific workspace file instead of looking it up.
138
139 -x VAL
140 Cross-compile using this toolchain.
141
143 Use `dune COMMAND --help' for help on a single command.
144
146 These environment variables affect the execution of rules:
147
148 DUNE_BUILD_DIR
149 Specified build directory. _build if unspecified
150
152 Check bug reports at https://github.com/ocaml/dune/issues
153
154
155
156Dune 11VERSION11 dune-rules(1)