Changes between Version 41 and Version 42 of Building/GettingTheSources


Ignore:
Timestamp:
Jun 12, 2009 8:28:01 AM (5 years ago)
Author:
simonmar
Comment:

Remove mentions of darcs-all --extra, which now doesn't exist

Legend:

Unmodified
Added
Removed
Modified
  • Building/GettingTheSources

    v41 v42  
    3636  $ cd ghc 
    3737  $ chmod +x darcs-all 
    38   $ ./darcs-all get 
     38  $ ./darcs-all --testsuite get 
    3939}}} 
    4040The command `darcs-all` adds the `--partial` flag by default. 
     41 
     42The full list of darcs repositories relating to GHC is at DarcsRepositories. 
    4143 
    4244If you plan to modify GHC, then you '''must''' get repositories with full history rather than just partial repositories.  (Why?  Because darcs has some bugs that sometimes cause problems when using partial repositories for anything more than just pulling the latest patches.) 
     
    7476 
    7577If you omit step (3), then `darcs-all` will pull patches into the GHC repository too. If one of those patches modifies the `darcs-all` script itself, then bizarre things can happen (or at least: in the past, they could happen.) The safe thing to do is to get your main `ghc` repo up to date (step 3) and then run the script. 
    76  
    77 == Getting more packages == 
    78  
    79 The above will grab the "core" set of packages and the testsuite.  This is the minimal set of packages required to bootstrap GHC.  If you want to get a more comprehensive set of packages and include them in your GHC build, then you can say: 
    80  
    81 {{{ 
    82   $ ./darcs-all --extra get 
    83 }}} 
    84  
    85 This isn't usually necessary: extra packages can be compiled and installed separately using Cabal, after you have built and installed GHC itself with its core packages.  The "core" and "extra" packages are listed in DarcsRepositories. 
    86  
    87 If you want only one of the extra libraries, you can also use darcs to manually add it to the tree.  
    88 Suppose you have downloaded a GHC source tree as advised above. 
    89 Look up the directory name (i.e. the package name) of the library which you want to add. 
    90 Descend into {{{libraries}}} and issue a {{{darcs get <repo>}}} (where {{{<repo>}}} is the repository of the package you want to get, ending in the package {{{<name>}}}). 
    91 A later {{{./darcs-all pull }}} now pulls updates not only for ghc and the core libraries, but also for any library you have added in this way. 
    92 {{{ 
    93   $ cd libraries 
    94   $ darcs get http://darcs.haskell.org/packages/<name> 
    95   $ cd .. 
    96 }}} 
    97  
    98 Optionally, you might want to grab the testsuite (if you have not already got it) and `nofib` benchmark suite too, which also become sub-directories of ghc: 
    99  
    100 {{{ 
    101   $ ./darcs-all --testsuite get 
    102   $ ./darcs-all --nofib get 
    103 }}} 
    104  
    105 The full list of darcs repositories relating to GHC is at DarcsRepositories. 
    10678 
    10779== Getting a GHC source tree using git ==