wiki:Building/StandardTargets

Version 6 (modified by dterei, 3 years ago) (diff)

Remove info on html,ps,pdf target since we no longer support them

Standard Targets

The following targets work both at the top level, and in any subdirectory of the tree. When used in a subdirectory, they apply only to the components of the system in that directory.

help
Invoking make help in any directory of the build tree will elicit a message describing the targets available in that directory.
all
(default target, can be omitted). Builds all the targets for this directory. At the top level, builds everything that needs to be built for a GHC installation, including the stage 2 GHC, all libraries and documentation. After make, make install will not need to do any further rebuilding.
clean
Delete all files from the current directory that are normally created by make. Don't delete the files that record the configuration.

To see how these targets are defined: Building/Architecture/Idiom/StandardTargets.

Top level targets

The following targets are accepted only by the top-level Makefile:

install
installs the things built by all. Where does it install them? In the places you specified when running configure, principally set by the --prefix flag; see Building/Installing.
distclean
The same as clean, but also removes files created by configure. distclean preserves files that would normally go in a source distrubtion. Note that after make distclean you will have to run ./configure before building again.
maintainer-clean
The same as distclean, but also removes files generated by perl boot. The result of make maintainer-clean should be a completely clean source tree, containing only revision-controlled files.
test
Runs the testsuite in fast mode with some sensible default settings.
fulltest
Runs the full testsuite with some sensible default settings.
binary-dist
Builds a binary distribution. A binary distribution is a copy of the build tree with the source files removed, such that it can be installed on a different system simply by issuing `./configure; make install`.
sdist
Builds a source distribution. A source distribution is a source tree for GHC, complete with some extra files included for convenience so that the user doesn't need to install autoconf, Happy, or Alex in order to build it. Hence make sdist only works in a completely built tree.
TAGS, tags
Makes files TAGS (for emacs) and tags (for vim) in the top-level directory.