X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=HACKING;h=c7e6895b03c7477dbe75b9f5ffabd3ff3520802a;hp=cbff47d6db1b9dff3833f881a91c7487f10cb3f3;hb=a0be7e7ccd602efd9b7d35b3e0747a2c4f155ce9;hpb=0065d5ab628975892cea1ec7303f968c3338cbe1 diff --git a/HACKING b/HACKING index cbff47d..c7e6895 100644 --- a/HACKING +++ b/HACKING @@ -7,6 +7,20 @@ that will help get you started right away, and point you in the direction of more comprehensive documentation for later. +Getting the sources +------------------- + +First get the GHC darcs repository: + + $ darcs get http://darcs.haskell.org/ghc/ + +Then run the darcs-all shell script in that repository +to get the other repositories: + + $ cd ghc + $ sh darcs-all + + Setting up your build --------------------- @@ -98,8 +112,8 @@ Building individual parts of the tree The first thing to understand is that the source tree is built in two passes. First 'make boot' builds dependencies and any other tools required as part of the build itself. For example, -ghc/utils/genprimopcode is built as part of 'make boot', because it is -required to preprocess ghc/compiler/prelude/primops.txt.pp. +utils/genprimopcode is built as part of 'make boot', because it is +required to preprocess compiler/prelude/primops.txt.pp. After 'make boot', 'make' will build everything. @@ -135,7 +149,7 @@ Full optimisation ----------------- To turn up everything to the max, for running performance tests for -example, try theses: +example, try these: SRC_HC_OPTS = -H64m -O2 GhcLibHcOpts = -O2 @@ -150,27 +164,17 @@ Roadmap A rough roadmap to the source tree: + compat compatibility library used by GHC and utils + compiler the compiler itself distrib materials for building distributions - - docs build system documentation - - ghc The GHC Compiler - rts the runtime system and storage manager - lib libraries used in GHC and its tools - utils tools that come with GHC, and tools used in the build - compiler the compiler itself - driver various scripts, and package databases - docs compiler documentation - includes header files shipped with GHC - - glafp-utils tools for the build system - + driver various scripts, and package databases + docs all documentation + includes header files shipped with GHC libraries The hierarchical libraries - - nofib A benchmark suite - - testsuite The regression test suite - + nofib A benchmark suite (optional) + rts the runtime system and storage manager + testsuite The regression test suite (optional) + utils tools that come with GHC, and tools used in the build Resources ---------