1 Quick `make` guide for GHC
2 ==========================
4 For a "Getting Started" guide, see:
6 http://ghc.haskell.org/trac/ghc/wiki/Building/Hacking
12 Builds everything: ghc stages 1 and 2, all libraries and tools.
16 Parallel build: runs up to 2 commands at a time.
20 Builds everything in the given directory.
24 Shows the targets available in <dir>
29 Installs GHC, libraries and tools under $(prefix). The install-strip
30 variant strips executable files while installing them.
35 Builds a source or binary distribution respectively
37 - `make show VALUE=<var>`
38 - `make show! VALUE=<var>`
40 Show the value of make variable <var>. The show! variant works right after
41 ./configure (it skips reading package-data.mk files).
45 - make maintainer-clean
47 Various levels of cleaning: "clean" restores the tree to the
48 state after "./configure", "distclean" restores to the state
49 after "perl boot", and maintainer-clean restores the tree to the
50 completely clean checked-out state.
52 Using `make` in subdirectories
53 ==============================
57 Builds everything in this directory (including dependencies elsewhere
58 in the tree, if necessary)
62 The same as 'make', but omits some phases and does not
63 recalculate dependencies. Useful for saving time if you are sure
64 the rest of the tree is up to date.
68 - `make maintainer-clean`
70 Clean just this directory
76 Make documentation in this directory (if any)
78 - `make show VALUE=<var>`
79 - `make show! VALUE=<var>`
81 Show the value of make variable <var>. The show! variant works right after
82 ./configure (it skips reading package-data.mk files).
86 Bring a particular file up to date, e.g. make dist/build/Module.o
87 The name <file> is relative to the current directory