diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 129afd9a1..a38347c92 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -72,6 +72,61 @@ jobs: path: bin/libgodot-cpp.windows.release.64.lib if-no-files-found: error + windows-msvc-cmake: + name: Build (Windows, MSVC, CMake) + runs-on: windows-2019 + steps: + - name: Checkout + uses: actions/checkout@v2.3.4 + with: + submodules: recursive + + - name: Set up Python (for binding generator) + uses: actions/setup-python@v2 + with: + python-version: '3.9.1' + + - name: Build godot-cpp + run: | + # MSVS generator supports multiple configurations but godot-cpp CMake requires CMAKE_BUILD_TYPE + cmake -G "Visual Studio 16 2019" -T v142 -A x64 -DCMAKE_C_FLAGS=/MP -DCMAKE_CXX_FLAGS=/MP -DCMAKE_BUILD_TYPE=Release . + cmake --build . --config "Release" -- /maxcpucount /property:BuildInParallel=true /property:CL_MPCount=2 /verbosity:minimal + + windows-msvc-cmake-ninja: + name: Build (Windows, MSVC, CMake+Ninja) + runs-on: windows-2019 + steps: + - name: Checkout + uses: actions/checkout@v2.3.4 + with: + submodules: recursive + + - name: Set up Python (for binding generator) + uses: actions/setup-python@v2 + with: + python-version: '3.9.1' + + - uses: seanmiddleditch/gha-setup-ninja@master + + - name: Uninstall GCC + run: | + choco uninstall mingw strawberryperl -y --remove-dependencies + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v1.0.2 + with: + vs-version: '[16.0,16.10)' + + - name: Add cl to PATH + uses: ilammy/msvc-dev-cmd@v1 + + - name: Build godot-cpp + run: | + set CC=cl + # MSVS generator supports multiple configurations but godot-cpp CMake requires CMAKE_BUILD_TYPE + cmake -G Ninja -DCMAKE_C_FLAGS=/MP -DCMAKE_CXX_FLAGS=/MP -DCMAKE_BUILD_TYPE=Release . + cmake --build . --config "Release" + windows-mingw: name: Build (Windows, MinGW) runs-on: windows-2019