X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=README;h=d36c6423545c3b1631cb1d75532d12a63e4e82d1;hp=03642fbecb170b5db006aa6f1625b5ed71cb0550;hb=90686adf9d3dc7a09a51853df051bc4ea472d840;hpb=d2fdf91ce20bc64a4d486df8d195b6b05b000db9 diff --git a/README b/README index 03642fb..d36c642 100644 --- a/README +++ b/README @@ -21,64 +21,69 @@ There are two ways to get a source tree: 1. Download source tarballs --------------------------- - The GHC source distribution comes in two parts: + Download the GHC source distribution: ghc--src.tar.bz2 - ghc--src-extralibs.tar.bz2 - You only need the first one, which contains GHC itself and - the "core" libraries. + 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). + 2. Check out the source code from darcs + --------------------------------------- - If you don't build extralibs now, you can add them later by building - and installing individual packages using Cabal. + The recommended way to get a darcs checkout is to start off by + downloading a snapshot with a name like: - 2. Get the source from darcs - ---------------------------- + ghc-HEAD-2009-09-09-ghc-corelibs-testsuite.tar.bz2 - First get the GHC darcs repository: + from: - $ darcs get http://darcs.haskell.org/ghc/ + http://darcs.haskell.org/ - Then run the darcs-all shell script in that repository - to get the other repositories: + and then untar it and bring it up-to-date with: $ cd ghc - $ sh darcs-all get + $ ./darcs-all get - This grabs the "core" packages by default. To get the full set of - packages, instead say - $ sh darcs-all --extra get + Alternatively you can use darcs to get the repos, but it will take a + lot longer. First get the GHC darcs repository: + + $ darcs get http://darcs.haskell.org/ghc/ - This also downloads the libraries that are normally bundled in the - "extralibs" package (see above). + Then run the darcs-all script in that repository + to get the other repositories: + + $ cd ghc + $ chmod +x darcs-all + $ ./darcs-all get + + This checks out the "boot" packages. 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 (link -below). +is itself written in Haskell. For instructions on how to port GHC to a +new platform, see the Building Guide. -You also need a few other tools installed: Happy [4], Alex [5], and -Haddock [6] (for building library documentation), and a good DocBook -XML toolchain if you want to build the compiler documentation. +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 and +dblatex. Quick start: the following gives you a default build: - $ sh boot - $ ./configure - $ make - $ make install + $ 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, @@ -89,7 +94,6 @@ 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. -For full information on building GHC, see the GHC Building Guide [3]. References @@ -107,5 +111,5 @@ Contributors ============ Please see - + http://www.haskell.org/ghc/contributors.html