|
16 | 16 | default: "install_bin install_lib update_package_db" |
17 | 17 | cabal: |
18 | 18 | type: string |
19 | | - default: 3.14.2.0 |
| 19 | + default: 3.17.0.0 |
20 | 20 | test: |
21 | 21 | type: boolean |
22 | 22 | default: true |
|
26 | 26 | GHC_VERSION: ${{ inputs.ghc }} |
27 | 27 | GHC_TARGETS: ${{ inputs.ghc_targets }} |
28 | 28 | CABAL_VERSION: ${{ inputs.cabal }} |
| 29 | + # this makes the Makefile pick system cabal instead of building it from source |
| 30 | + CABAL: cabal |
29 | 31 | # ghcup |
30 | 32 | BOOTSTRAP_HASKELL_NONINTERACTIVE: 1 |
31 | 33 | BOOTSTRAP_HASKELL_GHC_VERSION: ${{ inputs.ghc }} |
@@ -105,6 +107,11 @@ jobs: |
105 | 107 | with: |
106 | 108 | cabal: ${{ env.CABAL_VERSION }} |
107 | 109 | ghc: ${{ env.GHC_VERSION }} |
| 110 | + config: &ghcup-config | |
| 111 | + meta-cache: 0 |
| 112 | + url-source: |
| 113 | + - GHCupURL |
| 114 | + - https://raw.githubusercontent.com/haskell/ghcup-metadata/refs/heads/stable-haskell-0.0.1/stable-haskell-0.0.9.yaml |
108 | 115 |
|
109 | 116 | - uses: actions/checkout@v4 |
110 | 117 | with: |
@@ -215,13 +222,13 @@ jobs: |
215 | 222 | uses: docker://arm64v8/debian:11 |
216 | 223 | name: Run build (aarch64 linux) |
217 | 224 | with: |
218 | | - args: sh -c "apt-get update && apt-get install -y curl bash git ${{ needs.tool-output.outputs.apt_tools_build }} && export PATH=$HOME/.ghcup/bin:$PATH && curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh && make CABAL=$PWD/_build/stage0/bin/cabal _build/bindist/ghc.tar.gz _build/bindist/cabal.tar.gz _build/bindist/tests.tar.gz && cd _build/bindist && mv ghc.tar.gz ghc-$(bin/ghc --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv cabal.tar.gz cabal-$(bin/cabal --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv tests.tar.gz tests-${{ matrix.platform.ARTIFACT }}.tar.gz" |
| 225 | + args: sh -c "apt-get update && apt-get install -y curl bash git ${{ needs.tool-output.outputs.apt_tools_build }} && export PATH=$HOME/.ghcup/bin:$PATH && curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh && ghcup config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/refs/heads/stable-haskell-0.0.1/stable-haskell-0.0.9.yaml && make _build/bindist/ghc.tar.gz _build/bindist/cabal.tar.gz _build/bindist/tests.tar.gz && cd _build/bindist && mv ghc.tar.gz ghc-$(bin/ghc --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv cabal.tar.gz cabal-$(bin/cabal --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv tests.tar.gz tests-${{ matrix.platform.ARTIFACT }}.tar.gz" |
219 | 226 |
|
220 | 227 | - if: matrix.platform.ARTIFACT == 'aarch64-linux-unknown' |
221 | 228 | uses: docker://arm64v8/alpine:3.20 |
222 | 229 | name: Run build (aarch64 linux alpine) |
223 | 230 | with: |
224 | | - args: sh -c "apk update && apk add curl bash git ${{ needs.tool-output.outputs.apk_tools_build }} && export PATH=$HOME/.ghcup/bin:$PATH && curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh && make CABAL=$PWD/_build/stage0/bin/cabal _build/bindist/ghc.tar.gz _build/bindist/cabal.tar.gz _build/bindist/tests.tar.gz && cd _build/bindist && mv ghc.tar.gz ghc-$(bin/ghc --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv cabal.tar.gz cabal-$(bin/cabal --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv tests.tar.gz tests-${{ matrix.platform.ARTIFACT }}.tar.gz" |
| 231 | + args: sh -c "apk update && apk add curl bash git ${{ needs.tool-output.outputs.apk_tools_build }} && export PATH=$HOME/.ghcup/bin:$PATH && curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh && ghcup config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/refs/heads/stable-haskell-0.0.1/stable-haskell-0.0.9.yaml && make _build/bindist/ghc.tar.gz _build/bindist/cabal.tar.gz _build/bindist/tests.tar.gz && cd _build/bindist && mv ghc.tar.gz ghc-$(bin/ghc --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv cabal.tar.gz cabal-$(bin/cabal --numeric-version)-${{ matrix.platform.ARTIFACT }}.tar.gz && mv tests.tar.gz tests-${{ matrix.platform.ARTIFACT }}.tar.gz" |
225 | 232 |
|
226 | 233 | - if: always() |
227 | 234 | name: Upload artifact |
@@ -255,6 +262,7 @@ jobs: |
255 | 262 | with: |
256 | 263 | cabal: ${{ env.CABAL_VERSION }} |
257 | 264 | ghc: ${{ env.GHC_VERSION }} |
| 265 | + config: *ghcup-config |
258 | 266 |
|
259 | 267 | - name: Install dependencies |
260 | 268 | run : | |
@@ -305,6 +313,7 @@ jobs: |
305 | 313 | with: |
306 | 314 | cabal: ${{ env.CABAL_VERSION }} |
307 | 315 | ghc: ${{ env.GHC_VERSION }} |
| 316 | + config: *ghcup-config |
308 | 317 |
|
309 | 318 | - name: Install dependencies |
310 | 319 | run : | |
@@ -359,6 +368,7 @@ jobs: |
359 | 368 | with: |
360 | 369 | cabal: ${{ env.CABAL_VERSION }} |
361 | 370 | ghc: ${{ env.GHC_VERSION }} |
| 371 | + config: *ghcup-config |
362 | 372 | env: |
363 | 373 | GHCUP_MSYS2: 'C:/msys64' |
364 | 374 |
|
@@ -401,6 +411,7 @@ jobs: |
401 | 411 | with: |
402 | 412 | cabal: ${{ env.CABAL_VERSION }} |
403 | 413 | ghc: ${{ env.GHC_VERSION }} |
| 414 | + config: *ghcup-config |
404 | 415 | env: |
405 | 416 | LD: ld |
406 | 417 | CC: cc |
@@ -439,7 +450,7 @@ jobs: |
439 | 450 | which ghc |
440 | 451 | ghc --info |
441 | 452 | cabal update |
442 | | - gmake CABAL=$PWD/_build/stage0/bin/cabal _build/bindist/haskell-toolchain.tar.gz _build/bindist/tests.tar.gz |
| 453 | + gmake _build/bindist/haskell-toolchain.tar.gz _build/bindist/tests.tar.gz |
443 | 454 | cd _build/bindist |
444 | 455 | mv ghc.tar.gz ghc-$(bin/ghc --numeric-version)-${{ env.ARTIFACT }}.tar.gz |
445 | 456 | mv cabal.tar.gz cabal-$(bin/cabal --numeric-version)-${{ env.ARTIFACT }}.tar.gz |
|
0 commit comments