Add 'make help', displaying a list of useful make targets
[ghc-hetmet.git] / MAKEHELP
diff --git a/MAKEHELP b/MAKEHELP
new file mode 100644 (file)
index 0000000..47db0ab
--- /dev/null
+++ b/MAKEHELP
@@ -0,0 +1,55 @@
+
+Using the GHC build system
+--------------------------
+
+For a "Getting Started" guide, see:
+
+  http://hackage.haskell.org/trac/ghc/wiki/Building/Hacking
+
+Common commands:
+
+  make
+
+     Builds everything: ghc stages 1 and 2, all libraries and tools.
+
+  make -j2
+
+     Parallel build: runs up to 2 commands at a time (use the number of
+     CPUs in your machine in place of '2')
+
+  cd <dir>; make
+
+     Builds everything in the given directory.
+
+  cd compiler; make 2
+
+     Make just the stage2 compiler, ignoring dependencies.  Also "make 1" to
+     build just the stage1 compiler.
+
+  cd libraries; make 1
+
+     Build just those libraries that are built by stage1 (omit the "1" to build
+     all libraries, but that will also update the stage2 compiler).
+
+  make install
+
+     Installs GHC, libraries and tools under $(prefix)
+
+  make sdist
+  make binary-dist
+
+     Builds a source or binary distribution respectively
+
+  make show VALUE=<var>
+
+     Displays the value of make variable <var>
+
+  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 "sh boot", and maintainer-clean restores the tree to the
+     completely clean checked-out state.
+