hadrian: allow offline bootstrapping
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
Showing
- hadrian/Setup.hs 3 additions, 0 deletionshadrian/Setup.hs
- hadrian/bootstrap/README.md 17 additions, 0 deletionshadrian/bootstrap/README.md
- hadrian/bootstrap/bootstrap.py 170 additions, 64 deletionshadrian/bootstrap/bootstrap.py
- hadrian/bootstrap/plan-8_10_7.json 1 addition, 0 deletionshadrian/bootstrap/plan-8_10_7.json
- hadrian/bootstrap/plan-bootstrap-8_10_7.json 1 addition, 0 deletionshadrian/bootstrap/plan-bootstrap-8_10_7.json
Loading
Please register or sign in to comment