Skip to content

Commit 033cab6

Browse files
authored
Merge pull request #2 from spotandjake/spotandjake-412
feat!: Update cmake to `4.1.2`
2 parents dbb594e + 96b5b26 commit 033cab6

11,853 files changed

Lines changed: 321667 additions & 164514 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.clang-format

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
# This configuration requires clang-format version 15 exactly.
2+
# This configuration requires clang-format version 18 exactly.
33
BasedOnStyle: Mozilla
44
AlignOperands: false
55
AllowShortFunctionsOnASingleLine: InlineOnly
@@ -16,6 +16,7 @@ BraceWrapping:
1616
BreakBeforeBraces: Custom
1717
ColumnLimit: 79
1818
IndentPPDirectives: AfterHash
19+
QualifierAlignment: Right
1920
SortUsingDeclarations: false
2021
SpaceAfterTemplateKeyword: true
2122
IncludeBlocks: Regroup

.clang-tidy

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,52 @@
22
Checks: "-*,\
33
bugprone-*,\
44
-bugprone-assignment-in-if-condition,\
5+
-bugprone-crtp-constructor-accessibility,\
56
-bugprone-easily-swappable-parameters,\
7+
-bugprone-empty-catch,\
68
-bugprone-implicit-widening-of-multiplication-result,\
9+
-bugprone-inc-dec-in-conditions,\
710
-bugprone-macro-parentheses,\
8-
-bugprone-misplaced-widening-cast,\
11+
-bugprone-multi-level-implicit-pointer-conversion,\
912
-bugprone-narrowing-conversions,\
13+
-bugprone-return-const-ref-from-parameter,\
14+
-bugprone-suspicious-stringview-data-usage,\
15+
-bugprone-switch-missing-default-case,\
1016
-bugprone-too-small-loop-variable,\
1117
-bugprone-unchecked-optional-access,\
18+
-bugprone-unused-local-non-trivial-variable,\
19+
-bugprone-unused-return-value,\
20+
-bugprone-use-after-move,\
1221
misc-*,\
1322
-misc-confusable-identifiers,\
1423
-misc-const-correctness,\
15-
-misc-no-recursion,\
24+
-misc-include-cleaner,\
1625
-misc-non-private-member-variables-in-classes,\
26+
-misc-no-recursion,\
1727
-misc-static-assert,\
1828
-misc-use-anonymous-namespace,\
29+
-misc-use-internal-linkage,\
1930
modernize-*,\
2031
-modernize-avoid-c-arrays,\
32+
-modernize-concat-nested-namespaces,\
2133
-modernize-macro-to-enum,\
2234
-modernize-return-braced-init-list,\
35+
-modernize-type-traits,\
2336
-modernize-use-emplace,\
2437
-modernize-use-nodiscard,\
2538
-modernize-use-noexcept,\
2639
-modernize-use-trailing-return-type,\
2740
-modernize-use-transparent-functors,\
2841
performance-*,\
29-
-performance-inefficient-vector-operation,\
42+
-performance-avoid-endl,\
43+
-performance-enum-size,\
44+
-performance-unnecessary-copy-initialization,\
45+
-performance-unnecessary-value-param,\
3046
readability-*,\
47+
-readability-avoid-nested-conditional-operator,\
48+
-readability-avoid-unconditional-preprocessor-if,\
3149
-readability-convert-member-functions-to-static,\
50+
-readability-enum-initial-value,\
3251
-readability-function-cognitive-complexity,\
3352
-readability-function-size,\
3453
-readability-identifier-length,\
@@ -37,12 +56,13 @@ readability-*,\
3756
-readability-inconsistent-declaration-parameter-name,\
3857
-readability-magic-numbers,\
3958
-readability-make-member-function-const,\
59+
-readability-math-missing-parentheses,\
4060
-readability-named-parameter,\
41-
-readability-redundant-declaration,\
42-
-readability-redundant-member-init,\
4361
-readability-simplify-boolean-expr,\
62+
-readability-static-accessed-through-instance,\
4463
-readability-suspicious-call-argument,\
4564
-readability-uppercase-literal-suffix,\
65+
-readability-use-std-min-max,\
4666
cmake-*,\
4767
-cmake-ostringstream-use-cmstrcat,\
4868
-cmake-string-concatenation-use-cmstrcat,\

.codespellrc

Lines changed: 56 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,59 @@ check-hidden =
44
# Disable warnings about binary files
55
quiet-level = 2
66
builtin = clear,rare,en-GB_to_en-US
7-
skip = */.git,*/build,*/Copyright.txt,*/CTestCustom.cmake.in,*/doxygen.config,*/Modules/Internal/CPack/NSIS.template.in,*/Source/CursesDialog/form/*,*/Source/kwsys/*,*/Tests/RunCMake/CPack/tests/DMG_SLA/German.*,*/Tests/RunCMake/ParseImplicitData/*.input,*/Tests/StringFileTest/test.utf8,*.pfx,*/Utilities/cm*
8-
ignore-words-list = aci,ags,ake,ans,ba,ccompiler,cconfiguration,certi,conly,dependees,dne,dum,earch,ect,filetest,fo,helpfull,hiden,isnt,keypair,nd,ned,nin,nknown,ot,pard,seh,ser,te,upto,varn,vas,wee
7+
8+
# Skip paths matching fnmatch glob patterns.
9+
skip =
10+
.git,
11+
.typos.toml,
12+
build,
13+
CONTRIBUTORS.rst,
14+
CTestCustom.cmake.in,
15+
Modules/Internal/CPack/NSIS.template.in,
16+
Source/CursesDialog/form/*,
17+
Source/kwsys/*,
18+
Tests/RunCMake/CPack/tests/DMG_SLA/German.*,
19+
Tests/RunCMake/ParseImplicitData/*.input,
20+
Tests/StringFileTest/test.utf8,
21+
Utilities/cm*,
22+
*.pfx,
23+
24+
# noqa: spellcheck off
25+
ignore-words-list =
26+
abd,
27+
aci,
28+
ags,
29+
ake,
30+
ans,
31+
ba,
32+
ccompiler,
33+
cconfiguration,
34+
certi,
35+
conly,
36+
copyin,
37+
dependees,
38+
dne,
39+
dum,
40+
earch,
41+
ect,
42+
filetest,
43+
fo,
44+
helpfull,
45+
hiden,
46+
isnt,
47+
keypair,
48+
nd,
49+
ned,
50+
nin,
51+
nknown,
52+
ot,
53+
pard,
54+
sectionin,
55+
seh,
56+
ser,
57+
te,
58+
upto,
59+
varn,
60+
vas,
61+
wee,
62+
# noqa: spellcheck on

.gitattributes

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,22 @@
11
.git* export-ignore
22
.hooks* export-ignore
3+
.clang-format export-ignore
4+
.clang-tidy export-ignore
35
.codespellrc export-ignore
46
.editorconfig export-ignore
7+
.pre-commit-config.yaml export-ignore
8+
.typos.toml export-ignore
59

610
# Custom attribute to mark sources as using our C code style.
7-
[attr]our-c-style whitespace=tab-in-indent format.clang-format=15
11+
[attr]our-c-style whitespace=tab-in-indent format.clang-format=18
812

913
# Custom attribute to mark sources as generated.
1014
# Do not perform whitespace checks. Do not format.
1115
[attr]generated whitespace=-tab-in-indent,-indent-with-non-tab -format.clang-format
1216

17+
# Custom attribute to mark files as TABs indented.
18+
[attr]tab-indent whitespace=-tab-in-indent
19+
1320
bootstrap eol=lf
1421
configure eol=lf
1522
*.[1-9] eol=lf
@@ -19,9 +26,28 @@ configure eol=lf
1926

2027
*.bat eol=crlf
2128
*.bat.in eol=crlf
29+
*.cmd eol=crlf
2230
*.sln eol=crlf
2331
*.vcproj eol=crlf
2432

33+
Makefile tab-indent
34+
Makefile.in tab-indent
35+
NSIS.template.in tab-indent
36+
coverage.xml.in tab-indent
37+
*.F tab-indent
38+
*.f tab-indent
39+
*.pbxproj.in tab-indent
40+
*.plist.in tab-indent
41+
*.plist tab-indent
42+
*.sln tab-indent
43+
*.s tab-indent
44+
*.vcproj tab-indent
45+
*.vcproj.in tab-indent
46+
*.vfproj.in tab-indent
47+
*.xib tab-indent
48+
*.make tab-indent
49+
.hooks-config tab-indent
50+
2551
*.pfx -text
2652
*.png -text
2753
*.png.in -text
@@ -31,8 +57,10 @@ configure eol=lf
3157
*.cpp our-c-style
3258
*.cu our-c-style
3359
*.cxx our-c-style
60+
*.H our-c-style
3461
*.h our-c-style
3562
*.hh our-c-style
63+
*.hip our-c-style
3664
*.hpp our-c-style
3765
*.hxx our-c-style
3866
*.notcu our-c-style

.github/workflows/esy.yml

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
name: Esy
2+
on:
3+
- push
4+
- pull_request
5+
6+
jobs:
7+
build:
8+
name: Build and test
9+
runs-on: ${{ matrix.os }}
10+
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
os: [ubuntu-latest, macos-latest, windows-latest]
15+
16+
steps:
17+
- name: Setup node.js
18+
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
19+
with:
20+
node-version: "22"
21+
check-latest: true
22+
23+
# Install `esy` to build the project
24+
# It also adds `shx` globally for cross-platform shell commands
25+
- name: Setup environment
26+
run: |
27+
npm i -g esy@0.8.0
28+
npm i -g shx
29+
30+
- name: Checkout project
31+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
32+
with:
33+
submodules: "recursive"
34+
35+
- name: Install local dependencies
36+
run: |
37+
esy install
38+
39+
- name: Esy cache
40+
id: esy-cache
41+
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
42+
with:
43+
path: _export
44+
key: ${{ runner.os }}-esy-${{ hashFiles('esy.lock/index.json') }}
45+
46+
- name: Import esy cache
47+
if: steps.esy-cache.outputs.cache-hit == 'true'
48+
run: |
49+
esy import-dependencies _export
50+
shx rm -rf _export
51+
52+
# Build the project in release to make sure deps are specified correctly
53+
- name: Build release dependencies
54+
if: steps.esy-cache.outputs.cache-hit != 'true'
55+
run: |
56+
esy build-dependencies --release
57+
58+
- name: Build project in release
59+
run: |
60+
esy build --release
61+
62+
# Then build in non-release so we can test
63+
- name: Build dependencies
64+
if: steps.esy-cache.outputs.cache-hit != 'true'
65+
run: |
66+
esy build-dependencies
67+
68+
- name: Build project
69+
run: |
70+
esy build
71+
72+
# Re-export dependencies if anything has changed or if it is the first time
73+
- name: Build esy cache
74+
if: steps.esy-cache.outputs.cache-hit != 'true'
75+
run: |
76+
esy export-dependencies

.github/workflows/test-build.yml

Lines changed: 0 additions & 30 deletions
This file was deleted.

.gitignore

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
1+
# Help tools that honor '.gitignore' (redundant for Git itself).
2+
/.git
3+
14
/CMakeUserPresets.json
25

36
# Common build directories
47
/build*/
58

9+
# CI jobs that run in symlinked trees produce these artifacts.
10+
/real_work/
11+
/work
12+
613
# MacOS Finder files.
714
.DS_Store
815

@@ -29,6 +36,10 @@
2936
# Visual Studio build directory
3037
/out/
3138

39+
# clang-tidy output
40+
/clang-tidy-fixes.patch
41+
42+
# esy
3243
Bootstrap.cmk
3344
_esy
3445
node_modules

0 commit comments

Comments
 (0)