Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
DUNE(1)				  Dune Manual			       DUNE(1)

NAME
       dune - composable build system for OCaml

SYNOPSIS
       dune build [--watch]
       dune runtest [--watch]
       dune exec NAME
       dune utop [DIR]
       dune install
       dune init project NAME [PATH] [--libs=l1,l2 --ppx=p1,p2 --inline-tests]

DESCRIPTION
       Dune is a build system designed for OCaml projects only.	It focuses on
       providing the user with a consistent experience and takes care of most
       of the low-level	details	of OCaml compilation. All you have to do is
       provide a description of	your project and Dune will do the rest.

       The scheme it implements	is inspired from the one used inside Jane
       Street and adapted to the open source world. It has matured over	a long
       time and	is used	daily by hundreds of developers, which means that it
       is highly tested	and productive.

COMMAND	ALIASES
       promote [OPTION]	[FILE]
	   An alias for	promotion apply.

       test [OPTION] [DIR]
	   An alias for	runtest.

COMMANDS
       build [OPTION] [TARGET]
	   Build  the  given  targets,	or all installable targets if none are
	   given.

       cache COMMAND
	   Manage the shared cache of build artifacts

       clean [OPTION]
	   Clean the project.

       coq COMMAND
	   Command group related to Coq.

       describe	[OPTION] [STRING]
	   Describe the	workspace.

       diagnostics [OPTION]
	   fetch and return errors from	the current build

       exec [OPTION] PROG [ARGS]
	   Execute a command in	a similar environment as if  installation  was
	   performed.

       external-lib-deps [OPTION] [TARGET]
	   Removed command.

       fmt [OPTION]
	   Format source code.

       format-dune-file	[--dune-version=VERSION] [OPTION] [FILE]
	   Format dune files

       help [--build-info] [--man-format=FMT] [OPTION] [TOPIC]
	   Additional Dune help

       init COMMAND
	   Command group for initializing dune components

       install [OPTION]	[PACKAGE]
	   Install packages.

       installed-libraries [OPTION]
	   Print out libraries installed on the	system.

       internal	COMMAND

       ocaml COMMAND

       ocaml-merlin [OPTION]
	   Start a merlin configuration	server

       printenv	[OPTION] [PATH]
	   Print the environment of a directory

       promotion COMMAND
	   Control how changes are propagated back to source code.

       rpc COMMAND
	   Dune's RPC mechanism. Experimental.

       rules [OPTION] [TARGET]
	   Dump	internal rules.

       runtest [OPTION]	[DIR]
	   Run tests.

       shutdown	[OPTION]
	   cancel and shutdown any builds in the current workspace

       subst [--build-info] [OPTION]
	   Substitute watermarks in source files.

       top [OPTION] [DIR]
	   Print  a  list of toplevel directives for including directories and
	   loading cma files.

       uninstall [OPTION] [PACKAGE]
	   Uninstall packages.

       upgrade [OPTION]
	   Upgrade jbuilder projects to	dune

       utop [OPTION] [DIR] [ARGS]
	   Load	library	in utop

COMMON OPTIONS
       These options are common	to all commands.

       --help[=FMT] (default=auto)
	   Show	this help in format FMT. The value FMT must be	one  of	 auto,
	   pager,  groff  or  plain.  With  auto, the format is	pager or plain
	   whenever the	TERM env var is	dumb or	undefined.

       --version
	   Show	version	information.

MORE HELP
       Use `dune COMMAND --help' for help on a single command.

EXIT STATUS
       dune exits with the following status:

       0   on success.

       123 on indiscriminate errors reported on	standard error.

       124 on command line parsing errors.

       125 on unexpected internal errors (bugs).

ENVIRONMENT
       These environment variables affect the execution	of dune:

       CLICOLOR
	   If different	than 0,	ANSI colors are	supported and should  be  used
	   when	 the program isnt piped. If equal to 0,	dont output ANSI color
	   escape codes

       CLICOLOR_FORCE
	   If different	than 0,	ANSI colors should be enabled no matter	what.

BUGS
       Check bug reports at https://github.com/ocaml/dune/issues

EXAMPLES
       1.  Initialise a	new project named `foo':

	     dune init project foo

       2.  Build all targets in	the current source tree:

	     dune build

       3.  Run the executable named `bar':

	     dune exec bar

       4.  Run all tests in the	current	source tree:

	     dune runtest

       5.  Install all components defined in the project:

	     dune install

       6.  Remove all build artefacts:

	     dune clean

Dune n/a							       DUNE(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=dune&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help