aboutsummaryrefslogtreecommitdiff
path: root/CMakePresets.json
diff options
context:
space:
mode:
Diffstat (limited to 'CMakePresets.json')
-rw-r--r--CMakePresets.json96
1 files changed, 96 insertions, 0 deletions
diff --git a/CMakePresets.json b/CMakePresets.json
new file mode 100644
index 0000000000..3bbb61afce
--- /dev/null
+++ b/CMakePresets.json
@@ -0,0 +1,96 @@
+{
+ "version": 3,
+ "cmakeMinimumRequired": {"major": 3, "minor": 21, "patch": 0},
+ "configurePresets": [
+ {
+ "name": "vs2022",
+ "displayName": "Build using 'Visual Studio 17 2022' generator and 'x64-windows' triplet",
+ "condition": {
+ "type": "equals",
+ "lhs": "${hostSystemName}",
+ "rhs": "Windows"
+ },
+ "generator": "Visual Studio 17 2022",
+ "architecture": "x64",
+ "toolchainFile": "$env{VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake",
+ "cacheVariables": {
+ "VCPKG_TARGET_TRIPLET": "x64-windows",
+ "BUILD_GUI": "ON",
+ "WITH_QRENCODE": "OFF"
+ }
+ },
+ {
+ "name": "vs2022-static",
+ "displayName": "Build using 'Visual Studio 17 2022' generator and 'x64-windows-static' triplet",
+ "condition": {
+ "type": "equals",
+ "lhs": "${hostSystemName}",
+ "rhs": "Windows"
+ },
+ "generator": "Visual Studio 17 2022",
+ "architecture": "x64",
+ "toolchainFile": "$env{VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake",
+ "cacheVariables": {
+ "VCPKG_TARGET_TRIPLET": "x64-windows-static",
+ "BUILD_GUI": "ON",
+ "WITH_QRENCODE": "OFF"
+ }
+ },
+ {
+ "name": "libfuzzer",
+ "displayName": "Build for fuzzing with libfuzzer, and sanitizers enabled",
+ "binaryDir": "${sourceDir}/build_fuzz",
+ "cacheVariables": {
+ "BUILD_FOR_FUZZING": "ON",
+ "CMAKE_C_COMPILER": "clang",
+ "CMAKE_C_FLAGS": "-ftrivial-auto-var-init=pattern",
+ "CMAKE_CXX_COMPILER": "clang++",
+ "CMAKE_CXX_FLAGS": "-ftrivial-auto-var-init=pattern",
+ "SANITIZERS": "undefined,address,fuzzer"
+ }
+ },
+ {
+ "name": "libfuzzer-nosan",
+ "displayName": "Build for fuzzing with libfuzzer, and sanitizers disabled",
+ "binaryDir": "${sourceDir}/build_fuzz_nosan",
+ "cacheVariables": {
+ "BUILD_FOR_FUZZING": "ON",
+ "CMAKE_C_COMPILER": "clang",
+ "CMAKE_CXX_COMPILER": "clang++",
+ "SANITIZERS": "fuzzer"
+ }
+ },
+ {
+ "name": "dev-mode",
+ "displayName": "Developer mode, with all features/dependencies enabled",
+ "binaryDir": "${sourceDir}/build_dev_mode",
+ "cacheVariables": {
+ "BUILD_BENCH": "ON",
+ "BUILD_CLI": "ON",
+ "BUILD_DAEMON": "ON",
+ "BUILD_FUZZ_BINARY": "ON",
+ "BUILD_GUI": "ON",
+ "BUILD_GUI_TESTS": "ON",
+ "BUILD_KERNEL_LIB": "ON",
+ "BUILD_SHARED_LIBS": "ON",
+ "BUILD_TESTING": "ON",
+ "BUILD_TESTS": "ON",
+ "BUILD_TX": "ON",
+ "BUILD_UTIL": "ON",
+ "BUILD_UTIL_CHAINSTATE": "ON",
+ "BUILD_WALLET_TOOL": "ON",
+ "ENABLE_EXTERNAL_SIGNER": "ON",
+ "ENABLE_HARDENING": "ON",
+ "ENABLE_WALLET": "ON",
+ "WARN_INCOMPATIBLE_BDB": "OFF",
+ "WITH_BDB": "ON",
+ "WITH_MINIUPNPC": "ON",
+ "WITH_MULTIPROCESS": "ON",
+ "WITH_QRENCODE": "ON",
+ "WITH_SQLITE": "ON",
+ "WITH_USDT": "ON",
+ "WITH_ZMQ": "ON"
+ }
+ }
+ ]
+}