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.
Invoking make help in any directory of the build tree will elicit
a message describing the targets available in that directory.
(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.
Delete all files from the current directory that are normally
created by make. Don't delete the files that record the
The following targets are accepted only by the top-level Makefile:
install and install-strip
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, or in DESTDIR; see Building/Installing.
The install-strip variant strips executable files while installing them.
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.
The same as distclean, but also removes files generated by python3 boot.
The result of make maintainer-clean should be a completely clean
source tree, containing only revision-controlled files (besides files
you created yourself, like for example mk/build.mk).
Runs the testsuite with some sensible default settings.
Runs the testsuite in fast mode.
slowtest (GHC <= 7.10: fulltest)
Runs the full testsuite.
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
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.