From d517ec32ac36f7b38e7bc13c2993468f71ea398f Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 00:21:42 +0200 Subject: [PATCH 1/9] add clang-cl and complete the ci --- .github/workflows/linux.yml | 6 +++++- .github/workflows/mac.yml | 6 +++++- .github/workflows/windows.yml | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 5e9cbca..593ca93 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -9,13 +9,16 @@ on: jobs: build: runs-on: ubuntu-latest + strategy: + matrix: + config: [Release, Debug] steps: - uses: actions/checkout@v4 - name: Install dependencies run: sudo apt-get install cmake ninja-build libbz2-dev - name: Build run: | - cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=Release + cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }} cmake --build build-cmake -j - name: Create Package run: | @@ -23,6 +26,7 @@ jobs: cp build-cmake/prism prism-release/ cp "$(ldconfig -p | grep libbz2.so.1.0 | tr ' ' '\n' | grep /| head -n1)" prism-release/ - name: Publish packaged artifacts + if: ${{ matrix.config == 'Release' }} uses: actions/upload-artifact@v4 with: name: prism-linux-x64 diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 613f057..6a233be 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -9,19 +9,23 @@ on: jobs: build: runs-on: macOS-latest + strategy: + matrix: + config: [Release, Debug] steps: - uses: actions/checkout@v4 - name: Install dependencies run: brew install cmake ninja xcodes - name: Build run: | - cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=Release + cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }} cmake --build build-cmake -j - name: Create Package run: | mkdir prism-release cp build-cmake/prism prism-release/ - name: Publish packaged artifacts + if: ${{ matrix.config == 'Release' }} uses: actions/upload-artifact@v4 with: name: prism-mac-bin diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index f4ec709..b43adc9 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -9,11 +9,15 @@ on: jobs: build: runs-on: windows-2022 + strategy: + matrix: + config: [Release, Debug] + toolchain: [v143, clangcl] steps: - uses: actions/checkout@v4 - name: Build run: | - cmake -S . -B "build/x64" -G "Visual Studio 17 2022" -T v142 -A x64 -DCMAKE_BUILD_TYPE:STRING=Release + cmake -S . -B "build/x64" -G "Visual Studio 17 2022" -T ${{ matrix.toolchain }} -A x64 -DCMAKE_BUILD_TYPE:STRING=${{ matrix.config }} cmake --build ./build/x64 - name: Publish packaged artifacts uses: actions/upload-artifact@v4 From 5470243b1a7d62a1c1abba850dc9f49ac2fe24e6 Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 00:28:24 +0200 Subject: [PATCH 2/9] Update CMakeLists.txt --- CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f98c95b..4a1a7f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -55,7 +55,7 @@ if (DEBUG_PARSE) add_definitions(-DDEBUG_PARSE) endif() -if(NOT CMAKE_CXX_COMPILER_ID MATCHES "MSVC") +if(NOT MSVC) set(CMAKE_CXX_FLAGS_DEBUG "-g") set(CMAKE_CXX_FLAGS_RELEASE "-O3") set(CMAKE_CXX_FLAGS "-Wno-narrowing") @@ -73,7 +73,7 @@ else() /W3; /${LINK_TYPE} > - /bigobj + # /bigobj /permissive-; /MP; ${DEFAULT_CXX_DEBUG_INFORMATION_FORMAT}; @@ -89,7 +89,7 @@ else() /INCREMENTAL:NO; /FORCE:MULTIPLE > - /bigobj; + # /bigobj; /MANIFEST:NO; /DEBUG; /SUBSYSTEM:CONSOLE From 00f8b8bfca380678a577db0e672ff0f26db3d399 Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 00:31:39 +0200 Subject: [PATCH 3/9] fix path --- .github/workflows/windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index b43adc9..027622d 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -30,4 +30,4 @@ jobs: cd build/x64 ctest -j -C Debug - name: Echo Test Results - run: cat build-cmake/Testing/Temporary/LastTest.log \ No newline at end of file + run: cat build/x64/Testing/Temporary/LastTest.log \ No newline at end of file From 5e1d917ab1492a6e90ded725b933a1ca8f53614e Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 01:08:19 +0200 Subject: [PATCH 4/9] Update windows.yml --- .github/workflows/windows.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 027622d..20b4be6 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -20,10 +20,11 @@ jobs: cmake -S . -B "build/x64" -G "Visual Studio 17 2022" -T ${{ matrix.toolchain }} -A x64 -DCMAKE_BUILD_TYPE:STRING=${{ matrix.config }} cmake --build ./build/x64 - name: Publish packaged artifacts + if: ${{ matrix.config == 'Release' }} uses: actions/upload-artifact@v4 with: - name: prism-windows-x64 - path: build/x64/Debug/prism.exe + name: prism-windows-x64-${{ matrix.config }} + path: build/x64/Release/prism.exe - name: Test continue-on-error: true run: | From 2346f74f0662f1be2ef731643b4ff1bb43fff8dd Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 17:26:39 +0200 Subject: [PATCH 5/9] add more CI --- .github/workflows/linux.yml | 7 ++++-- .github/workflows/mac.yml | 17 +++++++++++-- .github/workflows/windows.yml | 35 +++++++++++++++++++------- CMakeLists.txt | 15 ++++++++--- cmake/toolchain/linux-clang.cmake | 3 +++ cmake/toolchain/linux-gnu.cmake | 3 +++ cmake/toolchain/macos-clang-llvm.cmake | 3 +++ cmake/toolchain/macos-clang.cmake | 0 cmake/toolchain/macos-gnu.cmake | 2 ++ cmake/toolchain/windows-clang-cl.cmake | 7 ++++++ cmake/toolchain/windows-msvc.cmake | 3 +++ 11 files changed, 79 insertions(+), 16 deletions(-) create mode 100644 cmake/toolchain/linux-clang.cmake create mode 100644 cmake/toolchain/linux-gnu.cmake create mode 100644 cmake/toolchain/macos-clang-llvm.cmake create mode 100644 cmake/toolchain/macos-clang.cmake create mode 100644 cmake/toolchain/macos-gnu.cmake create mode 100644 cmake/toolchain/windows-clang-cl.cmake create mode 100644 cmake/toolchain/windows-msvc.cmake diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 593ca93..cc3a0da 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -12,21 +12,24 @@ jobs: strategy: matrix: config: [Release, Debug] + standalone: [OFF, ON] + toolchain: [linux-gnu, linux-clang] steps: - uses: actions/checkout@v4 - name: Install dependencies run: sudo apt-get install cmake ninja-build libbz2-dev - name: Build run: | - cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }} + cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DPRISM_STANDALONE=${{ matrix.standalone }} -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain/${{ matrix.toolchain }}.cmake cmake --build build-cmake -j - name: Create Package + if: ${{ matrix.config == 'Release' && matrix.standalone == 'ON' && matrix.toolchain == 'linux-gnu' }} run: | mkdir prism-release cp build-cmake/prism prism-release/ cp "$(ldconfig -p | grep libbz2.so.1.0 | tr ' ' '\n' | grep /| head -n1)" prism-release/ - name: Publish packaged artifacts - if: ${{ matrix.config == 'Release' }} + if: ${{ matrix.config == 'Release' && matrix.standalone == 'ON' && matrix.toolchain == 'linux-gnu' }} uses: actions/upload-artifact@v4 with: name: prism-linux-x64 diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 6a233be..e85d953 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -12,20 +12,33 @@ jobs: strategy: matrix: config: [Release, Debug] + standalone: [OFF, ON] + toolchain: [macos-clang, macos-gnu] # remove temporary macos-clang-llvm steps: - uses: actions/checkout@v4 - name: Install dependencies run: brew install cmake ninja xcodes + - name: Download llvm + if: ${{ matrix.toolchain == 'macos-clang-llvm' }} + run: | + brew install llvm lld + echo "/opt/homebrew/opt/llvm/bin" >> $GITHUB_PATH + - name: Download gnu + if: ${{ matrix.toolchain == 'macos-gnu' }} + run: | + brew install gcc + echo "/opt/homebrew/opt/gcc/bin" >> $GITHUB_PATH - name: Build run: | - cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }} + cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DPRISM_STANDALONE=${{ matrix.standalone }} -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain/${{ matrix.toolchain }}.cmake cmake --build build-cmake -j - name: Create Package + if: ${{ matrix.config == 'Release' && matrix.standalone == 'ON' && matrix.toolchain == 'macos-clang' }} run: | mkdir prism-release cp build-cmake/prism prism-release/ - name: Publish packaged artifacts - if: ${{ matrix.config == 'Release' }} + if: ${{ matrix.config == 'Release' && matrix.standalone == 'ON' && matrix.toolchain == 'macos-clang' }} uses: actions/upload-artifact@v4 with: name: prism-mac-bin diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 20b4be6..5571bc0 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -12,23 +12,40 @@ jobs: strategy: matrix: config: [Release, Debug] - toolchain: [v143, clangcl] + toolchain: [windows-msvc, windows-clang-cl] + standalone: [OFF, ON] + generate: [Visual Studio 17 2022, Ninja] + arch: [x64, Win32] + exclude: + - toolchain: windows-clang-cl + arch: Win32 steps: - uses: actions/checkout@v4 - - name: Build + - name: Build Visual Studio + if: ${{ matrix.generate == 'Visual Studio 17 2022' }} run: | - cmake -S . -B "build/x64" -G "Visual Studio 17 2022" -T ${{ matrix.toolchain }} -A x64 -DCMAKE_BUILD_TYPE:STRING=${{ matrix.config }} - cmake --build ./build/x64 + cmake -S . -B "build/${{ matrix.arch }}" -G "${{ matrix.generate }}" -DCMAKE_TOOLCHAIN_FILE="cmake/toolchain/${{ matrix.toolchain }}.cmake" -DCMAKE_GENERATOR_PLATFORM=${{ matrix.arch }} -DCMAKE_BUILD_TYPE:STRING=${{ matrix.config }} -DPRISM_STANDALONE=${{ matrix.standalone }} + cmake --build ./build/${{ matrix.arch }} + - name: Setup Variables + if: ${{ matrix.generate == 'Ninja' }} + uses: ilammy/msvc-dev-cmd@v1 + with: + arch: ${{ matrix.arch }} + - name: Build Ninja + if: ${{ matrix.generate == 'Ninja' }} + run: | + cmake -S . -B "build/${{ matrix.arch }}" -G "${{ matrix.generate }}" -DCMAKE_TOOLCHAIN_FILE="cmake/toolchain/${{ matrix.toolchain }}.cmake" -DCMAKE_BUILD_TYPE:STRING=${{ matrix.config }} -DPRISM_STANDALONE=${{ matrix.standalone }} + cmake --build ./build/${{ matrix.arch }} - name: Publish packaged artifacts - if: ${{ matrix.config == 'Release' }} + if: ${{ matrix.config == 'Release' && matrix.generate == 'Visual Studio 17 2022' && matrix.standalone == 'ON' }} uses: actions/upload-artifact@v4 with: - name: prism-windows-x64-${{ matrix.config }} - path: build/x64/Release/prism.exe + name: prism-windows-${{ matrix.arch }}-${{ matrix.config }} + path: build/${{ matrix.arch }}/${{ matrix.config }}/prism.exe - name: Test continue-on-error: true run: | - cd build/x64 + cd build/${{ matrix.arch }} ctest -j -C Debug - name: Echo Test Results - run: cat build/x64/Testing/Temporary/LastTest.log \ No newline at end of file + run: cat build/${{ matrix.arch }}/Testing/Temporary/LastTest.log \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 4a1a7f8..0a4f7c8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -73,7 +73,6 @@ else() /W3; /${LINK_TYPE} > - # /bigobj /permissive-; /MP; ${DEFAULT_CXX_DEBUG_INFORMATION_FORMAT}; @@ -89,11 +88,14 @@ else() /INCREMENTAL:NO; /FORCE:MULTIPLE > - # /bigobj; /MANIFEST:NO; /DEBUG; /SUBSYSTEM:CONSOLE ) + if (NOT "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") + target_compile_options(${PROJECT_NAME} PRIVATE /bigobj) + target_link_options(${PROJECT_NAME} PRIVATE /bigobj) + endif() set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") endif() @@ -121,7 +123,14 @@ if(PRISM_STANDALONE) target_link_libraries(${PROJECT_NAME} PRIVATE spdlog) else() find_package(spdlog QUIET) - target_link_libraries(${PROJECT_NAME} PUBLIC spdlog::spdlog) + if (NOT spdlog_FOUND) + FetchContent_Declare( + spdlog + GIT_REPOSITORY https://github.com/gabime/spdlog.git + GIT_TAG 7e635fca68d014934b4af8a1cf874f63989352b7 + ) + endif() + target_link_libraries(${PROJECT_NAME} PUBLIC spdlog::spdlog) endif() if(NOT PRISM_STANDALONE) diff --git a/cmake/toolchain/linux-clang.cmake b/cmake/toolchain/linux-clang.cmake new file mode 100644 index 0000000..e958f30 --- /dev/null +++ b/cmake/toolchain/linux-clang.cmake @@ -0,0 +1,3 @@ +set(CMAKE_C_COMPILER /usr/bin/clang) +set(CMAKE_CXX_COMPILER /usr/bin/clang++) +set(CMAKE_LINKER /usr/bin/ld) diff --git a/cmake/toolchain/linux-gnu.cmake b/cmake/toolchain/linux-gnu.cmake new file mode 100644 index 0000000..74ca215 --- /dev/null +++ b/cmake/toolchain/linux-gnu.cmake @@ -0,0 +1,3 @@ +set(CMAKE_C_COMPILER /usr/bin/gcc) +set(CMAKE_CXX_COMPILER /usr/bin/g++) +set(CMAKE_LINKER /usr/bin/ld) \ No newline at end of file diff --git a/cmake/toolchain/macos-clang-llvm.cmake b/cmake/toolchain/macos-clang-llvm.cmake new file mode 100644 index 0000000..27cc14d --- /dev/null +++ b/cmake/toolchain/macos-clang-llvm.cmake @@ -0,0 +1,3 @@ +set(CMAKE_C_COMPILER /opt/homebrew/opt/llvm/bin/clang) +set(CMAKE_CXX_COMPILER /opt/homebrew/opt/llvm/bin/clang++) +set(CMAKE_LINKER /opt/homebrew/opt/lld/bin/lld-link) diff --git a/cmake/toolchain/macos-clang.cmake b/cmake/toolchain/macos-clang.cmake new file mode 100644 index 0000000..e69de29 diff --git a/cmake/toolchain/macos-gnu.cmake b/cmake/toolchain/macos-gnu.cmake new file mode 100644 index 0000000..5e1339f --- /dev/null +++ b/cmake/toolchain/macos-gnu.cmake @@ -0,0 +1,2 @@ +set(CMAKE_C_COMPILER /usr/bin/gcc) +set(CMAKE_CXX_COMPILER /usr/bin/g++) \ No newline at end of file diff --git a/cmake/toolchain/windows-clang-cl.cmake b/cmake/toolchain/windows-clang-cl.cmake new file mode 100644 index 0000000..770c988 --- /dev/null +++ b/cmake/toolchain/windows-clang-cl.cmake @@ -0,0 +1,7 @@ +if (CMAKE_GENERATOR MATCHES "Visual Studio") + set(CMAKE_GENERATOR_TOOLSET "clangcl") +else() + set(CMAKE_C_COMPILER clang-cl.exe) + set(CMAKE_CXX_COMPILER clang-cl.exe) + set(CMAKE_LINKER lld-link.exe) +endif() \ No newline at end of file diff --git a/cmake/toolchain/windows-msvc.cmake b/cmake/toolchain/windows-msvc.cmake new file mode 100644 index 0000000..34ad8c0 --- /dev/null +++ b/cmake/toolchain/windows-msvc.cmake @@ -0,0 +1,3 @@ +if (CMAKE_GENERATOR MATCHES "Visual Studio") + set(CMAKE_GENERATOR_TOOLSET "v143") +endif() \ No newline at end of file From bfb6e8412721c10b236c17e7bbfb21d6185409ee Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 17:29:21 +0200 Subject: [PATCH 6/9] Update CMakeLists.txt --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0a4f7c8..9da11b4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -129,6 +129,7 @@ else() GIT_REPOSITORY https://github.com/gabime/spdlog.git GIT_TAG 7e635fca68d014934b4af8a1cf874f63989352b7 ) + FetchContent_MakeAvailable(spdlog) endif() target_link_libraries(${PROJECT_NAME} PUBLIC spdlog::spdlog) endif() From ed7636d8aea2893f35fbc2237c5f97d8c3673520 Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 17:43:40 +0200 Subject: [PATCH 7/9] disable standalone in pull requests --- .github/workflows/linux.yml | 4 ++++ .github/workflows/mac.yml | 4 ++++ .github/workflows/windows.yml | 3 +++ 3 files changed, 11 insertions(+) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index cc3a0da..92b1e2d 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -14,6 +14,10 @@ jobs: config: [Release, Debug] standalone: [OFF, ON] toolchain: [linux-gnu, linux-clang] + isPR: ${{ github.event_name == 'pull_request' }} + exclude: + - isPR: true + standalone: OFF steps: - uses: actions/checkout@v4 - name: Install dependencies diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index e85d953..d8d9bc9 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -14,6 +14,10 @@ jobs: config: [Release, Debug] standalone: [OFF, ON] toolchain: [macos-clang, macos-gnu] # remove temporary macos-clang-llvm + isPR: ${{ github.event_name == 'pull_request' }} + exclude: + - isPR: true + standalone: OFF steps: - uses: actions/checkout@v4 - name: Install dependencies diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 5571bc0..7a98770 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -16,9 +16,12 @@ jobs: standalone: [OFF, ON] generate: [Visual Studio 17 2022, Ninja] arch: [x64, Win32] + isPR: ${{ github.event_name == 'pull_request' }} exclude: - toolchain: windows-clang-cl arch: Win32 + - isPR: true + standalone: OFF steps: - uses: actions/checkout@v4 - name: Build Visual Studio From 697754f96b5913512739e14a6f04468800d219d0 Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 17:44:58 +0200 Subject: [PATCH 8/9] Update linux.yml --- .github/workflows/linux.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 92b1e2d..1d29ec9 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -14,7 +14,8 @@ jobs: config: [Release, Debug] standalone: [OFF, ON] toolchain: [linux-gnu, linux-clang] - isPR: ${{ github.event_name == 'pull_request' }} + isPR: + - ${{ github.event_name == 'pull_request' }} exclude: - isPR: true standalone: OFF From 79e4f98174a9a6f7522927cab480c4517d08af83 Mon Sep 17 00:00:00 2001 From: coco875 <59367621+coco875@users.noreply.github.com> Date: Wed, 6 Aug 2025 17:48:54 +0200 Subject: [PATCH 9/9] fix a detail --- .github/workflows/mac.yml | 3 ++- .github/workflows/windows.yml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index d8d9bc9..4e552e7 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -14,7 +14,8 @@ jobs: config: [Release, Debug] standalone: [OFF, ON] toolchain: [macos-clang, macos-gnu] # remove temporary macos-clang-llvm - isPR: ${{ github.event_name == 'pull_request' }} + isPR: + - ${{ github.event_name == 'pull_request' }} exclude: - isPR: true standalone: OFF diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 7a98770..bae8800 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -16,7 +16,8 @@ jobs: standalone: [OFF, ON] generate: [Visual Studio 17 2022, Ninja] arch: [x64, Win32] - isPR: ${{ github.event_name == 'pull_request' }} + isPR: + - ${{ github.event_name == 'pull_request' }} exclude: - toolchain: windows-clang-cl arch: Win32