Repository navigation
Expand file tree
/
Copy pathCMakePresets.json
More file actions
92 lines (92 loc) · 3.73 KB
/
Copy pathCMakePresets.json
File metadata and controls
92 lines (92 loc) · 3.73 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
{
"version": 3,
"cmakeMinimumRequired": {
"major": 3,
"minor": 31,
"patch": 0
},
"configurePresets": [
{
"name": "ninja",
"displayName": "Ninja Multi-Config",
"description": "Fast cross-platform build (Windows and Linux). Compiles all CUDA translation units in parallel (file-level) via the Ninja Multi-Config generator, unlike the Visual Studio generator which builds whole library projects one after another. Requires Ninja and the CUDA toolchain (nvcc) on PATH; on Windows it must additionally be run from an MSVC environment (e.g. via build-windows-ninja.bat).",
"generator": "Ninja Multi-Config",
"binaryDir": "${sourceDir}/build-ninja",
"toolchainFile": "${sourceDir}/external/vcpkg/scripts/buildsystems/vcpkg.cmake"
},
{
"name": "ninja-agent",
"displayName": "Ninja Multi-Config (automated builds)",
"description": "Same as the 'ninja' preset, but with its own binary directory. An IDE that opens this folder configures the 'ninja' preset into build-ninja and caches its model of that tree (Visual Studio does so under .vs); a command line or agent build into the same directory invalidates that cache and the next build inside the IDE fails until the cache is deleted. Automated builds therefore use this preset -- build-windows-ninja.bat selects it when CLAUDECODE is set or when 'agent' is passed.",
"inherits": "ninja",
"binaryDir": "${sourceDir}/build-agent"
},
{
"name": "ninja-hip",
"displayName": "Ninja Multi-Config (HIP / AMD)",
"description": "Same as the 'ninja' preset, but builds the GPU engine for AMD GPUs with ROCm/HIP instead of CUDA. Uses a separate binary directory so a CUDA build in build-ninja stays intact. Requires a ROCm/HIP installation; without an explicit -DCMAKE_HIP_ARCHITECTURES the target architecture is auto-detected from the GPUs of the host.",
"inherits": "ninja",
"binaryDir": "${sourceDir}/build-ninja-hip",
"cacheVariables": {
"USE_HIP": "ON"
}
},
{
"name": "ninja-hip-agent",
"displayName": "Ninja Multi-Config (HIP / AMD, automated builds)",
"description": "The 'ninja-hip' preset with its own binary directory, for the same reason as 'ninja-agent': it keeps automated builds out of the tree an IDE has configured.",
"inherits": "ninja-hip",
"binaryDir": "${sourceDir}/build-agent-hip"
}
],
"buildPresets": [
{
"name": "ninja-release",
"displayName": "Ninja - Release",
"configurePreset": "ninja",
"configuration": "Release"
},
{
"name": "ninja-debug",
"displayName": "Ninja - Debug",
"configurePreset": "ninja",
"configuration": "Debug"
},
{
"name": "ninja-agent-release",
"displayName": "Ninja (automated) - Release",
"configurePreset": "ninja-agent",
"configuration": "Release"
},
{
"name": "ninja-agent-debug",
"displayName": "Ninja (automated) - Debug",
"configurePreset": "ninja-agent",
"configuration": "Debug"
},
{
"name": "ninja-hip-release",
"displayName": "Ninja (HIP / AMD) - Release",
"configurePreset": "ninja-hip",
"configuration": "Release"
},
{
"name": "ninja-hip-debug",
"displayName": "Ninja (HIP / AMD) - Debug",
"configurePreset": "ninja-hip",
"configuration": "Debug"
},
{
"name": "ninja-hip-agent-release",
"displayName": "Ninja (HIP / AMD, automated) - Release",
"configurePreset": "ninja-hip-agent",
"configuration": "Release"
},
{
"name": "ninja-hip-agent-debug",
"displayName": "Ninja (HIP / AMD, automated) - Debug",
"configurePreset": "ninja-hip-agent",
"configuration": "Debug"
}
]
}