For a "Getting Started" guide, see:
http://ghc.haskell.org/trac/ghc/wiki/Building/Hacking
Common commands:
-
makeBuilds everything: ghc stages 1 and 2, all libraries and tools.
-
make -j2Parallel build: runs up to 2 commands at a time.
-
cd <dir>; makeBuilds everything in the given directory.
-
cd
; make helpShows the targets available in
-
make install
-
make install-strip
Installs GHC, libraries and tools under $(prefix). The install-strip variant strips executable files while installing them.
-
make sdist
-
make binary-dist
Builds a source or binary distribution respectively
-
make show VALUE=<var> -
make show! VALUE=<var>Show the value of make variable . The show! variant works right after ./configure (it skips reading package-data.mk files).
-
make clean
-
make distclean
-
make maintainer-clean
Various levels of cleaning: "clean" restores the tree to the state after "./configure", "distclean" restores to the state after "perl boot", and maintainer-clean restores the tree to the completely clean checked-out state.
-
makeBuilds everything in this directory (including dependencies elsewhere in the tree, if necessary)
-
make fastThe same as 'make', but omits some phases and does not recalculate dependencies. Useful for saving time if you are sure the rest of the tree is up to date.
-
make clean -
make distclean -
make maintainer-cleanClean just this directory
-
make html -
make pdf -
make psMake documentation in this directory (if any)
-
make show VALUE=<var> -
make show! VALUE=<var>Show the value of make variable . The show! variant works right after ./configure (it skips reading package-data.mk files).
-
make <file>Bring a particular file up to date, e.g. make dist/build/Module.o The name is relative to the current directory