-This is the root directory for functional-programming tools
-distributed by the Computing Science Department at Glasgow University.
-Simon Peyton Jones <simonpj@microsoft.com> is the ringleader of this
-effort. The tools are:
-
- ghc the Glasgow Haskell compilation system
- hslibs collection of Haskell libraries
- haggis the Haggis GUI toolkit
- happy the Happy Haskell parser generator
- hdirect Haskell interop tool
- green-card a foreign function interface pre-processor for Haskell.
- nofib the NoFib Haskell benchmarking suite
- literate the Glasgow "literate programming" system
- glafp-utils shared utility programs
- mk GNU make setup used by all of fptools
- docs documentation on the installing and using
- the fptools suite.
-
-Components which are always part of a distribution (never stand-alone)
-are "glafp-utils" and "mk" (a configuration system).
-
-There is usually an ANNOUNCE* file with any distribution. Please
-consult that, or the <piece>/README file, to find out how to proceed.
+The Glasgow Haskell Compiler
+============================
+
+This is the source tree for GHC, a compiler and interactive
+environment for the Haskell functional programming language.
+
+For more information, visit GHC's web site:
+
+ http://www.haskell.org/ghc/
+
+Information for developers of GHC can be found here:
+
+ http://hackage.haskell.org/trac/ghc/
+
+
+Getting the Source
+==================
+
+There are two ways to get a source tree:
+
+ 1. Download source tarballs
+ ---------------------------
+
+ The GHC source distribution comes in two parts:
+
+ ghc-<version>-src.tar.bz2
+ ghc-<version>-src-extralibs.tar.bz2
+
+ You only need the first one, which contains GHC itself and
+ the "boot" libraries.
+
+ The extralibs package contains a bunch of optional libraries. If
+ you want, you can unpack this over the top of your source tree, and
+ these extra libraries will be built and installed automatically.
+ Make sure you unpack the extralibs package before running configure
+ (see below).
+
+ If you don't build extralibs now, you can add them later by building
+ and installing individual packages using Cabal.
+
+ 2. Get the source from darcs
+ ----------------------------
+
+ First get the GHC darcs repository:
+
+ $ darcs get http://darcs.haskell.org/ghc/
+
+ Then run the darcs-all script in that repository
+ to get the other repositories:
+
+ $ cd ghc
+ $ chmod +x darcs-all
+ $ ./darcs-all get
+
+ This grabs the "boot" packages by default. To get the full set of
+ packages, instead say
+
+ $ ./darcs-all --extra get
+
+ This also downloads the libraries that are normally bundled in the
+ "extralibs" package (see above).
+
+
+Building & Installing
+=====================
+
+For full information on building GHC, see the GHC Building Guide [3].
+Here follows a summary - if you get into trouble, the Building Guide
+has all the answers.
+
+NB. you need GHC installed in order to build GHC, because the compiler
+is itself written in Haskell. It is possible to build GHC using just
+a C compiler, but we don't recommend this as the normal route. If you
+*really* want to do it this way, then see the Building Guide.
+
+If you're building from darcs sources (as opposed to a source
+distribution) then you also need to install Happy [4] and Alex [5].
+
+For building library documentation, you'll need Haddock [6]. To build
+the compiler documentation, you need a good DocBook XML toolchain.
+
+Quick start: the following gives you a default build:
+
+ $ sh boot
+ $ ./configure
+ $ make
+ $ make install
+
+The "sh boot" step is only necessary if this is a tree checked out
+from darcs. For source distributions downloaded from GHC's web site,
+this step has already been performed.
+
+If you want the documentation too then use these commands instead:
+
+ $ echo "XMLDocWays = html" > mk/build.mk
+ $ echo "HADDOCK_DOCS = YES" >> mk/build.mk
+ $ sh boot
+ $ ./configure
+ $ make
+ $ make install
+ $ make install-docs
+
+These steps give you the default build, which includes everything
+optimised and built in various ways (eg. profiling libs are built).
+It can take a long time. To customise the build, see the file
+HACKING.
+
+
+
+References
+==========
+
+ [1] http://www.haskell.org/ghc/ GHC Home Page
+ [2] http://hackage.haskell.org/trac/ghc GHC Developer's Wiki
+ [3] http://hackage.haskell.org/trac/ghc/wiki/Building Building Guide
+ [4] http://www.haskell.org/happy/ Happy
+ [5] http://www.haskell.org/alex/ Alex
+ [6] http://www.haskell.org/haddock/ Haddock
+
+
+Contributors
+============
+
+Please see
+
+ http://www.haskell.org/ghc/contributors.html