{ "version": 3, "cmakeMinimumRequired": { "major": 3, "minor": 13, "patch": 0 }, "configurePresets": [ { "name": "windows-default", "displayName": "Windows", "description": "Sets Ninja generator, and compilers. Configures vcpkg in manifest mode.", "generator": "Ninja", "binaryDir": "${sourceDir}/out/build/${presetName}", "hidden": true, "cacheVariables": { "VCPKG_MANIFEST_MODE": true }, "vendor": { "microsoft.com/VisualStudioSettings/CMake/1.0": { "hostOS": [ "Windows" ] } }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Windows" } }, { "name": "msvc-windows-default", "displayName": "MSVC Windows", "description": "Sets MSVC generator, and compilers. Configures vcpkg in manifest mode.", "generator": "Visual Studio 17 2022", "binaryDir": "${sourceDir}/out/build/${presetName}", "hidden": true, "cacheVariables": { "VCPKG_MANIFEST_MODE": true }, "vendor": { "microsoft.com/VisualStudioSettings/CMake/1.0": { "hostOS": [ "Windows" ] } }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Windows" } }, { "name": "clang-windows-default", "displayName": "Windows", "description": "Sets Ninja generator, and compilers. Configures vcpkg in manifest mode using clang", "generator": "Ninja", "binaryDir": "${sourceDir}/out/build/${presetName}", "hidden": true, "cacheVariables": { "VCPKG_MANIFEST_MODE": true, "CMAKE_CXX_COMPILER": "clang++.exe", "CMAKE_C_COMPILER": "clang.exe" }, "vendor": { "microsoft.com/VisualStudioSettings/CMake/1.0": { "hostOS": [ "Windows" ] } }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Windows" } }, { "name": "gcc-windows-default", "displayName": "Windows", "description": "Sets Ninja generator, and compilers. Configures vcpkg in manifest mode using gcc", "generator": "Ninja", "binaryDir": "${sourceDir}/out/build/${presetName}", "hidden": true, "cacheVariables": { "VCPKG_MANIFEST_MODE": true, "CMAKE_CXX_COMPILER": "g++.exe", "CMAKE_C_COMPILER": "gcc.exe" }, "vendor": { "microsoft.com/VisualStudioSettings/CMake/1.0": { "hostOS": [ "Windows" ] } }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Windows" } }, { "name": "x64-static", "displayName": "Windows x64 Static", "description": "Windows Default, x64 architecture, static CRT.", "inherits": "windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x64-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": { "value": "x64", "strategy": "external" } }, { "name": "x86-static", "displayName": "Windows x86 Static", "description": "Windows Default, x86 architecture.", "inherits": "windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x86-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": { "value": "x86", "strategy": "external" } }, { "name": "x86-msvc-static", "displayName": "Windows x86 MSVC Static", "description": "Windows Default, MSVC, x86 architecture.", "inherits": "msvc-windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x86-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": "win32" }, { "name": "x64-msvc-static", "displayName": "Windows x64 MSVC Static", "description": "Windows Default, MSVC, x64 architecture.", "inherits": "msvc-windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x64-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": { "value": "x64", "strategy": "external" } }, { "name": "x86-clang-static", "displayName": "Windows x86 clang Static", "description": "Windows Default, clang, x86 architecture.", "inherits": "gcc-windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x86-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": "win32" }, { "name": "x64-clang-static", "displayName": "Windows x64 CLANG Static", "description": "Windows Default, clang, x64 architecture.", "inherits": "clang-windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x64-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": { "value": "x64", "strategy": "external" } }, { "name": "x86-gcc-static", "displayName": "Windows x86 gccStatic", "description": "Windows Default, gcc, x86 architecture.", "inherits": "gcc-windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x86-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": "win32" }, { "name": "x64-gcc-static", "displayName": "Windows x64 GCC Static", "description": "Windows Default, gcc, x64 architecture.", "inherits": "gcc-windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x64-windows-static", "MSVC_USE_STATIC_CRT": true }, "architecture": { "value": "x64", "strategy": "external" } }, { "name": "x64", "displayName": "Windows x64", "description": "x64 architecture.", "inherits": "windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x64-windows", "BUILD_SHARED_LIBS": true }, "architecture": { "value": "x64", "strategy": "external" } }, { "name": "x86", "displayName": "Windows x86", "description": "Ninja Generator, x86 architecture.", "inherits": "windows-default", "hidden": true, "cacheVariables": { "VCPKG_TARGET_TRIPLET": "x86-windows", "BUILD_SHARED_LIBS": true }, "architecture": { "value": "x86", "strategy": "external" } }, { "name": "debug-build", "displayName": "Debug Build", "description": "Debug Build (Hidden)", "hidden": true, "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug" } }, { "name": "release-build", "displayName": "Release Build", "description": "Release Build (Hidden)", "hidden": true, "cacheVariables": { "CMAKE_BUILD_TYPE": "RelWithDebInfo" } }, { "name": "enable-tests", "displayName": "Enable Tests", "description": "Enable Tests (Hidden)", "hidden": true, "cacheVariables": { "BUILD_TESTING": true, "ENABLE_PROXY_TESTS": false } }, { "name": "enable-samples", "displayName": "Enable Samples", "description": "Enable Samples (Hidden)", "hidden": true, "cacheVariables": { "BUILD_SAMPLES": true } }, { "name": "enable-perf", "displayName": "Enable Perf", "description": "Enable Perf (Hidden)", "hidden": true, "cacheVariables": { "BUILD_PERFORMANCE_TESTS": true } }, { "name": "winhttp-transport", "displayName": "Enable WinHTTP Transport", "description": "Enable WinHTTP Transport (Hidden)", "hidden": true, "cacheVariables": { "BUILD_TRANSPORT_WINHTTP": true }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Windows" } }, { "name": "curl-transport", "displayName": "Enable CURL Transport", "description": "Enable CURL Transport (Hidden)", "hidden": true, "cacheVariables": { "BUILD_TRANSPORT_CURL": true } }, { "name": "enable-address-sanitizer", "displayName": "Enable Address Sanitizer", "description": "Enable Address Sanitizer (Hidden). Note: ASAN can be extremely disruptive, when enabling ASAN, make sure you run your application under the debugger.", "hidden": true, "cacheVariables": { "ENABLE_ADDRESS_SANITIZER": true } }, { "name": "x86-static-debug-tests", "displayName": "x86 Debug With Tests, static", "description": "Windows x86 Debug build with Tests configured", "inherits": [ "x86-static", "debug-build", "enable-tests" ] }, { "name": "x86-static-release-tests", "displayName": "x86 Release With Tests, static, libcurl", "description": "Windows x86 Release build with Tests configured", "inherits": [ "x86-static", "release-build", "enable-tests" ], "cacheVariables": { "RUN_LONG_UNIT_TESTS": true } }, { "name": "x86-static-release", "displayName": "x86 Release, static", "description": "Windows x86 Release build", "inherits": [ "x86-static", "release-build" ] }, { "name": "x64-debug-tests", "displayName": "x64 Debug With Tests", "description": "Windows x64 Debug build with Tests configured", "inherits": [ "x64", "debug-build", "enable-tests" ] }, { "name": "x86-msvc-static-debug-tests", "displayName": "x86 MSVC Debug With Tests, static", "description": "Windows x86 MSVC Debug build with Tests configured", "inherits": [ "x86-msvc-static", "debug-build", "enable-tests" ] }, { "name": "x64-static-debug-tests", "displayName": "x64 Debug With Tests, static", "description": "Windows x64 Debug build with Tests configured", "inherits": [ "x64-static", "debug-build", "enable-tests" ] }, { "name": "x64-static-debug-tests-curl", "displayName": "x64 Debug With Tests, static, libcurl", "description": "Windows x64 Debug build with Tests configured", "inherits": [ "x64-static", "debug-build", "enable-tests", "curl-transport" ] }, { "name": "x64-static-debug-tests-winhttp", "displayName": "x64 Debug With Tests, static, winhttp", "description": "Windows x64 Debug build with Tests configured", "inherits": [ "x64-static", "debug-build", "enable-tests", "winhttp-transport" ] }, { "name": "x64-static-debug-tests-OpenSSL111", "displayName": "x64 Debug With Tests, static, OpenSSL 1.1.1, libcurl", "description": "Windows x64 Debug build with Tests configured on OpenSSL 1.1.1", "inherits": [ "x64-static", "debug-build", "enable-tests" ], "cacheVariables": { "VCPKG_OVERLAY_PORTS": "${sourceDir}\\vcpkg-custom-ports" } }, { "name": "x86-static-release-tests-curl", "displayName": "x86 Release With Tests, static, libcurl", "description": "Windows x86 Release build with Tests configured", "inherits": [ "x86-static", "release-build", "enable-tests", "curl-transport" ] }, { "name": "x86-release-tests", "displayName": "x86 Release With Tests (Note: Does not link because it sets BUILD_TRANSPORT_CUSTOM)", "inherits": [ "x86", "release-build", "enable-tests", "curl-transport", "winhttp-transport" ], "cacheVariables": { "BUILD_TRANSPORT_CUSTOM": true } }, { "name": "x64-release-tests", "displayName": "x64 Release With Tests (Note: Does not link because it sets BUILD_TRANSPORT_CUSTOM)", "inherits": [ "x64", "release-build", "enable-tests", "curl-transport", "winhttp-transport" ], "cacheVariables": { "BUILD_TRANSPORT_CUSTOM": true } }, { "name": "x64-static-debug-perftests", "displayName": "x64 Debug static With Perf Tests and samples, libcurl+winhttp", "inherits": [ "x64-static", "debug-build", "enable-tests", "enable-samples", "enable-perf", "winhttp-transport", "curl-transport" ] }, { "name": "x64-static-release-perftests-asan", "displayName": "x64 Release static With Perf Tests and samples, plus ASAN", "inherits": [ "x64-static", "release-build", "enable-tests", "enable-samples", "enable-perf", "enable-address-sanitizer" ], "cacheVariables": { "DISABLE_AZURE_CORE_OPENTELEMETRY": true } }, { "name": "x86-msvc-static-debug-perftests", "displayName": "x86 MSVC Debug static With Perf Tests and samples", "inherits": [ "x86-msvc-static", "debug-build", "enable-tests", "enable-perf", "enable-samples", "curl-transport", "winhttp-transport" ] }, { "name": "x64-msvc-static-debug-perftests", "displayName": "x64 MSVC Debug static With Perf Tests and samples", "inherits": [ "x64-msvc-static", "debug-build", "enable-tests", "enable-perf", "enable-samples", "curl-transport", "winhttp-transport" ] }, { "name": "x64-msvc-static-release-perftests", "displayName": "x64 MSVC Release static With Perf Tests and samples", "inherits": [ "x64-msvc-static", "release-build", "enable-tests", "enable-perf", "enable-samples", "curl-transport", "winhttp-transport" ] }, { "name": "x64-static-release-perftests", "displayName": "x64 Release With Perf Tests, static", "inherits": [ "x64-static", "release-build", "enable-tests", "enable-perf" ] }, { "name": "x64-static-debug-perftests-clang", "displayName": "x64 Debug static With Perf Tests and samples+clang, libcurl+winhttp", "inherits": [ "x64-clang-static", "debug-build", "enable-tests", "enable-samples", "enable-perf", "winhttp-transport", "curl-transport" ] }, { "name": "linux-basic-gcc9", "displayName": "Linux GCC 9", "description": "Using compilers: C = /usr/bin/gcc-9, CXX = /usr/bin/g++-9", "binaryDir": "${sourceDir}/out/build/${presetName}", "generator": "Ninja", "hidden": true, "cacheVariables": { "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}", "CMAKE_C_COMPILER": "/usr/bin/gcc-9", "CMAKE_CXX_COMPILER": "/usr/bin/g++-9" }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Linux" } }, { "name": "linux-basic-gcc11", "displayName": "Linux GCC 11", "description": "Using compilers: C = /usr/bin/gcc-11, CXX = /usr/bin/g++-11", "binaryDir": "${sourceDir}/out/build/${presetName}", "generator": "Ninja", "cacheVariables": { "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}", "CMAKE_C_COMPILER": "/usr/bin/gcc-11", "CMAKE_CXX_COMPILER": "/usr/bin/g++-11" }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Linux" } }, { "name": "linux-basic-clang-11", "displayName": "Linux clang-11", "description": "Using compilers: C = /usr/bin/clang-11, CXX = /usr/bin/clang++-11", "binaryDir": "${sourceDir}/out/build/${presetName}", "generator": "Ninja", "hidden": true, "cacheVariables": { "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}", "CMAKE_C_COMPILER": "/usr/bin/clang-11", "CMAKE_CXX_COMPILER": "/usr/bin/clang++-11" }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Linux" } }, { "name": "linux-basic-clang-13", "displayName": "Linux clang-13", "description": "Using compilers: C = /usr/bin/clang-13, CXX = /usr/bin/clang++-13", "binaryDir": "${sourceDir}/out/build/${presetName}", "generator": "Ninja", "hidden": true, "cacheVariables": { "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}", "CMAKE_C_COMPILER": "/usr/bin/clang-13", "CMAKE_CXX_COMPILER": "/usr/bin/clang++-13" }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Linux" } }, { "name": "linux-basic-g++", "displayName": "Linux G++", "description": "Using compilers: C = /usr/bin/gcc, CXX = /usr/bin/g++", "binaryDir": "${sourceDir}/out/build/${presetName}", "generator": "Ninja", "hidden": true, "cacheVariables": { "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}", "CMAKE_C_COMPILER": "/usr/bin/gcc", "CMAKE_CXX_COMPILER": "/usr/bin/g++" }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Linux" } }, { "name": "linux-basic-g++-11", "displayName": "Linux G++ 11", "description": "Using compilers: C = /usr/bin/gcc-11, CXX = /usr/bin/g++-11", "binaryDir": "${sourceDir}/out/build/${presetName}", "generator": "Ninja", "hidden": true, "cacheVariables": { "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}", "CMAKE_C_COMPILER": "/usr/bin/gcc-11", "CMAKE_CXX_COMPILER": "/usr/bin/g++-11" }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Linux" } }, { "name": "linux-gcc9-debug", "displayName": "Linux GCC 9 Debug", "inherits": [ "linux-basic-gcc9", "debug-build" ] }, { "name": "linux-gcc9-debug-tests", "inherits": [ "linux-basic-gcc9", "debug-build", "enable-tests" ], "displayName": "Linux GCC 9 Debug+Tests" }, { "name": "linux-gcc11-debug", "displayName": "Linux GCC 11 Debug", "inherits": [ "linux-basic-gcc11", "debug-build" ] }, { "name": "linux-gcc11-debug-tests", "inherits": [ "linux-basic-gcc11", "debug-build", "enable-tests" ], "displayName": "Linux GCC 11 Debug+Tests" }, { "name": "linux-clang-11-debug", "displayName": "Linux clang 11 Debug", "inherits": [ "linux-basic-clang-11", "debug-build" ] }, { "name": "linux-clang-11-debug-tests", "displayName": "Linux clang 11 Debug+tests", "inherits": [ "linux-basic-clang-11", "debug-build", "enable-tests" ] }, { "name": "linux-clang-13-debug", "inherits": [ "linux-basic-clang-13", "debug-build" ], "displayName": "Linux clang 13 Debug" }, { "name": "linux-clang-13-debug-tests", "inherits": [ "linux-basic-clang-13", "debug-build", "enable-tests" ], "displayName": "Linux clang 13 Debug+Tests" }, { "name": "linux-g++-debug", "displayName": "Linux c++ Debug", "inherits": [ "linux-basic-g++", "debug-build" ] }, { "name": "linux-g++-debug-tests", "inherits": [ "linux-basic-g++", "debug-build", "enable-tests" ], "displayName": "Linux g++, Debug+Tests" }, { "name": "g++-debug-asan-tests", "inherits": [ "linux-g++-debug-tests", "enable-tests", "enable-address-sanitizer" ], "displayName": "Linux g++, ASAN+Debug+Tests" }, { "name": "linux-g++-debug-tests-samples", "inherits": [ "linux-basic-g++", "debug-build", "enable-tests", "enable-samples" ], "displayName": "Linux c++ Debug+Tests, samples" }, { "name": "linux-g++-11-debug", "displayName": "Linux g++-11 Debug", "inherits": [ "linux-basic-g++-11", "debug-build" ] }, { "name": "linux-g++-11-debug-tests", "inherits": [ "linux-basic-g++-11", "debug-build", "enable-tests" ], "displayName": "Linux g++-11 Debug+Tests" }, { "name": "linux-g++-11-debug-tests-samples", "inherits": [ "linux-basic-g++-11", "debug-build", "enable-tests", "enable-samples" ], "displayName": "Linux c++ Debug+Tests, samples" }, { "name": "generate-doxygen", "displayName": "zz-Generate Doxygen", "inherits": "x64-static", "cacheVariables": { "BUILD_DOCUMENTATION": true } } ] }