Skip to content

Commit c2754c8

Browse files
committed
Initial commit
0 parents  commit c2754c8

12 files changed

+640
-0
lines changed

.clang-format

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
BasedOnStyle: Google
3+
AlignAfterOpenBracket: 'AlwaysBreak'
4+
AllowAllConstructorInitializersOnNextLine: 'false'
5+
AllowAllParametersOfDeclarationOnNextLine: 'false'
6+
AlignConsecutiveMacros: 'true'
7+
AllowShortCaseLabelsOnASingleLine: 'true'
8+
AllowShortFunctionsOnASingleLine: 'None'
9+
AllowShortIfStatementsOnASingleLine: 'Never'
10+
AllowShortLoopsOnASingleLine: 'false'
11+
BreakBeforeBraces: Allman
12+
BinPackArguments: 'false'
13+
BinPackParameters: 'false'
14+
Cpp11BracedListStyle: 'false'
15+
ColumnLimit: 125
16+
NamespaceIndentation: All
17+
SpaceAfterTemplateKeyword: 'false'
18+
SpaceBeforeCtorInitializerColon: 'true'
19+
SpaceBeforeInheritanceColon: 'true'
20+
SpaceBeforeParens: ControlStatements
21+
SpaceBeforeRangeBasedForLoopColon: 'true'
22+
SpaceInEmptyBlock: true
23+
Standard: 'Latest'
24+
...

.clang-tidy

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
Checks: '*,-fuchsia-*,-google-*,-zircon-*,-abseil-*,-modernize-use-trailing-return-type,-llvm-*,-llvmlibc-*'
3+
CheckOptions: [{ key: misc-non-private-member-variables-in-classes, value: IgnoreClassesWithAllMemberVariablesBeingPublic }]
4+
WarningsAsErrors: '*'
5+
HeaderFilterRegex: ''
6+
FormatStyle: none

.github/workflows/cmake.yml

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: "CMake build"
2+
3+
on:
4+
push:
5+
pull_request:
6+
workflow_dispatch:
7+
8+
defaults:
9+
run:
10+
shell: bash
11+
12+
jobs:
13+
build:
14+
name: ${{ matrix.toolchain }}
15+
runs-on: ${{ matrix.os }}
16+
strategy:
17+
fail-fast: false
18+
matrix:
19+
toolchain:
20+
- linux-gcc
21+
- macos-clang
22+
- windows-msvc
23+
- windows-mingw
24+
configuration:
25+
- Debug
26+
python-version:
27+
- 3.11
28+
include:
29+
- toolchain: linux-gcc
30+
os: ubuntu-latest
31+
compiler: gcc
32+
- toolchain: macos-clang
33+
os: macos-latest
34+
compiler: clang
35+
- toolchain: windows-msvc
36+
os: windows-latest
37+
compiler: msvc
38+
# - toolchain: windows-mingw
39+
# os: windows-latest
40+
# compiler: mingw
41+
steps:
42+
- name: Checkout repository
43+
uses: actions/checkout@v4
44+
with:
45+
fetch-depth: 5
46+
- name: Setup python environment
47+
uses: actions/setup-python@v5
48+
with:
49+
python-version: ${{ matrix.python-version }}
50+
- name: Install python packages
51+
run: |
52+
if [ "${{ matrix.os }}" == "macos-latest" ]; then
53+
echo "/Users/runner/Library/Python/${{ matrix.python-version }}/bin" >> $GITHUB_PATH
54+
fi
55+
pip install --disable-pip-version-check --user "conan>=1.62.0,<2"
56+
- name: Configure (${{ matrix.configuration }})
57+
run: |
58+
if [ "${{ matrix.compiler }}" == "msvc" ]; then
59+
cmake -S . -B build
60+
elif [ "${{ matrix.compiler }}" == "mingw" ]; then
61+
cmake -S . -B build -DCMAKE_BUILD_TYPE=${{ matrix.configuration }} -G "MinGW Makefiles"
62+
else
63+
cmake -S . -B build -DCMAKE_BUILD_TYPE=${{ matrix.configuration }}
64+
fi
65+
- name: Build with ${{ matrix.compiler }}
66+
run: |
67+
if [ "${{ matrix.compiler }}" == "msvc" ]; then
68+
cmake --build build --config ${{ matrix.configuration }}
69+
else
70+
cmake --build build -- -j8
71+
fi
72+
- name: Test
73+
run: |
74+
cd build && make test

0 commit comments

Comments
 (0)