5 # Commit of ghc/ci-images repository from which to pull Docker images
6 DOCKER_REV: "572353e0644044fe3a5465bba4342a9a0b0eb60e"
9 CABAL_INSTALL_VERSION: 3.6.2.0
15 # Triggered if you start it from the gitlab web ui
16 - if: '$CI_PIPELINE_SOURCE == "web"'
35 - x86_64-linux-centos7
37 - x86_64-linux-fedora33
39 - x86_64-linux-ubuntu18_04
40 - x86_64-linux-ubuntu20_04
45 image: "registry.gitlab.haskell.org/ghc/ci-images/$PLATFORM:$DOCKER_REV"
47 TARBALL_ARCHIVE_SUFFIX: $PLATFORM
49 ADD_CABAL_ARGS: "--enable-split-sections"
51 build-x86_64-linux-alpine:
57 - sudo apk add --no-cache zlib zlib-dev zlib-static
58 image: "registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-alpine3_12:$DOCKER_REV"
60 TARBALL_ARCHIVE_SUFFIX: x86_64-linux-alpine
62 ADD_CABAL_ARGS: "--enable-split-sections --enable-executable-static"
69 TARBALL_ARCHIVE_SUFFIX: x86_64-darwin
78 - export HOMEBREW_CHANGE_ARCH_TO_ARM=1
79 - arch -arm64 /bin/bash ./.gitlab/brew.sh llvm autoconf automake coreutils make tree
80 # C_INCLUDE_PATH: https://gitlab.haskell.org/ghc/ghc/-/issues/20592
82 export PATH="$CI_PROJECT_DIR/.brew/opt/llvm/bin:$CI_PROJECT_DIR/.brew/bin:$CI_PROJECT_DIR/.brew/sbin:$PATH"
83 export CC=$CI_PROJECT_DIR/.brew/opt/llvm/bin/clang
84 export CXX=$CI_PROJECT_DIR/.brew/opt/llvm/bin/clang++
86 export AR=$CI_PROJECT_DIR/.brew/opt/llvm/bin/llvm-ar
87 export RANLIB=$CI_PROJECT_DIR/.brew/opt/llvm/bin/llvm-ranlib
88 export C_INCLUDE_PATH="`xcrun --show-sdk-path`/usr/include/ffi"
89 arch -arm64 /bin/bash ./.gitlab/ci.sh
91 - rm -Rf /private/tmp/.brew_tmp
93 MACOSX_DEPLOYMENT_TARGET: "10.7"
94 TARBALL_ARCHIVE_SUFFIX: aarch64-darwin
97 # Update periodically.
107 build-x86_64-windows:
110 - $env:CHERE_INVOKING = "yes"
111 - bash '-lc' "ADD_CABAL_ARGS=$env:ADD_CABAL_ARGS GHC_VERSION=$env:GHC_VERSION CABAL_INSTALL_VERSION=$CABAL_INSTALL_VERSION .gitlab/ci.sh"
115 TARBALL_ARCHIVE_SUFFIX: x86_64-windows