displayLayout and Rendering TUI library |
git clone git://git.dimitrijedobrota.com/display.git |
Log | Files | Refs | README | LICENSE | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING |
CMakePresets.json (5477B)
0 {
1 "version": 2,
2 "cmakeMinimumRequired": {
3 "major": 3,
4 "minor": 14,
5 "patch": 0
6 },
7 "configurePresets": [
8 {
9 "name": "cmake-pedantic",
10 "hidden": true,
11 "warnings": {
12 "dev": true,
13 "deprecated": true,
14 "uninitialized": true,
15 "unusedCli": true,
16 "systemVars": false
17 },
18 "errors": {
19 "dev": true,
20 "deprecated": true
21 }
22 },
23 {
24 "name": "dev-mode",
25 "hidden": true,
26 "inherits": "cmake-pedantic",
27 "cacheVariables": {
28 "display_DEVELOPER_MODE": "ON"
29 }
30 },
31 {
32 "name": "cppcheck",
33 "hidden": true,
34 "cacheVariables": {
35 "CMAKE_CXX_CPPCHECK": "cppcheck;--inline-suppr"
36 }
37 },
38 {
39 "name": "clang-tidy",
40 "hidden": true,
41 "cacheVariables": {
42 "CMAKE_CXX_CLANG_TIDY": "clang-tidy;--header-filter=^${sourceDir}/"
43 }
44 },
45 {
46 "name": "ci-std",
47 "description": "This preset makes sure the project actually builds with at least the specified standard",
48 "hidden": true,
49 "cacheVariables": {
50 "CMAKE_CXX_EXTENSIONS": "OFF",
51 "CMAKE_CXX_STANDARD": "20",
52 "CMAKE_CXX_STANDARD_REQUIRED": "ON"
53 }
54 },
55 {
56 "name": "flags-gcc-clang",
57 "description": "These flags are supported by both GCC and Clang",
58 "hidden": true,
59 "cacheVariables": {
60 "CMAKE_CXX_FLAGS": "-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS=1 -fstack-protector-strong -fcf-protection=full -fstack-clash-protection -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -Wcast-qual -Wformat=2 -Wundef -Werror=float-equal -Wshadow -Wcast-align -Wunused -Wnull-dereference -Wdouble-promotion -Wimplicit-fallthrough -Wextra-semi -Woverloaded-virtual -Wnon-virtual-dtor -Wold-style-cast",
61 "CMAKE_EXE_LINKER_FLAGS": "-Wl,--allow-shlib-undefined,--as-needed,-z,noexecstack,-z,relro,-z,now,-z,nodlopen",
62 "CMAKE_SHARED_LINKER_FLAGS": "-Wl,--allow-shlib-undefined,--as-needed,-z,noexecstack,-z,relro,-z,now,-z,nodlopen"
63 }
64 },
65 {
66 "name": "flags-appleclang",
67 "hidden": true,
68 "cacheVariables": {
69 "CMAKE_CXX_FLAGS": "-fstack-protector-strong -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -Wcast-qual -Wformat=2 -Wundef -Werror=float-equal -Wshadow -Wcast-align -Wunused -Wnull-dereference -Wdouble-promotion -Wimplicit-fallthrough -Wextra-semi -Woverloaded-virtual -Wnon-virtual-dtor -Wold-style-cast"
70 }
71 },
72 {
73 "name": "flags-msvc",
74 "description": "Note that all the flags after /W4 are required for MSVC to conform to the language standard",
75 "hidden": true,
76 "cacheVariables": {
77 "CMAKE_CXX_FLAGS": "/sdl /guard:cf /utf-8 /diagnostics:caret /w14165 /w44242 /w44254 /w44263 /w34265 /w34287 /w44296 /w44365 /w44388 /w44464 /w14545 /w14546 /w14547 /w14549 /w14555 /w34619 /w34640 /w24826 /w14905 /w14906 /w14928 /w45038 /W4 /permissive- /volatile:iso /Zc:inline /Zc:preprocessor /Zc:enumTypes /Zc:lambda /Zc:__cplusplus /Zc:externConstexpr /Zc:throwingNew /EHsc",
78 "CMAKE_EXE_LINKER_FLAGS": "/machine:x64 /guard:cf",
79 "CMAKE_SHARED_LINKER_FLAGS": "/machine:x64 /guard:cf"
80 }
81 },
82 {
83 "name": "ci-linux",
84 "inherits": ["flags-gcc-clang", "ci-std"],
85 "generator": "Unix Makefiles",
86 "hidden": true,
87 "cacheVariables": {
88 "CMAKE_BUILD_TYPE": "Release"
89 }
90 },
91 {
92 "name": "ci-darwin",
93 "inherits": ["flags-appleclang", "ci-std"],
94 "generator": "Xcode",
95 "hidden": true
96 },
97 {
98 "name": "ci-win64",
99 "inherits": ["flags-msvc", "ci-std"],
100 "generator": "Visual Studio 17 2022",
101 "architecture": "x64",
102 "hidden": true
103 },
104 {
105 "name": "coverage-linux",
106 "binaryDir": "${sourceDir}/build/coverage",
107 "inherits": "ci-linux",
108 "hidden": true,
109 "cacheVariables": {
110 "ENABLE_COVERAGE": "ON",
111 "CMAKE_BUILD_TYPE": "Coverage",
112 "CMAKE_CXX_FLAGS_COVERAGE": "-Og -g --coverage -fkeep-inline-functions -fkeep-static-functions",
113 "CMAKE_EXE_LINKER_FLAGS_COVERAGE": "--coverage",
114 "CMAKE_SHARED_LINKER_FLAGS_COVERAGE": "--coverage"
115 }
116 },
117 {
118 "name": "ci-coverage",
119 "inherits": ["coverage-linux", "dev-mode"],
120 "cacheVariables": {
121 "COVERAGE_HTML_COMMAND": ""
122 }
123 },
124 {
125 "name": "ci-sanitize",
126 "binaryDir": "${sourceDir}/build/sanitize",
127 "inherits": ["ci-linux", "dev-mode"],
128 "cacheVariables": {
129 "CMAKE_BUILD_TYPE": "Sanitize",
130 "CMAKE_CXX_FLAGS_SANITIZE": "-U_FORTIFY_SOURCE -O2 -g -fsanitize=address,undefined -fno-omit-frame-pointer -fno-common"
131 }
132 },
133 {
134 "name": "ci-build",
135 "binaryDir": "${sourceDir}/build",
136 "hidden": true
137 },
138 {
139 "name": "ci-multi-config",
140 "description": "Speed up multi-config generators by generating only one configuration instead of the defaults",
141 "hidden": true,
142 "cacheVariables": {
143 "CMAKE_CONFIGURATION_TYPES": "Release"
144 }
145 },
146 {
147 "name": "ci-macos",
148 "inherits": ["ci-build", "ci-darwin", "dev-mode", "ci-multi-config"]
149 },
150 {
151 "name": "ci-ubuntu",
152 "inherits": ["ci-build", "ci-linux", "clang-tidy", "cppcheck", "dev-mode"]
153 },
154 {
155 "name": "ci-windows",
156 "inherits": ["ci-build", "ci-win64", "dev-mode", "ci-multi-config"]
157 }
158 ]
159 }