Skip to content
Snippets Groups Projects
  1. Jul 13, 2022
  2. Jul 06, 2022
  3. Jan 12, 2022
    • Zubin's avatar
      hadrian: allow offline bootstrapping · a8fb4251
      Zubin authored and Marge Bot's avatar Marge Bot committed
      This patch adds the ability to fetch and store dependencies needed for
      boostrapping hadrian. By default the script will download the
      dependencies from the network but some package managers disallow network
      access so there are also options to build given a supplied tarball.
      
      The -s option allos you to provide the tarball
      
          bootstrap.py -d plan-bootstrap-8.10.5.json -w /path/to-ghc -s sources-tarball.tar.gz
      
      Which dependencies you need can be queried using the `list-sources` option.
      
          bootstrap.py list-sources -d plan-bootstrap-8.10.5.json
      
      This produces `fetch_plan.json` which tells you where to get each source from.
      
      You can instruct the script to create the tarball using the `fetch` option.
      
          bootstrap.py fetch -d plan-bootstrap-8.10.5.json -o sources-tarball.tar.gz
      
      Together these commands mean you can build GHC without needing
      cabal-install.
      
      Fixes #17103
      a8fb4251
    • Matthew Pickering's avatar
      hadrian: Add bootstrap scripts for building without cabal-install · 2b6c2179
      Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
      These scripts are originally from the cabal-install repo with a few
      small tweaks.
      
      This utility allows you to build hadrian without cabal-install, which can be useful
      for packagers. If you are a developer then build hadrian using cabal-install.
      
      If you want to bootstrap with ghc-8.10.5 then run the ./bootstrap script with the
      `plan-bootstrap-8.10.5.json` file.
      
          bootstrap.py -d plan-bootstrap-8.10.5.json -w /path/to-ghc
      
      The result of the bootstrap script will be a hadrian binary in
      `_build/bin/hadrian`.
      
      There is a script (using nix) which can be used to generate the bootstrap plans for the range
      of supported GHC versions using nix.
      
          generate_bootstrap_plans
      
      Otherwise you can run the commands in ./generate_bootstrap_plans directly.
      
      Fixes #17103
      2b6c2179
Loading