Refactor Visual Studio C.I.

This commit is contained in:
christophe 2023-12-26 00:01:23 +01:00
parent 8923d2241c
commit 0e871450a6
2 changed files with 111 additions and 8 deletions

View File

@ -7,13 +7,11 @@ on:
types: [opened, edited, reopened] types: [opened, edited, reopened]
jobs: jobs:
windows-latest: windows-vc-latest:
runs-on: windows-latest runs-on: windows-latest
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
arch: [x64, x86]
toolset: [14.3, 15.9, 16.8]
std: [98, 11, 14, 17, 20] std: [98, 11, 14, 17, 20]
config: [Debug, Release] config: [Debug, Release]
@ -29,9 +27,75 @@ jobs:
run: | run: |
ls ${{ github.workspace }} ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}." - run: echo "🍏 This job's status is ${{ job.status }}."
- uses: TheMrMilchmann/setup-msvc-dev@v3 - name: Checkout
uses: actions/checkout@v4.1.1
- name: Configure Project
uses: threeal/cmake-action@v1.3.0
- name: CMake Version
run: cmake --version
- run: cmake -S. -B ./build_auto
- run: cmake -S. -B ./build_pure_std -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_pure_ext -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake -S. -B ./build_sse2_std -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_sse2_ext -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake -S. -B ./build_avx1_std -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_avx1_ext -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake -S. -B ./build_avx2_std -DGLM_TEST_ENABLE_SIMD_AVX2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_avx2_ext -DGLM_TEST_ENABLE_SIMD_AVX2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake --build ./build_auto --config ${{matrix.config}}
- run: cmake --build ./build_pure_std --config ${{matrix.config}}
- run: cmake --build ./build_pure_ext --config ${{matrix.config}}
- run: cmake --build ./build_sse2_std --config ${{matrix.config}}
- run: cmake --build ./build_sse2_ext --config ${{matrix.config}}
- run: cmake --build ./build_avx1_std --config ${{matrix.config}}
- run: cmake --build ./build_avx1_ext --config ${{matrix.config}}
- run: cmake --build ./build_avx2_std --config ${{matrix.config}}
- run: cmake --build ./build_avx2_ext --config ${{matrix.config}}
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_auto
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx1_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx1_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext
windows-vc-old:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
arch: [x64, x86]
toolset: [14.0, 14.1, 14.2]
std: [98]
config: [Debug, Release]
include:
- std: 11
- toolset: 14.2
include:
- std: 17
- toolset: 14.2
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
- name: Checkout
uses: actions/checkout@v4.1.1
- name: Configure Project
uses: threeal/cmake-action@v1.3.0
- name: Setup Visual Studio
uses: TheMrMilchmann/setup-msvc-dev@v3
with: with:
arch: x64 arch: ${{matrix.toolset}}
toolset: ${{matrix.toolset}} toolset: ${{matrix.toolset}}
- name: CMake Version - name: CMake Version
run: cmake --version run: cmake --version
@ -62,7 +126,46 @@ jobs:
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx1_ext - run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx1_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std - run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext - run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext
ubuntu-latest: windows-vc-arm:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
arch: [amd64_arm64]
toolset: [14.3]
std: [98, 20]
config: [Debug, Release]
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
- name: Checkout
uses: actions/checkout@v4.1.1
- name: Configure Project
uses: threeal/cmake-action@v1.3.0
- name: Setup Visual Studio
uses: TheMrMilchmann/setup-msvc-dev@v3
with:
arch: ${{matrix.toolset}}
toolset: ${{matrix.toolset}}
- name: CMake Version
run: cmake --version
- run: cmake -S. -B ./build_auto
- run: cmake -S. -B ./build_pure_std -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_pure_ext -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake --build ./build_auto --config ${{matrix.config}}
- run: cmake --build ./build_pure_std --config ${{matrix.config}}
- run: cmake --build ./build_pure_ext --config ${{matrix.config}}
ubuntu-gcc:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
fail-fast: false fail-fast: false
@ -118,7 +221,7 @@ jobs:
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx1_ext - run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx1_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std - run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext - run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext
macos-latest: macos-clang:
runs-on: macos-latest runs-on: macos-latest
strategy: strategy:
fail-fast: false fail-fast: false

View File

@ -115,7 +115,7 @@
# define GLM_LANG_PLATFORM 0 # define GLM_LANG_PLATFORM 0
# endif # endif
# if __cplusplus > 201703L || GLM_LANG_PLATFORM > 201703L # if __cplusplus >= 202002L || GLM_LANG_PLATFORM >= 202002L
# define GLM_LANG (GLM_LANG_CXX20 | GLM_LANG_EXT) # define GLM_LANG (GLM_LANG_CXX20 | GLM_LANG_EXT)
# elif __cplusplus == 201703L || GLM_LANG_PLATFORM == 201703L # elif __cplusplus == 201703L || GLM_LANG_PLATFORM == 201703L
# define GLM_LANG (GLM_LANG_CXX17 | GLM_LANG_EXT) # define GLM_LANG (GLM_LANG_CXX17 | GLM_LANG_EXT)