Control program for the dune build system
dunecontrol [OPTIONS] COMMANDS [COMMAND-OPTIONS]
dunecontrol is the control program for the build system of the Dune libraries.
The Dune libraries form a set of modules. Each can be built independently using either the AutoTools or cmake. Additionally, though, there are dependencies between modules, which are expected to form a directed acyclic graph. These dependencies are set in a file called dune.module contained in the main directory of a Dune module.
The dunecontrol program helps to build sets of inter-dependent modules. It allows to construct the entire dependency graph and obtain information about it. Then it allows to give various build-related commands for all modules. These are executed in the order mandated by the dependency graph.
Colon-separated list of commands. Available commands are: help
Shows a help message and exits print
Print the list of modules sorted after their dependencies info
Same as `print', but including whether it is a dependency or suggestion printdeps
Print recursive dependencies of a module vcsetup
Setup version control repository (Git etc.) or working copy (SVN) update
Update all modules from the repository autogen
Run the autogen.sh script for each module. Does nothing, if CMake is activated configure
Run configure or cmake for each module make
Run make for each module all
Run the 'autogen', 'configure' and 'make' commands for each module exec
Execute an arbitrary command in each module source directory bexec
Execute an arbitrary command in each module build directory status
Show version control status for all modules svn
Run svn command for each svn managed module git
Run git command for each git managed module export
Run eval `dunecontrol export` to save the list of dune.module files to the DUNE_CONTROL_PATH variable
-h, --help
Show this help --debug
Run with debuggin output enabled --use-cmake
Use cmake instead of the AutoTools for building individual modules --module=mod
Only apply the actions on module mod and all modules it depends on --only=mod
Only apply the actions on module mod , but not the modules it depends on --current
Only apply the actions on the current module, the one whose source tree we are in --resume
Resume a previous run (only consider the modules not built successfully on the previous run) --skipfirst
Skip the first module (use with --resume) --opts=file
Load default options from file (see dune-common/doc/example.opts) --builddir=name
Make out-of-source builds in a subdir name. This directory is created inside each module. --[COMMAND]-opts=opts
Set options for COMMAND (this is mainly useful for the 'all' COMMAND)
dunecontrol looks for Dune modules in all directories given in the DUNE_CONTROL_PATH variable, and additionally recursively in all subdirectories of those directories. The default for the case that DUNE_CONTROL_PATH is empty is the current directory, plus a system-wide installation in /usr.
Dune was written by the Dune team (www.dune-project.org/people).
This manual page was written by Oliver Sander.
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.