aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/ryml/.github/workflows/clang_tidy.yml
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2025-11-07 14:49:13 +0100
committerGitHub Enterprise <[email protected]>2025-11-07 14:49:13 +0100
commit24e43a913f29ac3b314354e8ce5175f135bcc64f (patch)
treeca442937ceeb63461012b33a4576e9835099f106 /thirdparty/ryml/.github/workflows/clang_tidy.yml
parentget oplog attachments (#622) (diff)
downloadzen-24e43a913f29ac3b314354e8ce5175f135bcc64f.tar.xz
zen-24e43a913f29ac3b314354e8ce5175f135bcc64f.zip
switch to xmake for package management (#611)
This change removes our dependency on vcpkg for package management, in favour of bringing some code in-tree in the `thirdparty` folder as well as using the xmake build-in package management feature. For the latter, all the package definitions are maintained in the zen repo itself, in the `repo` folder. It should now also be easier to build the project as it will no longer depend on having the right version of vcpkg installed, which has been a common problem for new people coming in to the codebase. Now you should only need xmake to build. * Bumps xmake requirement on github runners to 2.9.9 to resolve an issue where xmake on Windows invokes cmake with `v144` toolchain which does not exist * BLAKE3 is now in-tree at `thirdparty/blake3` * cpr is now in-tree at `thirdparty/cpr` * cxxopts is now in-tree at `thirdparty/cxxopts` * fmt is now in-tree at `thirdparty/fmt` * robin-map is now in-tree at `thirdparty/robin-map` * ryml is now in-tree at `thirdparty/ryml` * sol2 is now in-tree at `thirdparty/sol2` * spdlog is now in-tree at `thirdparty/spdlog` * utfcpp is now in-tree at `thirdparty/utfcpp` * xmake package repo definitions is in `repo` * implemented support for sanitizers. ASAN is supported on windows, TSAN, UBSAN, MSAN etc are supported on Linux/MacOS though I have not yet tested it extensively on MacOS * the zencore encryption implementation also now supports using mbedTLS which is used on MacOS, though for now we still use openssl on Linux * crashpad * bumps libcurl to 8.11.0 (from 8.8.0) which should address a rare build upload bug
Diffstat (limited to 'thirdparty/ryml/.github/workflows/clang_tidy.yml')
-rw-r--r--thirdparty/ryml/.github/workflows/clang_tidy.yml72
1 files changed, 72 insertions, 0 deletions
diff --git a/thirdparty/ryml/.github/workflows/clang_tidy.yml b/thirdparty/ryml/.github/workflows/clang_tidy.yml
new file mode 100644
index 000000000..5c9a7d872
--- /dev/null
+++ b/thirdparty/ryml/.github/workflows/clang_tidy.yml
@@ -0,0 +1,72 @@
+name: clang_tidy
+
+defaults:
+ run:
+ # Use a bash shell so we can use the same syntax for environment variable
+ # access regardless of the host operating system
+ shell: bash -e -x {0}
+
+on:
+ # https://github.community/t/how-to-trigger-an-action-on-push-or-pull-request-but-not-both/16662
+ workflow_dispatch:
+ push:
+ branches:
+ - master
+ pull_request:
+ branches:
+ - master
+
+env:
+ PROJ_PFX_TARGET: ryml-
+ PROJ_PFX_CMAKE: RYML_
+ CMAKE_FLAGS: -DRYML_TEST_SUITE=ON
+ NUM_JOBS_BUILD: # 4
+
+
+jobs:
+ clang_tidy:
+ name: ${{matrix.cxx}}/tidy/c++${{matrix.std}}/${{matrix.bt}}
+ if: |
+ (!contains(github.event.head_commit.message, 'skip all')) ||
+ (!contains(github.event.head_commit.message, 'skip clang')) ||
+ contains(github.event.head_commit.message, 'only clang')
+ continue-on-error: false
+ runs-on: ${{matrix.os}}
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ # clang tidy takes a long time, so don't do multiple bits/linktypes
+ - {std: 11, cxx: clang++-10, bt: Debug , lint: clang-tidy, bitlinks: shared64, os: ubuntu-20.04}
+ - {std: 11, cxx: clang++-10, bt: Debug , lint: clang-tidy, bitlinks: static64, os: ubuntu-20.04}
+ - {std: 11, cxx: clang++-10, bt: Debug , lint: clang-tidy, bitlinks: shared32, os: ubuntu-20.04}
+ - {std: 11, cxx: clang++-10, bt: Debug , lint: clang-tidy, bitlinks: static32, os: ubuntu-20.04}
+ - {std: 11, cxx: clang++-10, bt: ReleaseWithDebInfo, lint: clang-tidy, bitlinks: shared64, os: ubuntu-20.04}
+ - {std: 11, cxx: clang++-10, bt: ReleaseWithDebInfo, lint: clang-tidy, bitlinks: static64, os: ubuntu-20.04}
+ - {std: 11, cxx: clang++-10, bt: ReleaseWithDebInfo, lint: clang-tidy, bitlinks: shared32, os: ubuntu-20.04}
+ - {std: 11, cxx: clang++-10, bt: ReleaseWithDebInfo, lint: clang-tidy, bitlinks: static32, os: ubuntu-20.04}
+ env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
+ steps:
+ - {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
+ - {name: install requirements, run: source .github/reqs.sh && c4_install_test_requirements $OS}
+ - {name: show info, run: source .github/setenv.sh && c4_show_info}
+ - name: shared64-configure---------------------------------------------------
+ run: source .github/setenv.sh && c4_cfg_test shared64
+ - {name: shared64-build, run: source .github/setenv.sh && c4_build_test shared64}
+ - {name: shared64-run, run: source .github/setenv.sh && c4_run_test shared64}
+ - {name: shared64-pack, run: source .github/setenv.sh && c4_package shared64}
+ - name: static64-configure---------------------------------------------------
+ run: source .github/setenv.sh && c4_cfg_test static64
+ - {name: static64-build, run: source .github/setenv.sh && c4_build_test static64}
+ - {name: static64-run, run: source .github/setenv.sh && c4_run_test static64}
+ - {name: static64-pack, run: source .github/setenv.sh && c4_package static64}
+ - name: static32-configure---------------------------------------------------
+ run: source .github/setenv.sh && c4_cfg_test static32
+ - {name: static32-build, run: source .github/setenv.sh && c4_build_test static32}
+ - {name: static32-run, run: source .github/setenv.sh && c4_run_test static32}
+ - {name: static32-pack, run: source .github/setenv.sh && c4_package static32}
+ - name: shared32-configure---------------------------------------------------
+ run: source .github/setenv.sh && c4_cfg_test shared32
+ - {name: shared32-build, run: source .github/setenv.sh && c4_build_test shared32}
+ - {name: shared32-run, run: source .github/setenv.sh && c4_run_test shared32}
+ - {name: shared32-pack, run: source .github/setenv.sh && c4_package shared32}