SDL: Combine the MSVC and UWP workflows

From 550b8377bc6a895d6b4ff2dd3c1566cadf45e119 Mon Sep 17 00:00:00 2001
From: Cameron Cawley <[EMAIL REDACTED]>
Date: Mon, 28 Feb 2022 14:50:37 +0000
Subject: [PATCH] Combine the MSVC and UWP workflows

---
 .github/workflows/main.yml |  5 -----
 .github/workflows/msvc.yml | 27 +++++++++++++++++++++++++++
 .github/workflows/uwp.yml  | 15 ---------------
 3 files changed, 27 insertions(+), 20 deletions(-)
 create mode 100644 .github/workflows/msvc.yml
 delete mode 100644 .github/workflows/uwp.yml

diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 901c6a6f7fb..098c6a713b2 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -15,11 +15,6 @@ jobs:
       fail-fast: false
       matrix:
         platform:
-        - { name: Windows (x64),          os: windows-latest, shell: pwsh, flags: -A x64 }
-        - { name: Windows (x86),          os: windows-latest, shell: pwsh, flags: -A Win32 }
-        - { name: Windows (clang-cl x64), os: windows-latest, shell: pwsh, flags: -T ClangCL -A x64 }
-        - { name: Windows (clang-cl x86), os: windows-latest, shell: pwsh, flags: -T ClangCL -A Win32 }
-        - { name: Windows (ARM64),        os: windows-latest, shell: pwsh, flags: -A ARM64 }
         - { name: Windows (mingw32),      os: windows-latest, shell: 'msys2 {0}', msystem: mingw32, msys-env: mingw-w64-i686 }
         - { name: Windows (mingw64),      os: windows-latest, shell: 'msys2 {0}', msystem: mingw64, msys-env: mingw-w64-x86_64 }
         - { name: Linux,                  os: ubuntu-20.04,   shell: sh,   flags: -GNinja }
diff --git a/.github/workflows/msvc.yml b/.github/workflows/msvc.yml
new file mode 100644
index 00000000000..1907bf13409
--- /dev/null
+++ b/.github/workflows/msvc.yml
@@ -0,0 +1,27 @@
+name: Build (MSVC)
+
+on: [push, pull_request]
+
+jobs:
+  Build:
+    name: ${{ matrix.platform.name }}
+    runs-on: windows-latest
+
+    strategy:
+      fail-fast: false
+      matrix:
+        platform:
+        - { name: Windows (x64),          flags: -A x64 }
+        - { name: Windows (x86),          flags: -A Win32 }
+        - { name: Windows (clang-cl x64), flags: -T ClangCL -A x64 }
+        - { name: Windows (clang-cl x86), flags: -T ClangCL -A Win32 }
+        - { name: Windows (ARM64),        flags: -A ARM64 }
+        - { name: UWP (x64),              flags: -A x64 -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION="10.0" -DSDL_TEST=OFF }
+
+    steps:
+    - uses: actions/checkout@v2
+    - name: Configure CMake
+      run: cmake -B build -DSDL_TEST=ON ${{ matrix.platform.flags }}
+    - name: Build CMake
+      run: cmake --build build/ --config Release --parallel
+
diff --git a/.github/workflows/uwp.yml b/.github/workflows/uwp.yml
deleted file mode 100644
index 8a60defb04c..00000000000
--- a/.github/workflows/uwp.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-name: Build (UWP)
-
-on: [push, pull_request]
-
-jobs:
-  Build:
-    name: UWP-x64
-    runs-on: windows-latest
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Configure
-        run: mkdir build; cd build; cmake -Ax64 -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION="10.0" -DCMAKE_BUILD_TYPE=Release ..
-      - name: Build
-        run: cd build; cmake --build .