diff --git a/.github/workflows/ghc-lib-da-ghc-8.4.3.yml b/.github/workflows/ghc-lib-da-ghc-8.4.3.yml index eb902dea..634d300a 100644 --- a/.github/workflows/ghc-lib-da-ghc-8.4.3.yml +++ b/.github/workflows/ghc-lib-da-ghc-8.4.3.yml @@ -1,6 +1,7 @@ name: ghc-lib-da-ghc-8.4.3 on: push: + pull_request: jobs: runhaskell: name: ${{ matrix.os }} diff --git a/.github/workflows/ghc-lib-ghc-9.10.1-ghc-9.8.2.yml b/.github/workflows/ghc-lib-ghc-9.10.1-ghc-9.8.2.yml index 028f3929..4a1a49a8 100644 --- a/.github/workflows/ghc-lib-ghc-9.10.1-ghc-9.8.2.yml +++ b/.github/workflows/ghc-lib-ghc-9.10.1-ghc-9.8.2.yml @@ -1,6 +1,7 @@ name: ghc-lib-ghc-9.10.1-ghc-9.8.2 on: push: + pull_request: jobs: runhaskell: name: ${{ matrix.os }} diff --git a/.github/workflows/ghc-lib-ghc-9.8.2-ghc-9.6.5.yml b/.github/workflows/ghc-lib-ghc-9.8.2-ghc-9.6.5.yml index 7c0dbf98..5bf86747 100644 --- a/.github/workflows/ghc-lib-ghc-9.8.2-ghc-9.6.5.yml +++ b/.github/workflows/ghc-lib-ghc-9.8.2-ghc-9.6.5.yml @@ -1,6 +1,7 @@ name: ghc-lib-ghc-9.8.2-ghc-9.6.5 on: push: + pull_request: jobs: runhaskell: name: ${{ matrix.os }} diff --git a/.github/workflows/ghc-lib-ghc-master-ghc-9.10.1.yml b/.github/workflows/ghc-lib-ghc-master-ghc-9.10.1.yml index 9c4baabd..9f9888cd 100644 --- a/.github/workflows/ghc-lib-ghc-master-ghc-9.10.1.yml +++ b/.github/workflows/ghc-lib-ghc-master-ghc-9.10.1.yml @@ -1,6 +1,7 @@ name: ghc-lib-ghc-master-ghc-9.10.1 on: push: + pull_request: jobs: runhaskell: name: ${{ matrix.os }} diff --git a/CI.hs b/CI.hs index 63290ea9..278f48ba 100755 --- a/CI.hs +++ b/CI.hs @@ -76,7 +76,7 @@ data DaFlavor = DaFlavor -- Last tested gitlab.haskell.org/ghc/ghc.git at current :: String -current = "41f1354dafe35aa6023d6c2553793208afa3fc31" -- 2024-07-14 +current = "12d3b66cedd3c80e7c1e030238c92d26631cab8d" -- 2024-07-17 -- Command line argument generators. diff --git a/README.md b/README.md index e1b92c31..fb57116a 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ cabal run exe:ghc-lib-build-tool -- \ --patch=upstream/da-master-8.8.1 \ --patch=upstream/da-unit-ids-8.8.1 \ --gen-flavor=da-ghc-8.8.1 \ - --upstream=https://github.com/digital-asset/ghc.git + --upstream=https://github.com/digital-asset/ghc.git ``` The DAML-specific process only differs from the normal one in that it patches diff --git a/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index 965f1a5b..00000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,197 +0,0 @@ -# Starter pipeline -# Start with a minimal pipeline that you can customize to build and deploy your code. -# Add steps that build, run tests, deploy, and more: -# https://aka.ms/yaml - -trigger: - batch: false - branches: - include: - - master - -# Enable PR triggers that target the master branch -pr: - autoCancel: true # cancel previous builds on push - branches: - include: - - master - -strategy: - # Limit number of executors used so other pipelines can run too - maxParallel: 10 - matrix: - # Notes: - # Tags are encoded in the following way: - # '-' '-' - # Not every combination is tested - # - We do sampling to keep the number of builds reasonable; - # - Minimum GHC needed to bootstrap: - # +--------------+-------------+ - # | GHC flavor | version | - # +==============+=============+ - # | ghc-8.8.* | >= 8.4.4 | - # | ghc-8.10.* | >= 8.6.5 | - # | ghc-9.0.* | >= 8.8.1 | - # | ghc-9.2.* | >= 8.10.1 | - # | ghc-9.4.1 | >= 9.0.1 | - # | ghc-9.6.2 | >= 9.2.2 | (9.2.1 is invalid) - # | > ghc-9.6.2 | >= 9.2.2 | - # +--------------+-------------+ - # (the general rule is only the last two compiler versions are - # supported). - - # +---------+-----------------+------------+ - # | OS | ghc-lib flavor | GHC | - # +=========+=================+============+ - # | linux | ghc-master | ghc-9.10.1 | - # | macOS | ghc-master | ghc-9.10.1 | - # | windows | ghc-master | ghc-9.10.1 | - # +---------+-----------------+------------+ - linux-ghc-master-9.10.1: - image: "ubuntu-22.04" - mode: "--ghc-flavor ghc-master" - cabal-with-ghc: "9.10.1" - cabal-build-constraints: "" - mac-ghc-master-9.10.1: - image: "macOS-latest" - mode: "--ghc-flavor ghc-master" - cabal-with-ghc: "9.10.1" - cabal-build-constraints: "" - windows-ghc-master-9.10.1: - image: "windows-latest" - mode: "--ghc-flavor ghc-master" - cabal-with-ghc: "9.10.1" - cabal-build-constraints: "" - - # +---------+-----------------+------------+ - # | OS | ghc-lib flavor | GHC | - # +=========+=================+============+ - # | linux | ghc-9.10.1 | ghc-9.8.2 | - # | macOS | ghc-9.10.1 | ghc-9.8.2 | - # | windows | ghc-9.10.1 | ghc-9.8.2 | - # +---------+-----------------+------------+ - linux-ghc-9.10.1-9.8.2: - image: "ubuntu-22.04" - mode: "--ghc-flavor ghc-9.10.1" - cabal-with-ghc: "9.8.2" - cabal-build-constraints: "" - mac-ghc-9.10.1-9.8.2: - image: "macOS-latest" - mode: "--ghc-flavor ghc-9.10.1" - cabal-with-ghc: "9.8.2" - cabal-build-constraints: "" - windows-ghc-9.10.1-9.8.2: - image: "windows-latest" - mode: "--ghc-flavor ghc-9.10.1" - cabal-with-ghc: "9.8.2" - cabal-build-constraints: "" - - # +---------+-----------------+------------+ - # | OS | ghc-lib flavor | GHC | - # +=========+=================+============+ - # | linux | ghc-9.8.2 | ghc-9.6.5 | - # | macOS | ghc-9.8.2 | ghc-9.6.5 | - # | windows | ghc-9.8.2 | ghc-9.6.5 | - # +---------+-----------------+------------+ - linux-ghc-9.8.2-9.6.5: - image: "ubuntu-22.04" - mode: "--ghc-flavor ghc-9.8.2" - cabal-with-ghc: "9.6.5" - cabal-build-constraints: "--constraint='ghc-lib-gen +semaphore-compat'" - mac-ghc-9.8.2-9.6.5: - image: "macOS-latest" - mode: "--ghc-flavor ghc-9.8.2" - cabal-with-ghc: "9.6.5" - cabal-build-constraints: "--constraint='ghc-lib-gen +semaphore-compat'" - windows-ghc-9.8.2-9.6.5: - image: "windows-latest" - mode: "--ghc-flavor ghc-9.8.2" - cabal-with-ghc: "9.6.5" - cabal-build-constraints: "--constraint='ghc-lib-gen +semaphore-compat'" - - # +---------+-----------------+------------+ - # | OS | ghc-lib flavor | GHC | - # +=========+=================+============+ - # | linux | da-ghc-8.8.1 | ghc-8.4.3 | - # | windows | da-ghc-8.8.1 | ghc-8.4.3 | - # | macOS | da-ghc-8.8.1 | ghc-8.4.3 | - # +---------+-----------------+------------+ - linux-da-ghc-8.8.1-8.4.3: - image: "ubuntu-22.04" - mode: "--da" - cabal-with-ghc: "8.4.3" - cabal-build-constraints: "" - mac-da-ghc-8.8.1-8.4.3: - image: "macOS-latest" - mode: "--da" - cabal-with-ghc: "8.4.3" - cabal-build-constraints: "" - windows-da-ghc-8.8.1-8.4.3: - image: "windows-latest" - mode: "--da" - cabal-with-ghc: "8.4.3" - cabal-build-constraints: "" - -pool: {vmImage: '$(image)'} - -steps: - - bash: |- - if [ -d patches ]; then - /usr/bin/find patches -name "*.patch" -exec dos2unix {} \; - fi - condition: eq( variables['Agent.OS'], 'Windows_NT' ) - - bash: |- - /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - brew install automake - condition: eq( variables['Agent.OS'], 'Darwin' ) - displayName: install automate (macos) - - bash: |- - curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | BOOTSTRAP_HASKELL_NONINTERACTIVE=1 BOOTSTRAP_HASKELL_GHC_VERSION=$(cabal-with-ghc) BOOTSTRAP_HASKELL_CABAL_VERSION=latest BOOTSTRAP_HASKELL_INSTALL_NO_STACK=1 BOOTSTRAP_HASKELL_INSTALL_NO_STACK_HOOK=1 BOOTSTRAP_HASKELL_ADJUST_BASHRC=N sh - displayName: install ghcup - - bash: |- - PATH=/c/ghcup/ghc/$(cabal-with-ghc)/bin:/c/ghcup/bin:/c/msys64/usr/bin:/c/mingw64/bin:"$PATH"; export PATH - MSYSTEM=CLANG64; export MSYSTEM - GHCUP_MSYS2=/c/msys64; export GHCUP_MSYS2 - /c/msys64/usr/bin/bash --noprofile --norc -e -o pipefail -c \ - "pacman -S autoconf automake-wrapper make patch python tar mintty --noconfirm" - condition: eq( variables['Agent.OS'], 'Windows_NT' ) - displayName: configure msys2 (windows) - - bash: |- - set -euo pipefail - - version=$(curl -Is https://github.com/ndmitchell/hlint/releases/latest | grep location: | sed 's|.*/||' | tr -d '\n\r') - echo "VERSION: $version" - - temp=$(mktemp -d) - curl -sSL https://github.com/ndmitchell/hlint/releases/download/$version/hlint-${version#v}-x86_64-linux.tar.gz > $temp/tarball - - tar -xzf $temp/tarball -C$temp - - hlint() ( - echo - echo DEBUG: hlint "$@" - $temp/hlint-${version#v}/hlint "$@" - ) - hlint CI.hs - hlint ghc-lib-gen - hlint examples/ghc-lib-test-utils/src - series=( GHC_8_8 GHC_8_10 GHC_9_0 GHC_9_2 GHC_9_4 GHC_9_6 GHC_9_8 GHC_9_10 ) - for s in "${series[@]}"; do - hlint examples/ghc-lib-test-mini-hlint/src --cpp-include examples/ghc-lib-test-mini-hlint/extra-source-files --cpp-define "$s" - hlint examples/ghc-lib-test-mini-compile/src --cpp-include examples/ghc-lib-test-mini-compile/extra-source-files --cpp-define "$s" - done - displayName: run hlint - condition: eq( variables['Agent.OS'], 'Linux' ) - - bash: |- - PATH=/c/ghcup/ghc/$(cabal-with-ghc)/bin:/c/ghcup/bin:/c/msys64/usr/bin:/c/mingw64/bin:"$PATH"; export PATH - MSYSTEM=CLANG64; export MSYSTEM - GHCUP_MSYS2=/c/msys64; export GHCUP_MSYS2 - /c/msys64/usr/bin/bash --noprofile --norc -e -o pipefail -c \ - "cabal update && cabal run exe:ghc-lib-build-tool $(cabal-build-constraints) -- $(mode)" - condition: eq( variables['Agent.OS'], 'Windows_NT' ) - displayName: run CI.hs (windows) - - bash: |- - PATH="$HOME/.ghcup/ghc/$(cabal-with-ghc)/bin":"$HOME/.ghcup/bin":"$PATH"; export PATH - cabal update && cabal run exe:ghc-lib-build-tool $(cabal-build-constraints) -- $(mode) - condition: or(eq(variables['Agent.OS'], 'Darwin'), eq(variables['Agent.OS'], 'Linux')) - displayName: run CI.hs (unix) diff --git a/ghc-lib-gen.cabal b/ghc-lib-gen.cabal index 37a3c439..30d7e3f3 100644 --- a/ghc-lib-gen.cabal +++ b/ghc-lib-gen.cabal @@ -1,6 +1,6 @@ cabal-version: 3.4 name: ghc-lib-gen -version: 0.20240715.0 +version: 0.1.0.0 synopsis: Cabal file generator for GHC as a library description: Generate a cabal file for a subset of GHC for use as a library. homepage:https://github.com/digital-asset/ghc-lib