Skip to content

Commit 45e4b8e

Browse files
committed
CI: Add Clang on Windows tests
CI: Remove Linux Clang CI actions/runner-images#8659
1 parent e5eca64 commit 45e4b8e

File tree

1 file changed

+40
-34
lines changed

1 file changed

+40
-34
lines changed

.github/workflows/build.yml

Lines changed: 40 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -16,39 +16,45 @@ jobs:
1616
fail-fast: false
1717
matrix:
1818
confs:
19-
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x86, mode: debug, test: true, }
20-
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x86, mode: releasedbg, test: true, }
21-
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x64, mode: debug, test: true, }
22-
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x64, mode: releasedbg, test: true, }
23-
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: arm64, mode: debug, test: false, }
24-
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: arm64, mode: releasedbg, test: false, }
25-
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: i686, mode: debug, test: true, msystem: mingw32 }
26-
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: i686, mode: releasedbg, test: true, msystem: mingw32 }
27-
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: x86_64, mode: debug, test: true, msystem: mingw64 }
28-
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: x86_64, mode: releasedbg, test: true, msystem: mingw64 }
29-
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, }
30-
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, config: --asan=y }
31-
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, config: --lsan=y }
32-
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, config: --tsan=y }
33-
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: releasedbg, test: true, }
34-
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: debug, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
35-
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: releasedbg, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
36-
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: debug, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
37-
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: releasedbg, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
38-
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: debug, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
39-
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: releasedbg, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
40-
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: debug, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
41-
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: releasedbg, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
42-
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: x86_64, mode: debug, test: true, }
43-
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: x86_64, mode: releasedbg, test: true, }
44-
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: arm64, mode: debug, test: false, }
45-
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: arm64, mode: releasedbg, test: false, }
46-
- { name: iOS, runner: macos-latest, shell: bash, plat: iphoneos, arch: arm64, mode: debug, test: false, }
47-
- { name: iOS, runner: macos-latest, shell: bash, plat: iphoneos, arch: arm64, mode: releasedbg, test: false, }
48-
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm32, mode: debug, test: false, }
49-
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm32, mode: releasedbg, test: false, }
50-
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm64, mode: debug, test: false, }
51-
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm64, mode: releasedbg, test: false, }
19+
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x86, mode: debug, test: true, }
20+
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x86, mode: releasedbg, test: true, }
21+
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x64, mode: debug, test: true, }
22+
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: x64, mode: releasedbg, test: true, }
23+
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: arm64, mode: debug, test: false, }
24+
- { name: Windows, runner: windows-latest, shell: pwsh, plat: windows, arch: arm64, mode: releasedbg, test: false, }
25+
- { name: Windows (Clang), runner: windows-latest, shell: pwsh, plat: windows, arch: x86, mode: debug, test: true, config: --toolchain=clang, cache_key: -clang }
26+
- { name: Windows (Clang), runner: windows-latest, shell: pwsh, plat: windows, arch: x86, mode: releasedbg, test: true, config: --toolchain=clang, cache_key: -clang }
27+
- { name: Windows (Clang), runner: windows-latest, shell: pwsh, plat: windows, arch: x64, mode: debug, test: true, config: --toolchain=clang, cache_key: -clang }
28+
- { name: Windows (Clang), runner: windows-latest, shell: pwsh, plat: windows, arch: x64, mode: releasedbg, test: true, config: --toolchain=clang, cache_key: -clang }
29+
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: i686, mode: debug, test: true, msystem: mingw32 }
30+
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: i686, mode: releasedbg, test: true, msystem: mingw32 }
31+
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: x86_64, mode: debug, test: true, msystem: mingw64 }
32+
- { name: MinGW, runner: windows-latest, shell: 'msys2 {0}', plat: mingw, arch: x86_64, mode: releasedbg, test: true, msystem: mingw64 }
33+
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, }
34+
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, config: --asan=y, cache_key: -asan }
35+
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, config: --lsan=y }
36+
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: debug, test: true, config: --tsan=y }
37+
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: x86_64, mode: releasedbg, test: true, }
38+
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: arm64-v8a, mode: debug, test: true, }
39+
- { name: Linux, runner: ubuntu-latest, shell: bash, plat: linux, arch: arm64-v8a, mode: releasedbg, test: true, }
40+
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: debug, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
41+
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: releasedbg, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
42+
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: debug, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
43+
- { name: Android NDK 25c, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: releasedbg, test: false, ndk_ver: 25c, ndk_sdkver: 28 }
44+
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: debug, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
45+
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: armeabi-v7a, mode: releasedbg, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
46+
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: debug, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
47+
- { name: Android NDK 26b, runner: ubuntu-latest, shell: bash, plat: android, arch: arm64-v8a, mode: releasedbg, test: false, ndk_ver: 26b, ndk_sdkver: 28 }
48+
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: x86_64, mode: debug, test: true, }
49+
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: x86_64, mode: releasedbg, test: true, }
50+
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: arm64, mode: debug, test: false, }
51+
- { name: macOS, runner: macos-latest, shell: bash, plat: macosx, arch: arm64, mode: releasedbg, test: false, }
52+
- { name: iOS, runner: macos-latest, shell: bash, plat: iphoneos, arch: arm64, mode: debug, test: false, }
53+
- { name: iOS, runner: macos-latest, shell: bash, plat: iphoneos, arch: arm64, mode: releasedbg, test: false, }
54+
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm32, mode: debug, test: false, }
55+
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm32, mode: releasedbg, test: false, }
56+
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm64, mode: debug, test: false, }
57+
- { name: Emscripten, runner: ubuntu-latest, shell: bash, plat: wasm, arch: wasm64, mode: releasedbg, test: false, }
5258
cxxver: [cxx17, cxx20, cxxlatest]
5359

5460
defaults:
@@ -122,7 +128,7 @@ jobs:
122128
uses: actions/cache/restore@v4
123129
with:
124130
path: ${{ env.XMAKE_GLOBALDIR }}/.xmake/packages
125-
key: ${{ matrix.confs.plat }}-${{ matrix.confs.arch }}-${{ matrix.confs.mode }}-${{ steps.dep_hash.outputs.hash }}-W${{ steps.cache_key.outputs.key }}
131+
key: ${{ matrix.confs.plat }}-${{ matrix.confs.arch }}-${{ matrix.confs.mode }}-${{ steps.dep_hash.outputs.hash }}${{ matrix.confs.cache_key }}-W${{ steps.cache_key.outputs.key }}
126132

127133
# Setup compilation mode and install project dependencies
128134
- name: Configure xmake and install dependencies

0 commit comments

Comments
 (0)