CMakeLists.txt: every lane's add_subdirectory() is now guarded by EXISTS on that lane's CMakeLists.txt, so main configures no matter which lanes have merged and a lane lights up its targets on merge with no edit here. Dependencies are found at top level (gated on the consuming lane) so a missing -dev package fails fast with a clear name. Warnings via add_compile_options (survives the presets' CMAKE_CXX_FLAGS override); VELOX_WERROR escape hatch. Verified end to end: `cmake --preset dev` against a merged lane/core builds libveloxcore + tests, `ctest --preset dev` green. .clang-format: Google base, 4-space indent, 100 cols, right-aligned pointers. .clang-tidy: small high-signal set (bugprone/performance/ concurrency/portability + selected modernize/readability). .editorconfig mirrors both. .gitignore: build-*/ , CMakeUserPresets.json, profiling and editor droppings. Co-Authored-By: Claude Sonnet 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01HPPSGhiArbvQgwC2DNiURS
46 lines
1.3 KiB
YAML
46 lines
1.3 KiB
YAML
# Velox clang-tidy config. Owned by lane PKG/QA. Runs on every PR (non-fatal advisory in
|
||
# M0–M1, a required check from M2). Keep the enabled set small and high-signal; add checks
|
||
# when they catch a real bug, not for completeness.
|
||
---
|
||
Checks: >
|
||
-*,
|
||
bugprone-*,
|
||
cert-err34-c,
|
||
cert-err58-cpp,
|
||
concurrency-*,
|
||
cppcoreguidelines-pro-type-member-init,
|
||
cppcoreguidelines-slicing,
|
||
cppcoreguidelines-virtual-class-destructor,
|
||
misc-definitions-in-headers,
|
||
misc-misplaced-const,
|
||
misc-unused-using-decls,
|
||
modernize-use-nullptr,
|
||
modernize-use-override,
|
||
modernize-use-using,
|
||
modernize-use-emplace,
|
||
modernize-loop-convert,
|
||
modernize-make-unique,
|
||
modernize-make-shared,
|
||
performance-*,
|
||
portability-*,
|
||
readability-container-size-empty,
|
||
readability-duplicate-include,
|
||
readability-misleading-indentation,
|
||
readability-redundant-*,
|
||
readability-simplify-boolean-expr,
|
||
readability-static-definition-in-anonymous-namespace,
|
||
-bugprone-easily-swappable-parameters,
|
||
-bugprone-narrowing-conversions,
|
||
-performance-avoid-endl,
|
||
-readability-redundant-access-specifiers
|
||
|
||
WarningsAsErrors: ''
|
||
HeaderFilterRegex: '(core|daemon|cli|nmhost|tools)/.*\.(hpp|h)$'
|
||
FormatStyle: file
|
||
|
||
CheckOptions:
|
||
- key: performance-move-const-arg.CheckTriviallyCopyableMove
|
||
value: 'false'
|
||
- key: bugprone-argument-comment.StrictMode
|
||
value: 'true'
|