{ "version": 4, "cmakeMinimumRequired": { "major": 3, "minor": 23, "patch": 0 }, "include": [ "../Common/CMakePresets.json" ], "configurePresets": [ { "name": "linux-default", "displayName": "Linux", "description": "Linux default configuration", "binaryDir": "${sourceDir}/build/linux", "inherits": [ "linux-ninja", "linux-unity", "linux-non-monolithic" ] }, { "name": "linux-mono-default", "displayName": "Linux Monolithic with Unity and Ninja", "description": "Configures Linux to build the Monolithic permutation using Ninja with Unity builds", "binaryDir": "${sourceDir}/build/linux_mono", "inherits": [ "linux-ninja", "linux-unity", "linux-monolithic" ] }, { "name": "linux-clang-default", "displayName": "Linux Clang with Ninja and unity", "description": "Configure Linux using the Ninja generator and clang compiler in non-monolithic", "binaryDir": "${sourceDir}/build/linux_ninja_clang", "inherits": [ "linux-ninja", "linux-clang", "linux-non-monolithic" ] }, { "name": "linux-gcc-default", "displayName": "Linux GCC with Ninja and unity", "description": "Configure Linux using the Ninja generator and gcc compiler in non-monolithic", "binaryDir": "${sourceDir}/build/linux_ninja_gcc", "inherits": [ "linux-ninja", "linux-gcc", "linux-non-monolithic" ] }, { "name": "linux-unity", "displayName": "Linux Unity", "description": "Linux build which uses unity files", "binaryDir": "${sourceDir}/build/linux_unity", "inherits": [ "unity", "host-linux" ] }, { "name": "linux-no-unity", "displayName": "Linux without Unity", "description": "Linux build which uses unity files", "binaryDir": "${sourceDir}/build/linux_no_unity", "inherits": [ "no-unity", "host-linux" ] }, { "name": "linux-non-monolithic", "displayName": "Linux Non-monolithic", "description": "Default configuration for non-monolithic builds", "binaryDir": "${sourceDir}/build/linux_non_mono", "inherits": [ "non-monolithic", "host-linux" ] }, { "name": "linux-monolithic", "displayName": "Linux Monolithic", "description": "Default configuration for monolithic builds", "binaryDir": "${sourceDir}/build/linux_mono", "inherits": [ "monolithic", "host-linux" ] }, { "name": "linux-ninja", "displayName": "Linux Ninja", "description": "Configure Linux using with the Ninja generator", "binaryDir": "${sourceDir}/build/linux_ninja", "inherits": [ "ninja-multi-config", "host-linux" ] }, { "name": "linux-ninja-unity", "displayName": "Linux Ninja Unity", "description": "Configure Linux with the Ninja generator + Unity Builds", "binaryDir": "${sourceDir}/build/linux_ninja_unity", "inherits": [ "ninja-multi-config", "linux-unity" ] }, { "name": "linux-ninja-no-unity", "displayName": "Linux Ninja without Unity", "description": "Configure Linux with the Ninja Generator without unity builds", "binaryDir": "${sourceDir}/build/linux_ninja_no_unity", "inherits": [ "ninja-multi-config", "linux-no-unity" ] }, { "name": "linux-makefiles", "displayName": "Linux Unix Makefiles", "description": "Configure Linux using with the Unix Makefiles generator", "binaryDir": "${sourceDir}/build/linux_makefiles", "inherits": [ "makefiles", "host-linux" ] }, { "name": "linux-makefiles-unity", "displayName": "Linux Unix Makefiles Unity", "description": "Configure Linux with the Unix Makefiles generator + Unity Builds", "binaryDir": "${sourceDir}/build/linux_makefiles_unity", "inherits": [ "makefiles", "linux-unity" ] }, { "name": "linux-makefiles-no-unity", "displayName": "Linux Unix Makefiles without Unity", "description": "Configure Linux with the Unix Makefiles Generator without unity builds", "binaryDir": "${sourceDir}/build/linux_makefiles_no_unity", "inherits": [ "makefiles", "linux-no-unity" ] }, { "name": "linux-clang", "displayName": "Linux Clang", "description": "Default Linux configuration using the clang compiler", "binaryDir": "${sourceDir}/build/linux_clang", "inherits":[ "linux-clang-unity" ] }, { "name": "linux-clang-unity", "displayName": "Linux Clang + Unity", "description": "Configure Linux with the clang compiler + Unity Builds", "binaryDir": "${sourceDir}/build/linux_clang_unity", "cacheVariables": { "CMAKE_C_COMPILER": { "type": "STRING", "value": "clang" }, "CMAKE_CXX_COMPILER": { "type": "STRING", "value": "clang++" } }, "inherits": [ "linux-unity" ] }, { "name": "linux-clang-no-unity", "displayName": "Linux Clang without Unity", "description": "Configure Linux with the clang compiler without unity builds", "binaryDir": "${sourceDir}/build/linux_clang_no_unity", "cacheVariables": { "CMAKE_C_COMPILER": { "type": "STRING", "value": "clang" }, "CMAKE_CXX_COMPILER": { "type": "STRING", "value": "clang++" } }, "inherits": [ "linux-no-unity" ] }, { "name": "linux-gcc", "displayName": "Linux GCC", "description": "Default Linux configuration using the gcc compiler", "binaryDir": "${sourceDir}/build/linux_gcc", "inherits":[ "linux-gcc-unity" ] }, { "name": "linux-gcc-unity", "displayName": "Linux GCC + Unity", "description": "Configure Linux with the GCC compiler + Unity Builds", "binaryDir": "${sourceDir}/build/linux_gcc_unity", "cacheVariables": { "CMAKE_C_COMPILER": { "type": "STRING", "value": "gcc" }, "CMAKE_CXX_COMPILER": { "type": "STRING", "value": "g++" } }, "inherits": [ "linux-unity" ] }, { "name": "linux-gcc-no-unity", "displayName": "Linux GCC without Unity", "description": "Configure Linux with the GCC compiler without unity builds", "binaryDir": "${sourceDir}/build/linux_gcc_no_unity", "cacheVariables": { "CMAKE_C_COMPILER": { "type": "STRING", "value": "gcc" }, "CMAKE_CXX_COMPILER": { "type": "STRING", "value": "g++" } }, "inherits": [ "linux-no-unity" ] } ], "buildPresets": [ { "name": "linux-default", "displayName": "Linux", "description": "Builds all targets for Linux", "configurePreset": "linux-default", "inherits":[ "host-linux" ] }, { "name": "linux-install", "displayName": "Linux install", "description": "Builds the \"install\" target for Linux, which builds all target and runs the CMake --install step", "configurePreset": "linux-default", "inherits": [ "install", "host-linux" ] }, { "name": "linux-mono-default", "displayName": "Linux Monolithic", "description": "Builds all targets for Linux in the monolithic permutation", "configurePreset": "linux-mono-default", "inherits":[ "host-linux" ] }, { "name": "linux-mono-install", "displayName": "Linux Monolithic install", "description": "Builds the \"install\" target for linux monolithic permutation, which builds all target and runs the CMake --install step", "configurePreset": "linux-mono-default", "inherits": [ "install", "host-linux" ] }, { "name": "linux-clang-default", "displayName": "Linux", "description": "Builds all targets for Linux using the Clang compiler", "configurePreset": "linux-clang-default", "inherits":[ "host-linux" ] }, { "name": "linux-gcc-default", "displayName": "Linux", "description": "Builds all targets for Linux using the GCC compiler", "configurePreset": "linux-gcc-default", "inherits":[ "host-linux" ] }, { "name": "linux-editor", "displayName": "Linux Editor", "description": "Builds the Editor application for Linux", "configurePreset": "linux-default", "inherits": [ "editor", "host-linux" ] }, { "name": "linux-assetprocessor", "displayName": "Linux AssetProcessor", "description": "Builds the AssetProcessor application for Linux", "configurePreset": "linux-default", "inherits": [ "assetprocessor", "host-linux" ] }, { "name": "linux-test", "displayName": "Linux CTest", "description": "Builds the TEST_SUITE_smoke/TEST_SUITE_main custom targets for Linux", "configurePreset": "linux-default", "inherits": [ "test-default", "host-linux" ] } ], "testPresets": [ { "name": "linux-test-default", "displayName": "Linux CTest", "description": "Runs the Smoke + Main Test Suite. Requires the linux-test build preset to have completed successfully", "configurePreset": "linux-default", "inherits": [ "test-default", "host-linux" ] }, { "name": "linux-test-debug", "displayName": "Linux CTest debug", "description": "Runs the Smoke + Main Test Suite in debug configuration. Requires the linux-test build preset to have completed successfully", "configurePreset": "linux-default", "inherits": [ "test-default-debug", "host-linux" ] }, { "name": "linux-test-profile", "displayName": "Linux CTest profile", "description": "Runs the Smoke + Main Test Suite in profile configuration. Requires the linux-test build preset to have completed successfully", "configurePreset": "linux-default", "inherits": [ "test-default-profile", "host-linux" ] } ] }