diff --git a/.github/workflows/msys2-clang.yml b/.github/workflows/msys2-clang.yml index d483d91c1..1457bb262 100644 --- a/.github/workflows/msys2-clang.yml +++ b/.github/workflows/msys2-clang.yml @@ -20,6 +20,9 @@ jobs: - msystem: "MINGW64" install: mingw-w64-x86_64-libxml2 mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja mingw-w64-x86_64-clang type: Debug + - msystem: "MINGW64" + install: mingw-w64-x86_64-libxml2 mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja mingw-w64-x86_64-clang + type: RelWithDebInfo env: CMAKE_GENERATOR: Ninja diff --git a/.github/workflows/msys2.yml b/.github/workflows/msys2.yml index 1c6d0e614..3372a6994 100644 --- a/.github/workflows/msys2.yml +++ b/.github/workflows/msys2.yml @@ -22,6 +22,9 @@ jobs: - msystem: "MINGW64" install: mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja mingw-w64-x86_64-gcc type: Debug + - msystem: "MINGW64" + install: mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja mingw-w64-x86_64-gcc + type: RelWithDebInfo env: CMAKE_GENERATOR: Ninja diff --git a/.github/workflows/ubuntu24.yml b/.github/workflows/ubuntu24.yml index 742f680ce..163550400 100644 --- a/.github/workflows/ubuntu24.yml +++ b/.github/workflows/ubuntu24.yml @@ -12,10 +12,11 @@ jobs: shared: [ON, OFF] cxx: [g++-13, clang++-16] sanitizer: [ON, OFF] + build_type: [RelWithDebInfo, Debug, Release] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 - name: Prepare - run: cmake -DSIMDJSON_DEVELOPER_MODE=ON -DSIMDJSON_SANITIZE=${{matrix.sanitizer}} -DBUILD_SHARED_LIBS=${{matrix.shared}} -B build + run: cmake -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DSIMDJSON_DEVELOPER_MODE=ON -DSIMDJSON_SANITIZE=${{matrix.sanitizer}} -DBUILD_SHARED_LIBS=${{matrix.shared}} -B build env: CXX: ${{matrix.cxx}} - name: Build diff --git a/.github/workflows/vs17-ci.yml b/.github/workflows/vs17-ci.yml index 1cdd6cdc5..72eb96795 100644 --- a/.github/workflows/vs17-ci.yml +++ b/.github/workflows/vs17-ci.yml @@ -13,10 +13,12 @@ jobs: fail-fast: false matrix: include: - - {gen: Visual Studio 17 2022, arch: Win32, shared: ON} - - {gen: Visual Studio 17 2022, arch: Win32, shared: OFF} - - {gen: Visual Studio 17 2022, arch: x64, shared: ON} - - {gen: Visual Studio 17 2022, arch: x64, shared: OFF} + - {gen: Visual Studio 17 2022, arch: Win32, shared: ON, build_type: Release} + - {gen: Visual Studio 17 2022, arch: Win32, shared: OFF, build_type: Release} + - {gen: Visual Studio 17 2022, arch: x64, shared: ON, build_type: Release} + - {gen: Visual Studio 17 2022, arch: x64, shared: OFF, build_type: Debug} + - {gen: Visual Studio 17 2022, arch: x64, shared: OFF, build_type: Release} + - {gen: Visual Studio 17 2022, arch: x64, shared: OFF, build_type: RelWithDebInfo} steps: - name: checkout uses: actions/checkout@v4 @@ -24,21 +26,15 @@ jobs: run: | cmake -G "${{matrix.gen}}" -A ${{matrix.arch}} -DSIMDJSON_DEVELOPER_MODE=ON -DSIMDJSON_COMPETITION=OFF -DBUILD_SHARED_LIBS=${{matrix.shared}} -B build - name: Build Debug - run: cmake --build build --config Debug --verbose - - name: Build Release - run: cmake --build build --config Release --verbose - - name: Run Release tests + run: cmake --build build --config ${{build_type}} --verbose + - name: Run tests run: | cd build - ctest -C Release -LE explicitonly --output-on-failure - - name: Run Debug tests - run: | - cd build - ctest -C Debug -LE explicitonly --output-on-failure + ctest -C ${{build_type}} -LE explicitonly --output-on-failure - name: Install run: | - cmake --install build --config Release + cmake --install build --config ${{build_type}} - name: Test Installation run: | cmake -G "${{matrix.gen}}" -A ${{matrix.arch}} -B build_install_test tests/installation_tests/find - cmake --build build_install_test --config Release \ No newline at end of file + cmake --build build_install_test --config ${{build_type}} \ No newline at end of file diff --git a/.github/workflows/vs17-clang-ci.yml b/.github/workflows/vs17-clang-ci.yml index 818ea5e37..af3ab02a0 100644 --- a/.github/workflows/vs17-clang-ci.yml +++ b/.github/workflows/vs17-clang-ci.yml @@ -13,29 +13,25 @@ jobs: fail-fast: false matrix: include: - - {gen: Visual Studio 17 2022, arch: x64} + - {gen: Visual Studio 17 2022, arch: x64, build_type: Debug} + - {gen: Visual Studio 17 2022, arch: x64, build_type: Release} + - {gen: Visual Studio 17 2022, arch: x64, build_type: RelWithDebInfo} steps: - name: checkout uses: actions/checkout@v4 - name: Configure run: | cmake -G "${{matrix.gen}}" -A ${{matrix.arch}} -T ClangCL -DSIMDJSON_DEVELOPER_MODE=ON -DSIMDJSON_COMPETITION=OFF -B build - - name: Build Debug - run: cmake --build build --config Debug --verbose - - name: Build Release - run: cmake --build build --config Release --verbose - - name: Run Release tests + - name: Build + run: cmake --build build --config ${{matrix.build_type}} --verbose + - name: Run tests run: | cd build - ctest -C Release -LE explicitonly --output-on-failure - - name: Run Debug tests - run: | - cd build - ctest -C Debug -LE explicitonly --output-on-failure + ctest -C ${{matrix.build_type}} -LE explicitonly --output-on-failure - name: Install run: | - cmake --install build --config Release + cmake --install build --config ${{matrix.build_type}} - name: Test Installation run: | cmake -G "${{matrix.gen}}" -A ${{matrix.arch}} -B build_install_test tests/installation_tests/find - cmake --build build_install_test --config Release \ No newline at end of file + cmake --build build_install_test --config ${{matrix.build_type}} \ No newline at end of file