CMake project structure with ymir_core, ymir_naval, and ymir_adapters static library targets. Catch2 and nlohmann/json via FetchContent; SUNDIALS and CGAL probed as optional system deps (required from M1/M2). Smoke tests pass on macOS ARM64. Docker multi-stage image for Linux x86_64. GitHub Actions CI matrix: Linux x86_64, macOS ARM64, Windows x86_64. Code quality tooling: .clang-format, .clang-tidy, Doxyfile. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
33 lines
620 B
YAML
33 lines
620 B
YAML
---
|
|
BasedOnStyle: LLVM
|
|
Language: Cpp
|
|
Standard: c++17
|
|
|
|
IndentWidth: 4
|
|
ColumnLimit: 100
|
|
TabWidth: 4
|
|
UseTab: Never
|
|
|
|
BreakBeforeBraces: Allman
|
|
AllowShortFunctionsOnASingleLine: Inline
|
|
AllowShortIfStatementsOnASingleLine: Never
|
|
AllowShortLoopsOnASingleLine: false
|
|
|
|
SortIncludes: true
|
|
IncludeBlocks: Regroup
|
|
IncludeCategories:
|
|
- Regex: '^<ymir/'
|
|
Priority: 1
|
|
- Regex: '^<catch2/'
|
|
Priority: 2
|
|
- Regex: '^<'
|
|
Priority: 3
|
|
- Regex: '.*'
|
|
Priority: 4
|
|
|
|
PointerAlignment: Left
|
|
ReferenceAlignment: Left
|
|
SpaceBeforeParens: ControlStatements
|
|
SpaceAfterCStyleCast: false
|
|
SpacesInContainerLiterals: false
|