Skip to content

Commit

Permalink
Support GHC-9.6 wrt #979
Browse files Browse the repository at this point in the history
  • Loading branch information
hasufell committed Sep 28, 2024
1 parent 4484b47 commit 826c344
Show file tree
Hide file tree
Showing 46 changed files with 787 additions and 364 deletions.
4 changes: 3 additions & 1 deletion .github/workflows/cabal.project.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,14 @@ jobs:
fail-fast: false
matrix:
os: [macOS-12, windows-latest, ubuntu-latest]
ghc: ["8.10.7", "9.0.2", "9.2.8", "9.4.8"]
ghc: ["8.10.7", "9.0.2", "9.2.8", "9.4.8", "9.6.6"]
include:
- os: macOS-latest
ghc: "9.2.8"
- os: macOS-latest
ghc: "9.4.8"
- os: macOS-latest
ghc: "9.6.6"
steps:
- name: Checkout code
uses: actions/checkout@v4
Expand Down
52 changes: 24 additions & 28 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
name: Build linux binary
runs-on: ${{ matrix.os }}
env:
CABAL_VER: 3.10.2.0
CABAL_VER: 3.10.3.0
JSON_VERSION: "0.0.8"
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
Expand All @@ -36,7 +36,7 @@ jobs:
ARCH: 32
- os: ubuntu-latest
ARTIFACT: "x86_64-linux-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
steps:
- name: Checkout code
Expand Down Expand Up @@ -85,7 +85,7 @@ jobs:
name: Build ARM binary
runs-on: ${{ matrix.os }}
env:
CABAL_VER: 3.6.2.0
CABAL_VER: 3.10.3.0
JSON_VERSION: "0.0.8"
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
Expand All @@ -100,7 +100,7 @@ jobs:
ARCH: ARM
- os: [self-hosted, Linux, ARM64, maerwald]
ARTIFACT: "aarch64-linux-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: ARM64
steps:
- name: git config
Expand Down Expand Up @@ -154,27 +154,28 @@ jobs:
name: Build binary (Mac/Win)
runs-on: ${{ matrix.os }}
env:
CABAL_VER: 3.10.2.0
CABAL_VER: 3.10.3.0
MACOSX_DEPLOYMENT_TARGET: 10.13
JSON_VERSION: "0.0.8"
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
S3_HOST: ${{ secrets.S3_HOST }}
LLVM_VER: 16
strategy:
fail-fast: false
matrix:
include:
- os: [self-hosted, macOS, ARM64]
ARTIFACT: "aarch64-apple-darwin-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: ARM64
- os: macOS-12
ARTIFACT: "x86_64-apple-darwin-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
- os: windows-latest
ARTIFACT: "x86_64-mingw64-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
steps:
- name: Checkout code
Expand All @@ -185,13 +186,8 @@ jobs:
- if: matrix.ARCH == 'ARM64' && runner.os == 'macOS'
name: Run build
run: |
bash .github/scripts/brew.sh git coreutils llvm@13 autoconf automake
export PATH="$HOME/.brew/bin:$HOME/.brew/sbin:$HOME/.brew/opt/llvm@13/bin:$PATH"
export CC="$HOME/.brew/opt/llvm@13/bin/clang"
export CXX="$HOME/.brew/opt/llvm@13/bin/clang++"
export LD=ld
export AR="$HOME/.brew/opt/llvm@13/bin/llvm-ar"
export RANLIB="$HOME/.brew/opt/llvm@13/bin/llvm-ranlib"
bash .github/scripts/brew.sh git coreutils autoconf automake
export PATH="$HOME/.brew/bin:$HOME/.brew/sbin:$PATH"
bash .github/scripts/build.sh
env:
ARTIFACT: ${{ matrix.ARTIFACT }}
Expand Down Expand Up @@ -246,14 +242,14 @@ jobs:
name: Build binary (FreeBSD)
runs-on: [self-hosted, FreeBSD, X64]
env:
CABAL_VER: 3.10.2.0
CABAL_VER: 3.10.3.0
MACOSX_DEPLOYMENT_TARGET: 10.13
JSON_VERSION: "0.0.8"
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
S3_HOST: ${{ secrets.S3_HOST }}
ARTIFACT: "x86_64-portbld-freebsd-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
DISTRO: na
RUNNER_OS: FreeBSD
Expand Down Expand Up @@ -283,7 +279,7 @@ jobs:
needs: "build-linux"
runs-on: ${{ matrix.os }}
env:
CABAL_VER: 3.10.2.0
CABAL_VER: 3.10.3.0
JSON_VERSION: "0.0.8"
strategy:
matrix:
Expand All @@ -295,12 +291,12 @@ jobs:
DISTRO: Alpine
- os: ubuntu-latest
ARTIFACT: "x86_64-linux-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
DISTRO: Alpine
- os: ubuntu-latest
ARTIFACT: "x86_64-linux-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
DISTRO: Ubuntu

Expand Down Expand Up @@ -361,7 +357,7 @@ jobs:
needs: "build-arm"
runs-on: ${{ matrix.os }}
env:
CABAL_VER: 3.6.2.0
CABAL_VER: 3.10.3.0
JSON_VERSION: "0.0.8"
strategy:
matrix:
Expand All @@ -373,7 +369,7 @@ jobs:
DISTRO: Ubuntu
- os: [self-hosted, Linux, ARM64, maerwald]
ARTIFACT: "aarch64-linux-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: ARM64
DISTRO: Ubuntu

Expand Down Expand Up @@ -424,25 +420,25 @@ jobs:
needs: "build-macwin"
runs-on: ${{ matrix.os }}
env:
CABAL_VER: 3.10.2.0
CABAL_VER: 3.10.3.0
MACOSX_DEPLOYMENT_TARGET: 10.13
JSON_VERSION: "0.0.8"
strategy:
matrix:
include:
- os: [self-hosted, macOS, ARM64]
ARTIFACT: "aarch64-apple-darwin-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: ARM64
DISTRO: na
- os: macOS-12
ARTIFACT: "x86_64-apple-darwin-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
DISTRO: na
- os: windows-latest
ARTIFACT: "x86_64-mingw64-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
DISTRO: na

Expand Down Expand Up @@ -500,11 +496,11 @@ jobs:
needs: "build-freebsd"
runs-on: [self-hosted, FreeBSD, X64]
env:
CABAL_VER: 3.10.2.0
CABAL_VER: 3.10.3.0
MACOSX_DEPLOYMENT_TARGET: 10.13
JSON_VERSION: "0.0.8"
ARTIFACT: "x86_64-portbld-freebsd-ghcup"
GHC_VER: 9.4.8
GHC_VER: 9.6.6
ARCH: 64
DISTRO: na
RUNNER_OS: FreeBSD
Expand Down
1 change: 1 addition & 0 deletions app/ghcup/Main.hs
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ import GHCup.Prelude.Logger
import GHCup.Prelude.String.QQ
import GHCup.Version

import Control.Monad (when, forM_, unless)
import Control.Concurrent
import Control.Concurrent.Async
import Control.Exception.Safe
Expand Down
17 changes: 4 additions & 13 deletions cabal.ghc8107.Unix.project
Original file line number Diff line number Diff line change
Expand Up @@ -11,29 +11,26 @@ else

constraints: http-io-streams -brotli,
any.aeson >= 2.0.1.0,
any.hsc2hs ==0.68.8,
any.hsc2hs >=0.68.10,
bzlib-conduit >= 0.3.0.3,
bz2 >= 1.0.1.1,
bzlib >= 0.5.2.0,
directory >= 1.3.8.3,
filepath == 1.4.101.0 || == 1.4.300.1 || >= 1.5.2.0
filepath == 1.4.101.0 || == 1.4.300.1 || >= 1.5.2.0,
tar >= 0.6.2.0

constraints: text -simdutf

if os(mingw32)
constraints: zlib +bundled-c-zlib,
lzma +static,
text -simdutf,
vty-windows >=0.2.0.2

if impl(ghc >= 9.4)
constraints: language-c >= 0.9.3


source-repository-package
type: git
location: https://github.com/haskell/tar.git
tag: d94a988be4311b830149a9f8fc16739927e5fc1c

source-repository-package
type: git
location: https://github.com/hasufell/uri-bytestring.git
Expand All @@ -45,9 +42,6 @@ package libarchive
package aeson-pretty
flags: +lib-only

package cabal-plan
flags: -exe

package aeson
flags: +ordered-keymap

Expand All @@ -56,6 +50,3 @@ package hashable

package *
test-show-details: direct

allow-newer: cabal-install-parsers:tar

Loading

0 comments on commit 826c344

Please sign in to comment.