ghcs_nix="https://gitlab.haskell.org/bgamari/ghcs-nix/-/archive/master/ghcs-nix-master.tar.gz"

set -e

nix build -f "$ghcs_nix" ghc-8_10_7 -o boot_ghc

run() {
  local ver="$1"
  local drv="ghc-$ver"
  echo "$ver"
  rm -f result
  nix build -f "$ghcs_nix" $drv
  (cd ../; rm -rf dist-newstyle; cabal build hadrian -w "$PWD/bootstrap/result/bin/ghc")
  cp ../dist-newstyle/cache/plan.json "plan-$ver.json"
  cabal run --with-ghc-pkg $PWD/boot_ghc/bin/ghc-pkg -w $PWD/boot_ghc/bin/ghc -v0 hadrian-bootstrap-gen -- "plan-$ver.json" | tee "plan-bootstrap-$ver.json"
}

run "9_2_2"
run "9_2_3"
run "9_2_4"
run "9_2_5"
run "9_2_6"
run "9_2_8"
run "9_4_1"
run "9_4_2"
run "9_4_3"
run "9_4_4"
run "9_4_5"
run "9_4_7"
run "9_4_8"
run "9_6_2"
run "9_6_3"
run "9_6_4"
run "9_6_5"
run "9_6_6"

