From 016b2e77691c5578f90e35d772fea80540f2b30e Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Sun, 10 Sep 2023 20:38:51 +0800 Subject: [PATCH] CI: test with supported C++ standards (#1226) * CI: test with supported C++ standards let's test with the supported standards for better coverage. C++23 standard was just out, but the support on the toolchain is not quite ready yet. so let's leave it for a future change. Signed-off-by: Kefu Chai * CI: drop redundant Build step "Build Tests" is strictly a superset of "Build". in addition to the library, the former builds the tests also. both these steps share the same set of command line arguments. by removing "Build" step, we don't lose anything regarding the test coverage and information for further investigation if the build fails. Signed-off-by: Kefu Chai --------- Signed-off-by: Kefu Chai --- .github/workflows/build.yml | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a408a9d..ea824c9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -12,6 +12,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] + cxx_standard: [11, 17, 20] build: [static, shared] generator: ["Default Generator", "MinGW Makefiles"] exclude: @@ -23,7 +24,6 @@ jobs: generator: "MinGW Makefiles" env: YAML_BUILD_SHARED_LIBS: ${{ matrix.build == 'shared' && 'ON' || 'OFF' }} - YAML_CPP_BUILD_TESTS: 'ON' CMAKE_GENERATOR: >- ${{format(matrix.generator != 'Default Generator' && '-G "{0}"' || '', matrix.generator)}} runs-on: ${{ matrix.os }} @@ -33,16 +33,10 @@ jobs: - name: Get number of CPU cores uses: SimenB/github-actions-cpu-cores@v1 - - name: Build - shell: bash - run: | - cmake ${{ env.CMAKE_GENERATOR }} -S "${{ github.workspace }}" -B build -DYAML_BUILD_SHARED_LIBS=${{ env.YAML_BUILD_SHARED_LIBS }} - cd build && cmake --build . --parallel ${{ steps.cpu-cores.outputs.count }} - - name: Build Tests shell: bash run: | - cmake ${{ env.CMAKE_GENERATOR }} -S "${{ github.workspace }}" -B build -DYAML_BUILD_SHARED_LIBS=${{ env.YAML_BUILD_SHARED_LIBS }} -DYAML_CPP_BUILD_TESTS=${{ env.YAML_CPP_BUILD_TESTS }} + cmake ${{ env.CMAKE_GENERATOR }} -S "${{ github.workspace }}" -B build -DCMAKE_CXX_STANDARD=${{ matrix.cxx_standard }} -DYAML_BUILD_SHARED_LIBS=${{ env.YAML_BUILD_SHARED_LIBS }} -DYAML_CPP_BUILD_TESTS=ON cd build && cmake --build . --parallel ${{ steps.cpu-cores.outputs.count }} - name: Run Tests