Fix a couple of tests for GHCi/-O* (Trac #10052)
[ghc.git] / MAKEHELP.md
1 Quick `make` guide for GHC
2 ==========================
3
4 For a "Getting Started" guide, see:
5
6   http://ghc.haskell.org/trac/ghc/wiki/Building/Hacking
7
8 Common commands:
9
10   - `make`
11
12     Builds everything: ghc stages 1 and 2, all libraries and tools.
13
14   - `make -j2`
15
16     Parallel build: runs up to 2 commands at a time.
17
18   - `cd <dir>; make`
19
20     Builds everything in the given directory.
21
22   - cd <dir>; make help
23
24     Shows the targets available in <dir>
25
26   - make install
27
28     Installs GHC, libraries and tools under $(prefix)
29
30   - make sdist
31   - make binary-dist
32
33     Builds a source or binary distribution respectively
34
35   - `make show VALUE=<var>`
36
37     Displays the value of make variable <var>
38
39   - make clean
40   - make distclean
41   - make maintainer-clean
42
43     Various levels of cleaning: "clean" restores the tree to the
44     state after "./configure", "distclean" restores to the state
45     after "perl boot", and maintainer-clean restores the tree to the
46     completely clean checked-out state.
47
48 Using `make` in subdirectories
49 ==============================
50
51   - `make`
52
53     Builds everything in this directory (including dependencies elsewhere
54     in the tree, if necessary)
55
56   - `make fast`
57
58     The same as 'make', but omits some phases and does not
59     recalculate dependencies.  Useful for saving time if you are sure
60     the rest of the tree is up to date.
61
62   - `make clean`
63   - `make distclean`
64   - `make maintainer-clean`
65
66     Clean just this directory
67
68   - `make html`
69   - `make pdf`
70   - `make ps`
71
72     Make documentation in this directory (if any)
73
74   - `make show VALUE=var`
75
76     Show the value of $(var)
77
78   - `make <file>`
79
80     Bring a particular file up to date, e.g. make dist/build/Module.o
81     The name <file> is relative to the current directory