reduce warnings #970
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| name: Windows | |
| on: | |
| push: | |
| paths-ignore: | |
| - '.github/workflows/**' | |
| - '!.github/workflows/windows.yml' | |
| pull_request: | |
| paths-ignore: | |
| - '.github/workflows/**' | |
| - '!.github/workflows/windows.yml' | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref || github.run_id }} | |
| cancel-in-progress: true | |
| jobs: | |
| msys2: | |
| runs-on: windows-latest | |
| name: ${{ matrix.sys }} (c++${{ matrix.standard }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| # https://www.msys2.org/docs/environments/ | |
| # TODO Try to add msys | |
| sys: [ ucrt64 , clang64, mingw64, mingw32 ] | |
| standard: [ 11, 14, 17, 20 ] | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: ammaraskar/gcc-problem-matcher@master | |
| - name: 📥 Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: ⬇️ Setup CMake | |
| uses: lukka/get-cmake@latest | |
| with: | |
| cmakeVersion: ^3 | |
| ninjaVersion: ^1.11.1 | |
| - name: 📂 Load .env file | |
| if: hashFiles('.github/workflows/.env') != '' | |
| uses: xom9ikk/dotenv@v2 | |
| with: | |
| path: .github/workflows | |
| - name: ✨ Setup MSYS2 | |
| uses: msys2/setup-msys2@v2 | |
| with: | |
| msystem: ${{matrix.sys}} | |
| path-type: minimal | |
| release: true | |
| update: true | |
| pacboy: >- | |
| gcc:p | |
| cmake:p | |
| - name: 🔧 Configure | |
| run: cmake -S ${{ env.CMAKE_SOURCE_PREFIX }} -B ${{ env.CMAKE_BINARY_PREFIX }} -D CMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} -D CMAKE_CXX_STANDARD=${{ matrix.standard }} -D CMAKE_INSTALL_PREFIX=${{ env.CMAKE_INSTALL_PREFIX }} -D CPPTERMINAL_ENABLE_DOCS=OFF | |
| - name: ⚙️ Build | |
| run: cmake --build ${{ env.CMAKE_BINARY_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} --parallel ${{ env.CMAKE_NUMBER_JOBS }} | |
| - name: 🧪 Test | |
| run: ctest --test-dir ${{ env.CMAKE_BINARY_PREFIX }} -C ${{ env.CMAKE_BUILD_TYPE }} --output-on-failure | |
| - name: 🎉 Install | |
| run: cmake --install ${{ env.CMAKE_BINARY_PREFIX }} --prefix ${{ env.CMAKE_INSTALL_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} | |
| msvc: | |
| runs-on: windows-2025 | |
| name: msvc ${{ matrix.architecture }} (c++${{ matrix.standard }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| architecture: [ win32, x64 ] | |
| standard: [ 11, 14, 17, 20 ] | |
| steps: | |
| - uses: ammaraskar/msvc-problem-matcher@master | |
| - name: 📥 Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: ⬇️ Setup CMake | |
| uses: lukka/get-cmake@latest | |
| with: | |
| cmakeVersion: ^3 | |
| ninjaVersion: ^1.11.1 | |
| - name: 📂 Load .env file | |
| if: hashFiles('.github/workflows/.env') != '' | |
| uses: xom9ikk/dotenv@v2 | |
| with: | |
| path: .github/workflows | |
| - name: ✨ Setup MSVC | |
| uses: ilammy/[email protected] | |
| with: | |
| arch: ${{ matrix.architecture }} | |
| - name: 🔧 Configure | |
| run: cmake -S ${{ env.CMAKE_SOURCE_PREFIX }} -B ${{ env.CMAKE_BINARY_PREFIX }} -G "Visual Studio 17 2022" -A ${{ matrix.architecture }} -D CMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} -D CMAKE_CXX_STANDARD=${{ matrix.standard }} -D CMAKE_INSTALL_PREFIX=${{ env.CMAKE_INSTALL_PREFIX }} -D CPPTERMINAL_ENABLE_DOCS=OFF | |
| - name: ⚙️ Build | |
| run: cmake --build ${{ env.CMAKE_BINARY_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} --parallel ${{ env.CMAKE_NUMBER_JOBS }} | |
| - name: 🧪 Test | |
| run: ctest --test-dir ${{ env.CMAKE_BINARY_PREFIX }} -C ${{ env.CMAKE_BUILD_TYPE }} --output-on-failure | |
| - name: 🎉 Install | |
| run: cmake --install ${{ env.CMAKE_BINARY_PREFIX }} --prefix ${{ env.CMAKE_INSTALL_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} | |
| msvc2022: | |
| runs-on: windows-2022 | |
| name: msvc2022 ${{ matrix.architecture }} (c++${{ matrix.standard }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| architecture: [ win32, x64 ] | |
| standard: [ 11, 14, 17, 20 ] | |
| steps: | |
| - uses: ammaraskar/msvc-problem-matcher@master | |
| - name: 📥 Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: ⬇️ Setup CMake | |
| uses: lukka/get-cmake@latest | |
| with: | |
| cmakeVersion: ^3 | |
| ninjaVersion: ^1.11.1 | |
| - name: 📂 Load .env file | |
| if: hashFiles('.github/workflows/.env') != '' | |
| uses: xom9ikk/dotenv@v2 | |
| with: | |
| path: .github/workflows | |
| - name: ✨ Setup MSVC | |
| uses: ilammy/[email protected] | |
| with: | |
| arch: ${{ matrix.architecture }} | |
| - name: 🔧 Configure | |
| run: cmake -S ${{ env.CMAKE_SOURCE_PREFIX }} -B ${{ env.CMAKE_BINARY_PREFIX }} -G "Visual Studio 17 2022" -A ${{ matrix.architecture }} -D CMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} -D CMAKE_CXX_STANDARD=${{ matrix.standard }} -D CMAKE_INSTALL_PREFIX=${{ env.CMAKE_INSTALL_PREFIX }} -D CPPTERMINAL_ENABLE_DOCS=OFF | |
| - name: ⚙️ Build | |
| run: cmake --build ${{ env.CMAKE_BINARY_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} --parallel ${{ env.CMAKE_NUMBER_JOBS }} | |
| - name: 🧪 Test | |
| run: ctest --test-dir ${{ env.CMAKE_BINARY_PREFIX }} -C ${{ env.CMAKE_BUILD_TYPE }} --output-on-failure | |
| - name: 🎉 Install | |
| run: cmake --install ${{ env.CMAKE_BINARY_PREFIX }} --prefix ${{ env.CMAKE_INSTALL_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} | |
| clang: | |
| runs-on: windows-2025 | |
| name: windows-2025 clang-${{ matrix.version }} (c++${{ matrix.standard }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| version: [ 19.1.7, 20.1.8, 21.1.2 ] | |
| standard: [ 11, 14, 17, 20 ] | |
| steps: | |
| - uses: ammaraskar/gcc-problem-matcher@master | |
| - name: 📥 Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: ⬇️ Setup CMake | |
| uses: lukka/get-cmake@latest | |
| with: | |
| cmakeVersion: ^3 | |
| ninjaVersion: ^1.11.1 | |
| - name: 📂 Load .env file | |
| if: hashFiles('.github/workflows/.env') != '' | |
| uses: xom9ikk/dotenv@v2 | |
| with: | |
| path: .github/workflows | |
| - name: ⬇️ Install Clang | |
| run: curl -fsSL -o LLVM${{ matrix.version }}.exe https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ matrix.version }}/LLVM-${{ matrix.version }}-win64.exe ; 7z x LLVM${{ matrix.version }}.exe -y -o"C:/Program Files/LLVM" | |
| - name: 🔧 Configure | |
| run: cmake -S ${{ env.CMAKE_SOURCE_PREFIX }} -B ${{ env.CMAKE_BINARY_PREFIX }} -D CMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang++.exe" -D CMAKE_C_COMPILER="C:/Program Files/LLVM/bin/clang.exe" -G "MinGW Makefiles" -D CMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} -D CMAKE_CXX_STANDARD=${{ matrix.standard }} -D CMAKE_INSTALL_PREFIX=${{ env.CMAKE_INSTALL_PREFIX }} -D CPPTERMINAL_ENABLE_DOCS=OFF | |
| - name: ⚙️ Build | |
| run: cmake --build ${{ env.CMAKE_BINARY_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} --parallel ${{ env.CMAKE_NUMBER_JOBS }} | |
| - name: 🧪 Test | |
| run: ctest --test-dir ${{ env.CMAKE_BINARY_PREFIX }} -C ${{ env.CMAKE_BUILD_TYPE }} --output-on-failure | |
| - name: 🎉 Install | |
| run: cmake --install ${{ env.CMAKE_BINARY_PREFIX }} --prefix ${{ env.CMAKE_INSTALL_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} | |
| clang-cl-11: | |
| runs-on: windows-2025 | |
| name: windows-2025 clang-cl-11 ${{ matrix.architecture }} (c++${{ matrix.standard }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| architecture: [ Win32, x64 ] | |
| standard: [ 11, 14, 17, 20 ] | |
| steps: | |
| - uses: ammaraskar/msvc-problem-matcher@master | |
| - name: 📥 Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: ⬇️ Setup CMake | |
| uses: lukka/get-cmake@latest | |
| with: | |
| cmakeVersion: ^3 | |
| ninjaVersion: ^1.11.1 | |
| - name: 📂 Load .env file | |
| if: hashFiles('.github/workflows/.env') != '' | |
| uses: xom9ikk/dotenv@v2 | |
| with: | |
| path: .github/workflows | |
| - name: 🔧 Configure | |
| run: cmake -S ${{ env.CMAKE_SOURCE_PREFIX }} -B ${{ env.CMAKE_BINARY_PREFIX }} -G "Visual Studio 17 2022" -A ${{ matrix.architecture }} -T ClangCL -D CMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} -D CMAKE_CXX_STANDARD=${{ matrix.standard }} -D CMAKE_INSTALL_PREFIX=${{ env.CMAKE_INSTALL_PREFIX }} -D CPPTERMINAL_ENABLE_DOCS=OFF | |
| - name: ⚙️ Build | |
| run: cmake --build ${{ env.CMAKE_BINARY_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} --parallel ${{ env.CMAKE_NUMBER_JOBS }} | |
| - name: 🧪 Test | |
| run: ctest --test-dir ${{ env.CMAKE_BINARY_PREFIX }} -C ${{ env.CMAKE_BUILD_TYPE }} --output-on-failure | |
| - name: 🎉 Install | |
| run: cmake --install ${{ env.CMAKE_BINARY_PREFIX }} --prefix ${{ env.CMAKE_INSTALL_PREFIX }} --config ${{ env.CMAKE_BUILD_TYPE }} |