diff --git a/.github/workflows/windows-test.yml b/.github/workflows/windows-test.yml index c7af6e0ee..29e0402f2 100644 --- a/.github/workflows/windows-test.yml +++ b/.github/workflows/windows-test.yml @@ -65,6 +65,58 @@ jobs: env: METACALL_BUILD_OPTIONS: ${{ matrix.options.build }} tests + windows-mingw-test: + name: Windows MinGW Test + runs-on: windows-latest + strategy: + fail-fast: false + matrix: + build_type: [Debug, Release] + sys: [mingw32, mingw64, ucrt64, clang64] + + defaults: + run: + shell: msys2 {0} + + steps: + - name: Check out the repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: '${{ matrix.sys }} Setup MSYS2' + uses: msys2/setup-msys2@v2 + with: + msystem: ${{ matrix.sys }} + update: true + install: >- + base-devel + git + cmake + make + pacboy: >- + toolchain:p + cmake:p + ninja:p + + - name: Create build directory + run: mkdir build + + - name: Configure with CMake + working-directory: ./build + run: | + cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DOPTION_FORK_SAFE=OFF -DOPTION_BUILD_PLUGINS_BACKTRACE=OFF .. + + - name: Build with CMake + working-directory: ./build + run: | + cmake --build . + + - name: Run CTest + working-directory: ./build + run: | + ctest -j$(getconf _NPROCESSORS_ONLN) --timeout 5400 --output-on-failure -C ${{ matrix.build_type }} + windows-distributable: name: Windows Distributable Dispatch needs: windows-test