Skip to content

less stack more cabal (#540) #1

less stack more cabal (#540)

less stack more cabal (#540) #1

name: ghc-lib-da-ghc-8.4.3
on:
push:
jobs:
runhaskell:
name: ${{ matrix.os }}
runs-on: ${{ matrix.os }}-latest
strategy:
fail-fast: false
matrix:
os: [ubuntu, windows]
steps:
- uses: actions/checkout@v4
- name: Install msys2 (windows)
shell: bash
run: |-
cd /c
curl -L https://github.com/commercialhaskell/stackage-content/releases/download/msys2-20230526/msys2-20230526-x86_64.tar.xz -o msys2-20230526-x86_64.tar.xz
tar xvf ./msys2-20230526-x86_64.tar.xz > /dev/null
if: matrix.os == 'windows'
- name: Install ghcup
shell: bash
run: |-
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | \
BOOTSTRAP_HASKELL_NONINTERACTIVE=1 \
BOOTSTRAP_HASKELL_GHC_VERSION=8.4.3 \
BOOTSTRAP_HASKELL_CABAL_VERSION=latest \
BOOTSTRAP_HASKELL_INSTALL_NO_STACK=1 \
BOOTSTRAP_HASKELL_INSTALL_NO_STACK_HOOK=1 \
BOOTSTRAP_HASKELL_ADJUST_BASHRC=N sh
- name: Setup cabal (windows)
shell: C:\msys64\usr\bin\bash.exe --noprofile --norc -e -o pipefail '{0}'
run: |-
PATH=/c/cabal/bin:/c/.ghcup/ghc-8.4.3/bin:/c/.ghcup/bin:$PATH
export PATH
cabal update
cabal install alex happy
cabal --store-dir="c:\\cabal\\store" --lib --force-reinstalls --package-env=- install extra-1.6.13 optparse-applicative-0.14.3.0
if: matrix.os == 'windows'
- name: Setup cabal(unix)
shell: bash
run: |-
PATH="$HOME/.cabal/bin":"$HOME/.ghcup/ghc/8.4.3/bin":"$HOME/.ghcup/bin":"$PATH"
export PATH
cabal install alex happy
cabal --store-dir=$HOME/.cabal/store --lib --force-reinstalls --package-env=- install extra-1.6.13 optparse-applicative-0.14.3.0
if: matrix.os == 'ubuntu' || matrix.os == 'macos'
- name: Run CI.hs (windows)
shell: C:\msys64\usr\bin\bash.exe --noprofile --norc -e -o pipefail '{0}'
run: |-
PATH=/c/cabal/bin:/c/ghcup/ghc/8.4.3/bin:/c/ghcup/bin:/c/msys64/usr/bin:/c/mingw64/bin:"/c/program files/git/bin":"$PATH"
export PATH
MSYSTEM=CLANG64; export MSYSTEM
pacman -S autoconf automake-wrapper make patch python tar mintty --noconfirm
runghc --ghc-arg=-clear-package-db --ghc-arg=-global-package-db --ghc-arg=-user-package-db --ghc-arg=-package-db --ghc-arg=/c/cabal/store/$(ls /c/cabal/store)/package.db CI.hs --da
if: matrix.os == 'windows'
- name: Run CI.hs (unix)
shell: bash
run: |-
PATH="$HOME/.cabal/bin":"$HOME/.ghcup/ghc/8.4.3/bin":"$HOME/.ghcup/bin":"$PATH"
export PATH
runghc --ghc-arg=-clear-package-db --ghc-arg=-global-package-db --ghc-arg=-user-package-db --ghc-arg=-package-db --ghc-arg=$HOME/.cabal/store/$(ls $HOME/.cabal/store)/package.db CI.hs --da
if: matrix.os == 'ubuntu' || matrix.os == 'macos'