174 lines
5 KiB
JSON
174 lines
5 KiB
JSON
{
|
|
"version": 2,
|
|
"cmakeMinimumRequired": {
|
|
"major": 3,
|
|
"minor": 16,
|
|
"patch": 0
|
|
},
|
|
"configurePresets": [
|
|
{
|
|
"name": "base",
|
|
"description": "Sets generator, build and install directory, vcpkg",
|
|
"hidden": true,
|
|
"binaryDir": "${sourceDir}/build/${presetName}",
|
|
"cacheVariables": {
|
|
"CMAKE_INSTALL_PREFIX": "${sourceDir}/build/install/${presetName}"
|
|
},
|
|
"environment": {
|
|
"VCPKG_FEATURE_FLAGS": "manifests,versions,binarycaching,registries"
|
|
}
|
|
},
|
|
{
|
|
"name": "x64-windows",
|
|
"description": "Sets x64 arch, compilers, build type",
|
|
"generator": "Ninja",
|
|
"inherits": "base",
|
|
"architecture": {
|
|
"value": "x64",
|
|
"strategy": "external"
|
|
},
|
|
"toolset": {
|
|
"value": "host=x64",
|
|
"strategy": "external"
|
|
},
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"CMAKE_CXX_COMPILER": "cl"
|
|
},
|
|
"vendor": {
|
|
"microsoft.com/VisualStudioSettings/CMake/1.0": {
|
|
"hostOS": [
|
|
"Windows"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-gcc",
|
|
"description": "Compile On linux with GCC",
|
|
"inherits": "base",
|
|
"generator": "Ninja",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"CMAKE_CXX_COMPILER": "g++"
|
|
},
|
|
"vendor": {
|
|
"microsoft.com/VisualStudioSettings/CMake/1.0": {
|
|
"hostOS": [
|
|
"Linux"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-clang",
|
|
"description": "Compile On linux with GCC",
|
|
"inherits": "base",
|
|
"generator": "Ninja",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"CMAKE_CXX_COMPILER": "clang++"
|
|
},
|
|
"vendor": {
|
|
"microsoft.com/VisualStudioSettings/CMake/1.0": {
|
|
"hostOS": [
|
|
"Linux"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "osx",
|
|
"generator": "Ninja",
|
|
"description": "Compile on osx",
|
|
"inherits": "base",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"CMAKE_CXX_COMPILER": "clang++"
|
|
},
|
|
"vendor": {
|
|
"microsoft.com/VisualStudioSettings/CMake/1.0": {
|
|
"hostOS": [
|
|
"macOS"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"buildPresets": [
|
|
{
|
|
"name": "core-build",
|
|
"description": "Inherits environment from base configurePreset",
|
|
"configurePreset": "base",
|
|
"hidden": true,
|
|
"inheritConfigureEnvironment": true
|
|
},
|
|
{
|
|
"name": "windows-build",
|
|
"description": "Clean before build (--clean-first)",
|
|
"configurePreset": "x64-windows",
|
|
"inherits": "core-build"
|
|
},
|
|
{
|
|
"name": "linux-gcc-build",
|
|
"configurePreset": "linux-gcc",
|
|
"inherits": "core-build"
|
|
},
|
|
{
|
|
"name": "linux-clang-build",
|
|
"configurePreset": "linux-clang",
|
|
"inherits": "core-build"
|
|
},
|
|
{
|
|
"name": "osx-build",
|
|
"configurePreset": "osx",
|
|
"inherits": "core-build"
|
|
}
|
|
],
|
|
"testPresets": [
|
|
{
|
|
"name": "core-tests",
|
|
"description": "Enable output on failure",
|
|
"configurePreset": "base",
|
|
"hidden": false,
|
|
"output": {
|
|
"outputOnFailure": true
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-tests",
|
|
"description": "Run tests on windows",
|
|
"configurePreset": "x64-windows",
|
|
"inherits": [
|
|
"core-tests"
|
|
]
|
|
},
|
|
{
|
|
"name": "linux-test-gcc",
|
|
"description": "Run tests on linux (GCC)",
|
|
"configurePreset": "linux-gcc",
|
|
"displayName": "linux-test",
|
|
"inherits": [
|
|
"core-tests"
|
|
]
|
|
},
|
|
{
|
|
"name": "linux-test-clang",
|
|
"description": "Run tests on linux (Clang)",
|
|
"configurePreset": "linux-clang",
|
|
"displayName": "linux-test",
|
|
"inherits": [
|
|
"core-tests"
|
|
]
|
|
},
|
|
{
|
|
"name": "OSX test",
|
|
"description": "Run tests on Mac",
|
|
"configurePreset": "osx",
|
|
"inherits": [
|
|
"core-tests"
|
|
]
|
|
}
|
|
]
|
|
}
|