name: Test mingw-w64
on:
  push:

jobs:
  llvm-mingw:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        crt:
          - ucrt
          - ucrtbase
          - msvcrt
    steps:
      - name: Check out llvm-mingw build scripts
        uses: actions/checkout@v4
        with:
          repository: mstorsjo/llvm-mingw
          ref: 20260224
      - name: Check out the mingw-w64 version to be tested
        uses: actions/checkout@v4
        with:
          path: mingw-w64
      - name: Regenerate mingw-w64 files
        run: |
          sudo apt-get update && sudo apt-get install autoconf automake
          cd mingw-w64/mingw-w64-headers
          autoreconf
          cd ../mingw-w64-crt
          autoreconf
          cd ../mingw-w64-libraries/winpthreads
          autoreconf
          cd ../winstorecompat
          autoreconf
      - name: Rebuild the runtimes
        run: |
          sudo apt-get update && sudo apt-get install ninja-build
          DISTRO=ubuntu-22.04-x86_64
          src_crt=${{matrix.crt}}
          if [ "$src_crt" = "ucrtbase" ]; then
              src_crt=ucrt
          fi
          curl -LO https://github.com/mstorsjo/llvm-mingw/releases/download/20260224/llvm-mingw-20260224-$src_crt-$DISTRO.tar.xz
          tar -Jxf llvm-mingw-*.tar.xz
          rm llvm-mingw-*.tar.xz
          mkdir install
          mv llvm-mingw-*-ubuntu-* install/llvm-mingw
          ./build-all.sh $(pwd)/install/llvm-mingw --no-tools --wipe-runtimes --with-default-msvcrt=${{matrix.crt}}
          ./test-libcxx-module.sh $(pwd)/install/llvm-mingw
          # Run basic smoke tests on the reassembled toolchain
          ./run-tests.sh $(pwd)/install/llvm-mingw
          cd install
          TAG=testing
          NAME=llvm-mingw-$TAG-${{matrix.crt}}-$DISTRO
          mv llvm-mingw $NAME
          tar -Jcf ../$NAME.tar.xz --format=ustar --numeric-owner --owner=0 --group=0 --sort=name $NAME
          mv $NAME llvm-mingw
      - uses: actions/upload-artifact@v4
        with:
          name: linux-${{matrix.crt}}-x86_64-toolchain
          path: |
            llvm-mingw-*.tar.xz
          retention-days: 7
      - name: Update runtimes in Windows toolchains
        run: |
          rm llvm-mingw-*.tar.xz
          mkdir cross
          cd cross

          for arch in i686 x86_64 aarch64; do
            src_crt=${{matrix.crt}}
            if [[ "$arch" = a* && "$src_crt" == "msvcrt" ]]; then
                src_crt=ucrt
            fi
            if [ "$src_crt" = "ucrtbase" ]; then
                src_crt=ucrt
            fi
            curl -LO https://github.com/mstorsjo/llvm-mingw/releases/download/20260224/llvm-mingw-20260224-$src_crt-$arch.zip
            unzip -q llvm-mingw-*.zip
            rm llvm-mingw-*.zip
            mv llvm-mingw-* llvm-mingw
            rm -rf llvm-mingw/*-w64-mingw32 llvm-mingw/include
            mkdir orig-dlls
            mv llvm-mingw/bin/*.dll orig-dlls
            ../prepare-cross-toolchain.sh ../install/llvm-mingw llvm-mingw $arch
            mv orig-dlls/*.dll llvm-mingw/bin
            rmdir orig-dlls
            TAG=testing
            NAME=llvm-mingw-$TAG-${{matrix.crt}}-$arch
            mv llvm-mingw $NAME
            zip -9rq ../$NAME.zip $NAME
            rm -rf $NAME
          done
      - uses: actions/upload-artifact@v4
        with:
          name: windows-${{matrix.crt}}-i686-toolchain
          path: |
            llvm-mingw-*-i686.zip
          retention-days: 7
      - uses: actions/upload-artifact@v4
        with:
          name: windows-${{matrix.crt}}-x86_64-toolchain
          path: |
            llvm-mingw-*-x86_64.zip
          retention-days: 7
      - uses: actions/upload-artifact@v4
        with:
          name: windows-${{matrix.crt}}-aarch64-toolchain
          path: |
            llvm-mingw-*-aarch64.zip
          retention-days: 7

  test-llvm-mingw:
    needs: [llvm-mingw]
    defaults:
      run:
        shell: msys2 {0}
    strategy:
      fail-fast: false
      matrix:
        arch:
          - x86_64
          - i686
          - aarch64
        crt:
          - ucrt
          - ucrtbase
          - msvcrt
    runs-on: ${{startsWith(matrix.arch, 'a') && 'windows-11-arm' || 'windows-latest'}}
    steps:
      - uses: msys2/setup-msys2@v2
        with:
          msystem: mingw64
          install: >-
            unzip
            make
      - uses: actions/download-artifact@v4
        with:
          name: windows-${{matrix.crt}}-${{matrix.arch}}-toolchain
      - name: Unpack toolchain
        run: |
          unzip -q llvm-mingw-*.zip
          rm llvm-mingw-*.zip
          mv llvm-mingw-* /llvm-mingw
          echo /llvm-mingw/bin >> $GITHUB_PATH
      - name: Check out llvm-mingw tests
        uses: actions/checkout@v4
        with:
          repository: mstorsjo/llvm-mingw
          ref: 20260224
      - name: Run tests
        run: |
          ./run-tests.sh /llvm-mingw
      - name: Run extra tests with crt-test
        run: |
          export PATH=/llvm-mingw/bin:$PATH
          for arch in i686 x86_64 armv7 aarch64 arm64ec; do
            for crt in msvcrt-ansi msvcrt-noansi ucrt ucrtbase; do
              case $crt in
              msvcrt*) defs="-D__MSVCRT_VERSION__=0x700"; lib=msvcrt-os ;;
              ucrt*) defs="-D_UCRT"; lib=$crt ;;
              esac
              case $crt in
              *-noansi) defs="$defs -D__USE_MINGW_ANSI_STDIO=0" ;;
              *-ansi) defs="$defs -D__USE_MINGW_ANSI_STDIO=1" ;;
              esac
              name=crt-test-$arch-$crt
              $arch-w64-mingw32-clang $defs -fno-builtin test/crt-test.c -o $name-regular.exe -lmingwex -l$lib -O2
              $arch-w64-mingw32-clang $defs -fno-builtin test/crt-test.c -o $name-crt-first.exe -l$lib -O2
              echo $name
              case $arch in
              ${{ runner.arch == 'ARM64' && 'aarch64|arm64ec' || '*86*' }}) ./$name-regular.exe ; ./$name-crt-first.exe ;;
              esac
            done
          done

  test-libcxx:
    needs: [llvm-mingw]
    strategy:
      fail-fast: false
      matrix:
        include:
          - { arch: x86_64,  target_arch: i686    }
          - { arch: x86_64,  target_arch: x86_64  }
          - { arch: aarch64, target_arch: aarch64 }
    runs-on: ${{startsWith(matrix.arch, 'a') && 'windows-11-arm' || 'windows-latest'}}
    steps:
      - uses: actions/download-artifact@v4
        with:
          name: windows-ucrt-${{matrix.arch}}-toolchain
      - name: Unpack toolchain
        run: |
          Expand-Archive llvm-mingw-*.zip -DestinationPath .
          del llvm-mingw-*.zip
          mv llvm-mingw-* c:\llvm-mingw
          echo "c:\llvm-mingw\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
          echo "c:\llvm-mingw\python\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
          echo "PYTHON_EXE=c:/llvm-mingw/python/bin/python3.exe" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
      - name: Check out llvm-mingw scripts
        uses: actions/checkout@v4
        with:
          repository: mstorsjo/llvm-mingw
          ref: 20260224
      - name: Checkout llvm-project
        run: |
          bash -c "CHECKOUT_ONLY=1 ./build-llvm.sh"
      - name: Build and test libcxx
        run: |
          cd llvm-project
          mkdir build
          cd build
          cmake ../runtimes `
            -G Ninja `
            -DCMAKE_BUILD_TYPE=Release `
            -DPython3_EXECUTABLE="$Env:PYTHON_EXE" `
            -DLIBCXX_ENABLE_WERROR=YES `
            -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;libunwind" `
            -DLIBCXX_CXX_ABI=libcxxabi `
            -DCMAKE_C_COMPILER=${{matrix.target_arch}}-w64-mingw32-clang `
            -DCMAKE_CXX_COMPILER=${{matrix.target_arch}}-w64-mingw32-clang++ `
            -DCMAKE_CXX_COMPILER_TARGET=${{matrix.target_arch}}-w64-windows-gnu `
            -DLIBCXXABI_ENABLE_SHARED=NO `
            -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=YES `
            -DLIBCXX_USE_COMPILER_RT=YES `
            -DLIBCXXABI_USE_COMPILER_RT=YES `
            -DLIBUNWIND_USE_COMPILER_RT=YES `
            -DLIBCXXABI_USE_LLVM_UNWINDER=YES `
            -DLIBCXX_EXTRA_SITE_DEFINES="__USE_MINGW_ANSI_STDIO=${{startsWith(matrix.arch, 'a') && '0' || '1'}}" `
            -DCMAKE_INSTALL_MESSAGE=NEVER `
            -DLLVM_LIT_ARGS="-v --time-tests"
          ninja
          ninja check-runtimes

  test-cross-build-ffmpeg:
    needs: [llvm-mingw]
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        arch:
          - i686
          - x86_64
          - armv7
          - aarch64
    steps:
      - uses: actions/download-artifact@v4
        with:
          name: linux-ucrt-x86_64-toolchain
      - name: Unpack cross toolchain
        run: |
          tar -Jxf llvm-mingw-*.tar.xz
          rm llvm-mingw-*.tar.xz
          sudo mv llvm-mingw* /opt/llvm-mingw
          echo /opt/llvm-mingw/bin >> $GITHUB_PATH
      - name: Checkout ffmpeg
        uses: actions/checkout@v4
        with:
          repository: ffmpeg/ffmpeg
          ref: n6.1.2
          path: ffmpeg
      - name: Build ffmpeg
        run: |
          sudo apt-get update && sudo apt-get install nasm
          mkdir ffmpeg-build
          cd ffmpeg-build
          ../ffmpeg/configure --arch=${{matrix.arch}} --target-os=mingw32 --cross-prefix=${{matrix.arch}}-w64-mingw32- --enable-gpl
          make -j$(nproc)

  test-ffmpeg:
    needs: [llvm-mingw]
    runs-on: windows-latest
    strategy:
      fail-fast: false
      matrix:
        arch:
          - i686
          - x86_64
    defaults:
      run:
        shell: msys2 {0}
    steps:
      - name: Avoid git checking out files with CRLF
        shell: cmd
        run: |
          git config --global core.autocrlf false
      - uses: msys2/setup-msys2@v2
        with:
          msystem: mingw64
          install: >-
            unzip
            make
            rsync
            diffutils
          pacboy: >-
            nasm:p
      - uses: actions/download-artifact@v4
        with:
          name: windows-ucrt-${{matrix.arch}}-toolchain
      - name: Unpack toolchain
        run: |
          unzip -q llvm-mingw-*.zip
          rm llvm-mingw-*.zip
          mv llvm-mingw-* /llvm-mingw
          echo /llvm-mingw/bin >> $GITHUB_PATH
      - name: Checkout ffmpeg
        uses: actions/checkout@v4
        with:
          repository: ffmpeg/ffmpeg
          ref: n6.1.2
          path: ffmpeg
      - name: Cache FATE samples
        uses: actions/cache@v4
        with:
          path: fate-samples
          key: fate-samples
      - name: Build & test ffmpeg
        run: |
          export PATH=/llvm-mingw/bin:$PATH
          mkdir ffmpeg-build
          cd ffmpeg-build
          ../ffmpeg/configure --samples=../fate-samples --enable-gpl
          make -j$(nproc)
          make fate-rsync
          make -j$(nproc) fate

  gcc:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        crt:
          - ucrt
          - msvcrt
        arch:
          - i686
          - x86_64
    steps:
      - name: Download dependencies
        run: |
          sudo apt-get update && sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev autoconf automake
      - name: Cache tarballs
        id: cache-gnu
        uses: actions/cache@v4
        with:
          path: /opt/gnu
          key: binutils-2.42-gcc-14.1.0
      - name: Download tarballs
        if: steps.cache-gnu.outputs.cache-hit != 'true'
        run: |
          mkdir -p /opt/gnu
          cd /opt/gnu
          curl -LO https://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz
          curl -LO https://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.1.tar.xz
          curl -LO https://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz
          curl -LO https://ftpmirror.gnu.org/gnu/binutils/binutils-2.42.tar.xz
          curl -LO https://ftpmirror.gnu.org/gnu/gcc/gcc-14.1.0/gcc-14.1.0.tar.xz
      - name: Build binutils
        run: |
          tar -Jxf /opt/gnu/binutils-*.tar.xz
          cd binutils-*
          mkdir build
          cd build
          ../configure --prefix=$(pwd)/../../prefix --target=${{matrix.arch}}-w64-mingw32 --disable-werror --disable-multilib
          make -j$(nproc)
          make install-strip
          echo $(pwd)/../../prefix/bin >> $GITHUB_PATH
      - name: Build the base GCC
        run: |
          tar -Jxf /opt/gnu/gcc-*.tar.xz
          cd gcc-*
          mkdir build
          cd build
          ../configure --prefix=$(pwd)/../../prefix --target=${{matrix.arch}}-w64-mingw32 --enable-languages=c,c++ --disable-multilib --enable-threads=posix
          make -j$(nproc) all-gcc
          make install-strip-gcc
      - name: Check out the mingw-w64 version to be tested
        uses: actions/checkout@v4
        with:
          path: mingw-w64
      - name: Build the mingw-w64 runtime
        run: |
          PREFIX=$(pwd)/prefix/${{matrix.arch}}-w64-mingw32
          cd mingw-w64/mingw-w64-headers
          autoreconf
          mkdir build
          cd build
          ../configure --prefix=$PREFIX --host=${{matrix.arch}}-w64-mingw32 --with-default-msvcrt=${{matrix.crt}}
          make install
          cd ../../mingw-w64-crt
          autoreconf
          mkdir build
          cd build
          ../configure --prefix=$PREFIX --host=${{matrix.arch}}-w64-mingw32 --with-default-msvcrt=${{matrix.crt}} ${{ matrix.arch == 'i686' && '--enable-lib32 --disable-lib64' || '--disable-lib32 --enable-lib64' }} CPPFLAGS="-Werror"
          make -j$(nproc)
          make install
          cd ../../mingw-w64-libraries/winpthreads
          autoreconf
          mkdir build
          cd build
          ../configure --prefix=$PREFIX --host=${{matrix.arch}}-w64-mingw32 CPPFLAGS="-Werror"
          make -j$(nproc)
          make install
      - name: Build the GCC runtimes
        run: |
          cd gcc-*
          cd build
          make -j$(nproc)
          make install-strip
      - name: Package the toolchain
        run: |
          NAME=gcc-mingw-${{matrix.crt}}-${{matrix.arch}}
          mv prefix $NAME
          tar -Jcf $NAME.tar.xz --format=ustar --numeric-owner --owner=0 --group=0 --sort=name $NAME
      - uses: actions/upload-artifact@v4
        with:
          name: linux-${{matrix.crt}}-${{matrix.arch}}-gcc-toolchain
          path: |
            gcc-mingw-*.tar.xz
          retention-days: 7

  gcc-cross:
    runs-on: ubuntu-latest
    needs: [gcc]
    strategy:
      fail-fast: false
      matrix:
        crt:
          - ucrt
          - msvcrt
        arch:
          - i686
          - x86_64
    steps:
      - uses: actions/download-artifact@v4
        with:
          name: linux-${{matrix.crt}}-${{matrix.arch}}-gcc-toolchain
      - name: Unpack cross toolchain
        run: |
          tar -Jxf gcc-mingw-*.tar.xz
          rm gcc-mingw-*.tar.xz
          sudo mv gcc-mingw* /opt/gcc-mingw
          echo /opt/gcc-mingw/bin >> $GITHUB_PATH
      - name: Cache tarballs
        id: cache-gnu
        uses: actions/cache@v4
        with:
          path: /opt/gnu
          key: binutils-2.42-gcc-14.1.0
      - name: Download tarballs
        if: steps.cache-gnu.outputs.cache-hit != 'true'
        run: |
          mkdir -p /opt/gnu
          cd /opt/gnu
          curl -LO https://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz
          curl -LO https://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.1.tar.xz
          curl -LO https://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz
          curl -LO https://ftpmirror.gnu.org/gnu/binutils/binutils-2.42.tar.xz
          curl -LO https://ftpmirror.gnu.org/gnu/gcc/gcc-14.1.0/gcc-14.1.0.tar.xz
      - name: Build dependencies
        run: |
          PREFIX=$(pwd)/prefix

          tar -Jxf /opt/gnu/gmp-*.tar.xz
          cd gmp-*
          mkdir build
          cd build
          ../configure --prefix=$PREFIX --host=${{matrix.arch}}-w64-mingw32 --disable-shared
          make -j$(nproc)
          make install
          cd ../..

          tar -Jxf /opt/gnu/mpfr-*.tar.xz
          cd mpfr-*
          mkdir build
          cd build
          ../configure --prefix=$PREFIX --host=${{matrix.arch}}-w64-mingw32 --disable-shared --with-gmp=$PREFIX
          make -j$(nproc)
          make install
          cd ../..

          tar -zxf /opt/gnu/mpc-*.tar.gz
          cd mpc-*
          mkdir build
          cd build
          ../configure --prefix=$PREFIX --host=${{matrix.arch}}-w64-mingw32 --disable-shared --with-gmp=$PREFIX
          make -j$(nproc)
          make install
          cd ../..

      - name: Build binutils
        run: |
          tar -Jxf /opt/gnu/binutils-*.tar.xz
          cd binutils-*
          mkdir build
          cd build
          ../configure --prefix=$(pwd)/../../prefix --host=${{matrix.arch}}-w64-mingw32 --target=${{matrix.arch}}-w64-mingw32 --disable-werror --disable-multilib
          make -j$(nproc)
          make install-strip
          echo $(pwd)/../../prefix/bin >> $GITHUB_PATH
      - name: Build GCC
        run: |
          tar -Jxf /opt/gnu/gcc-*.tar.xz
          cd gcc-*
          mkdir build
          cd build
          ../configure --prefix=$(pwd)/../../prefix --host=${{matrix.arch}}-w64-mingw32 --target=${{matrix.arch}}-w64-mingw32 --enable-languages=c,c++ --disable-multilib --enable-threads=posix --with-gmp=$(pwd)/../../prefix --with-native-system-header-dir=/opt/gcc-mingw/${{matrix.arch}}-w64-mingw32/include --disable-bootstrap
          make -j$(nproc) all-gcc
          make install-strip-gcc
      - name: Transplant the mingw-w64 installation from the cross compiler to the native one
        run: |
          rm -rf prefix/${{matrix.arch}}-w64-mingw32/include
          rm -rf prefix/${{matrix.arch}}-w64-mingw32/lib
          mkdir -p prefix/${{matrix.arch}}-w64-mingw32/bin
          cp -a /opt/gcc-mingw/${{matrix.arch}}-w64-mingw32/bin/*.dll prefix/${{matrix.arch}}-w64-mingw32/bin
          cp -a /opt/gcc-mingw/${{matrix.arch}}-w64-mingw32/include prefix/${{matrix.arch}}-w64-mingw32
          cp -a /opt/gcc-mingw/${{matrix.arch}}-w64-mingw32/lib prefix/${{matrix.arch}}-w64-mingw32/lib
          cp -a /opt/gcc-mingw/${{matrix.arch}}-w64-mingw32/include/c++ prefix/include
          cp -a /opt/gcc-mingw/${{matrix.arch}}-w64-mingw32/bin/*.dll prefix/bin
          cp -a /opt/gcc-mingw/${{matrix.arch}}-w64-mingw32/lib/*.dll prefix/bin
          rm -rf prefix/lib/gcc
          cp -a /opt/gcc-mingw/lib/gcc prefix/lib
      - name: Package the toolchain
        run: |
          NAME=gcc-mingw-${{matrix.crt}}-${{matrix.arch}}
          mv prefix $NAME
          zip -9rq $NAME.zip $NAME
      - uses: actions/upload-artifact@v4
        with:
          name: windows-${{matrix.crt}}-${{matrix.arch}}-gcc-toolchain
          path: |
            gcc-mingw-*.zip
          retention-days: 7

  test-gcc:
    needs: [gcc-cross]
    runs-on: windows-latest
    strategy:
      fail-fast: false
      matrix:
        crt:
          - ucrt
          - msvcrt
        arch:
          - i686
          - x86_64
    steps:
      - uses: actions/download-artifact@v4
        with:
          name: windows-${{matrix.crt}}-${{matrix.arch}}-gcc-toolchain
      - name: Unpack toolchain
        run: |
          Expand-Archive gcc-mingw-*.zip -DestinationPath .
          del gcc-mingw-*.zip
          mv gcc-mingw-* c:\gcc-mingw
          echo "c:\gcc-mingw\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
      - name: Check out llvm-mingw tests
        uses: actions/checkout@v4
        with:
          repository: mstorsjo/llvm-mingw
          ref: 20260224
      - name: Run tests
        run: |
          gcc test/hello.c -o hello.exe
          ./hello.exe
          gcc test/crt-test.c -o crt-test.exe
          ./crt-test.exe
          g++ test/hello-cpp.cpp -o hello-cpp.exe
          ./hello-cpp.exe
          g++ test/hello-exception.cpp -o hello-exception.exe
          ./hello-exception.exe

  testcases-clang:
    defaults:
      run:
        shell: msys2 {0}
    strategy:
      fail-fast: false
      matrix:
        crt:
          - ucrt
          - ucrtbase
          - msvcrt
        arch:
          - i686
          - x86_64
          - armv7
          - aarch64
          - arm64ec
    runs-on: ${{startsWith(matrix.arch, 'a') && 'windows-11-arm' || 'windows-latest'}}
    steps:
      - uses: msys2/setup-msys2@v2
        with:
          msystem: mingw64
          install: >-
            unzip
            make
            autoconf
            automake
      - name: Unpack toolchain
        run: |
          curl -LO https://github.com/mstorsjo/llvm-mingw/releases/download/20260224/llvm-mingw-20260224-${{ matrix.crt == 'ucrtbase' && 'ucrt' || ((matrix.crt == 'msvcrt' && startsWith(matrix.arch, 'a')) && 'ucrt') || matrix.crt }}-${{ (matrix.arch == 'arm64ec' || matrix.arch == 'armv7') && 'aarch64' || matrix.arch }}.zip
          unzip -q llvm-mingw-*.zip
          rm llvm-mingw-*.zip
          mv llvm-mingw-* /llvm-mingw
          echo /llvm-mingw/bin >> $GITHUB_PATH
      - uses: actions/checkout@v4
      - name: Build mingw-w64-crt and tests
        run: |
          export PATH=/llvm-mingw/bin:$PATH
          cd mingw-w64-headers
          autoreconf
          mkdir build
          cd build
          ../configure --prefix=/llvm-mingw --with-default-msvcrt=${{matrix.crt}}
          make install
          cd ../..
          cd mingw-w64-crt
          autoreconf
          mkdir build
          cd build
          ../configure --disable-dependency-tracking --prefix=/llvm-mingw/${{matrix.arch}}-w64-mingw32 --host=${{matrix.arch}}-w64-mingw32 --with-default-msvcrt=${{matrix.crt}} --enable-silent-rules ${{ (startsWith(matrix.arch, 'a') && '--disable-lib32 --disable-lib64') || (matrix.arch == 'x86_64' && '--disable-lib32') || '--disable-lib64' }} CPPFLAGS="-Werror"
          make -j$(nproc)
          make -j$(nproc) install
          make -j$(nproc) check -k -O --no-print-directory TESTS=
      - name: Test i386 Interlocked functions
        if: matrix.arch == 'i686'
        run: |
          export PATH=/llvm-mingw/bin:$PATH
          ${{matrix.arch}}-w64-mingw32-clang -std=c99 -march=i386 -c -o t_intrinc.o mingw-w64-crt/testcases/t_intrinc.c
          if ${{matrix.arch}}-w64-mingw32-objdump -d t_intrinc.o | grep -qiE 'cmpxchg|xadd'; then
            echo "Error: i386 object contains i486+ instructions:"
            ${{matrix.arch}}-w64-mingw32-objdump -d t_intrinc.o | grep -iE 'cmpxchg|xadd'
            exit 1
          fi
          ${{matrix.arch}}-w64-mingw32-clang -std=c99 -march=i386 -o t_intrinc.exe mingw-w64-crt/testcases/t_intrinc.c
          ./t_intrinc.exe
      - name: Run mingw-w64-crt testcases
        if: matrix.arch != 'armv7'
        run: |
          export PATH=/llvm-mingw/bin:$PATH
          cd mingw-w64-crt/build
          make -j$(nproc) check -k -O --no-print-directory || { cat testcases/test-suite.log; exit 1; }
      - name: Build winpthreads and tests
        run: |
          export PATH=/llvm-mingw/bin:$PATH
          cd mingw-w64-libraries/winpthreads
          autoreconf
          mkdir build
          cd build
          ../configure --disable-dependency-tracking --prefix=/llvm-mingw/${{matrix.arch}}-w64-mingw32 --host=${{matrix.arch}}-w64-mingw32 --enable-silent-rules CPPFLAGS="-Werror"
          make -j$(nproc)
          make -j$(nproc) check -k -O --no-print-directory TESTS=
      - name: Test winpthreads
        if: matrix.arch != 'armv7'
        run: |
          export PATH=/llvm-mingw/bin:$PATH
          cd mingw-w64-libraries/winpthreads/build
          make -j$(nproc) check -k -O --no-print-directory || { cat tests/test-suite.log; exit 1; }

  testcases-gcc:
    runs-on: windows-latest
    needs: [gcc-cross]
    defaults:
      run:
        shell: msys2 {0}
    strategy:
      fail-fast: false
      matrix:
        crt:
          - ucrt
          - ucrtbase
          - msvcrt
        arch:
          - i686
          - x86_64
    steps:
      - uses: msys2/setup-msys2@v2
        with:
          msystem: mingw64
          install: >-
            unzip
            make
            autoconf
            automake
      - uses: actions/download-artifact@v4
        with:
          name: windows-${{ matrix.crt == 'ucrtbase' && 'ucrt' || matrix.crt }}-${{matrix.arch}}-gcc-toolchain
      - name: Unpack toolchain
        run: |
          unzip -q gcc-mingw-*.zip
          rm gcc-mingw-*.zip
          mv gcc-mingw-* /gcc-mingw
          echo /gcc-mingw/bin >> $GITHUB_PATH
      - uses: actions/checkout@v4
      - name: Build mingw-w64-crt and run testcases
        run: |
          export PATH=/gcc-mingw/bin:$PATH
          cd mingw-w64-headers
          autoreconf
          mkdir build
          cd build
          ../configure --prefix=/gcc-mingw/${{matrix.arch}}-w64-mingw32 --with-default-msvcrt=${{matrix.crt}}
          make install
          cd ../..
          cd mingw-w64-crt
          autoreconf
          mkdir build
          cd build
          ../configure --disable-dependency-tracking --prefix=/gcc-mingw/${{matrix.arch}}-w64-mingw32 --host=${{matrix.arch}}-w64-mingw32 --with-default-msvcrt=${{matrix.crt}} --enable-silent-rules ${{ matrix.arch == 'x86_64' && '--disable-lib32' || '--disable-lib64' }} CPPFLAGS="-Werror"
          make -j$(nproc)
          make -j$(nproc) install
          make -j$(nproc) check -k -O --no-print-directory TESTS=
          make -j$(nproc) check -k -O --no-print-directory || { cat testcases/test-suite.log; exit 1; }
      - name: Test i386 Interlocked functions
        if: matrix.arch == 'i686'
        run: |
          export PATH=/gcc-mingw/bin:$PATH
          ${{matrix.arch}}-w64-mingw32-gcc -std=c99 -march=i386 -o t_intrinc.exe mingw-w64-crt/testcases/t_intrinc.c
          ./t_intrinc.exe
      - name: Build and test winpthreads
        run: |
          export PATH=/gcc-mingw/bin:$PATH
          cd mingw-w64-libraries/winpthreads
          autoreconf
          mkdir build
          cd build
          ../configure --disable-dependency-tracking --prefix=/gcc-mingw/${{matrix.arch}}-w64-mingw32 --host=${{matrix.arch}}-w64-mingw32 --enable-silent-rules CPPFLAGS="-Werror"
          make -j$(nproc)
          make -j$(nproc) check -k -O --no-print-directory TESTS=
          make -j$(nproc) check -k -O --no-print-directory || { cat tests/test-suite.log; exit 1; }
