RANT(1)

NAME
rant - A flexible and portable build tool.

SYNOPSIS
rant [OPTION] ... [TARGET] ...

DESCRIPTION
Striking features

* Defining custom tasks.

* Automated packaging, testing and RDoc generation for Ruby
  applications and libraries.

* Creation of a monolithic script tailored to the needs of a specific
  project which can be used instead of an Rant installation - users
  don't need to install Rant.

* Creating gzipped tar and zip archives -- without installing
  additional software.

* Optional recognition of file changes based on MD5 checksums instead
  of file modification times.

* Dependency checking for C/C++ source files (integrated makedepend
  replacement).

* Primitive support for compiling C# sources with csc, cscc and mcs.

Startup

On startup, rant will look for a file called Rantfile , rantfile or root.rant which contains the build specification (which in fact is valid Ruby code). After reading the Rantfile(s), rant will execute the following tasks:

If at least one target was given on the commandline:

rant will execute all tasks necessary to build all targets given on the commandline.

else:

rant tries to build the target called "default". If no task with this name exists, rant invokes the first defined task.

If you want to know which task(s) will be invoked when no target is given on the commandline, run rant with the -T option. Example:

  $ rant -T
  rant # => test
  rant package # Create packages for distribution.
  rant doc # Generate documentation.
  rant publish-docs # Publish html docs on make.rubyfore.org.
                     # Note: scp will prompt for rubyforge password.
  rant test # Run basic tests.

The first line always shows the target that will be built if no target argument is given. In this case, it would be the test target.

OPTIONS

--help                           -h
          Print a help message and exit.

--version                        -V
          Print version of Rant and exit.

--verbose                        -v
          Print more messages to stderr.

--quiet                          -q
          Don't print commands.

--err-commands
          Print failed commands and their exit status.

--directory DIRECTORY            -C DIRECTORY
          Run rant in DIRECTORY.

--cd-parent                      -c
          With this option, Rant starts to search for an Rantfile in the
          current working directory as usual, but if it doesn't find one,
          it changes to the parent directory and looks there for an
          Rantfile. This is repeated until an Rantfile is found or the
          working directory is the root directory of the filesystem.

--look-up                        -u
          Look in parent directories for root Rantfile.

--rantfile RANTFILE              -f RANTFILE
          Process RANTFILE instead of standard rantfiles.
          Multiple files may be specified by repeating this option.

--force-run TARGET               -a TARGET
          Force rebuild of TARGET and all dependencies.

--dry-run                        -n
          Print the names of the tasks that would be executed instead
          of actually executing task actions.

--tasks                          -T
          Show a list of all described tasks and exit.

AUTHOR
rant was developed by Stefan Lang <langstefan@gmx.at>

COPYRIGHT
Copyright (C) 2005 Stefan Lang <langstefan@gmx.at>

SEE ALSO
For extensive documentation visit the Rant homepage http://make.ruby-co.de