{
"version": 6,
"cmakeMinimumRequired": {
"major": 3,
"minor": 23,
"patch": 0
},
"configurePresets": [
{
"name": "default",
"hidden": true,
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {}
},
{
"name": "Debug",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug"
}
},
{
"name": "RelWithDebInfo",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
}
},
{
"name": "Release",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release"
}
},
{
"name": "MinSizeRel",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "MinSizeRel"
}
},
{
"name": "intel-base",
"hidden": true,
"description": "Intel C++ compiler configuration",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_C_COMPILER": "icx",
"CMAKE_CXX_COMPILER": "icpx",
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
"CMAKE_POSITION_INDEPENDENT_CODE": "ON",
"CMAKE_FIND_PACKAGE_PREFER_CONFIG": "ON",
"CMAKE_PREFIX_PATH": "/opt/intel/oneapi/mkl/latest/lib/cmake;/opt/intel/oneapi/compiler/latest/lib/cmake"
},
"environment": {
"CC": "icx",
"CXX": "icpx",
"OMP_NUM_THREADS": "4",
"MKL_THREADING_LAYER": "INTEL",
"MKL_INTERFACE_LAYER": "LP64"
}
},
{
"name": "intel-debug",
"displayName": "Intel C++ (Debug + MKL + OpenMP)",
"inherits": "intel-base",
"description": "Intel C++ compiler Debug Mode",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_VERBOSE_MAKEFILE": "OFF",
"CMAKE_CXX_FLAGS_DEBUG": "-O0 -g -qopenmp -qmkl=sequential"
}
},
{
"name": "intel-release",
"displayName": "Intel C++ (Release + MKL + OpenMP)",
"inherits": "intel-base",
"description": "Intel C++ compiler Release Mode",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_INTERPROCEDURAL_OPTIMIZATION": "ON",
"CMAKE_CXX_FLAGS_RELEASE": "-O3 -xHost -qopenmp -qmkl=parallel"
}
},
{
"name": "sanitizer-base",
"hidden": true,
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
"CMAKE_C_COMPILER": "clang",
"CMAKE_CXX_COMPILER": "clang++"
}
},
{
"name": "release",
"inherits": "sanitizer-base",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release"
}
},
{
"name": "asan",
"inherits": "sanitizer-base",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
"CMAKE_C_FLAGS": "-fsanitize=address,undefined -fno-omit-frame-pointer -O1",
"CMAKE_CXX_FLAGS": "-fsanitize=address,undefined -fno-omit-frame-pointer -O1",
"CMAKE_EXE_LINKER_FLAGS": "-fsanitize=address,undefined"
}
},
{
"name": "tsan",
"inherits": "sanitizer-base",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
"CMAKE_C_FLAGS": "-fsanitize=thread -fno-omit-frame-pointer -O1",
"CMAKE_CXX_FLAGS": "-fsanitize=thread -fno-omit-frame-pointer -O1",
"CMAKE_EXE_LINKER_FLAGS": "-fsanitize=thread"
}
}
],
"buildPresets": [
{
"name": "Debug",
"configurePreset": "Debug"
},
{
"name": "RelWithDebInfo",
"configurePreset": "RelWithDebInfo"
},
{
"name": "Release",
"configurePreset": "Release"
},
{
"name": "MinSizeRel",
"configurePreset": "MinSizeRel"
},
{
"name": "intel-debug",
"configurePreset": "intel-debug"
},
{
"name": "intel-release",
"configurePreset": "intel-release"
},
{
"name": "relase",
"configurePreset": "release"
},
{
"name": "asan",
"configurePreset": "asan"
},
{
"name": "tsan",
"configurePreset": "tsan"
}
],
"testPresets": [
{
"name": "intel-debug",
"configurePreset": "intel-debug"
},
{
"name": "intel-release",
"configurePreset": "intel-release"
}
]
}