CMake presets. (#744)
* CI: use single build action * CMake: use imported targets * CI: do not build boost for linux * CMake: add FORCE_BUNDLED_MINIZIP option * linux: use external minizip and fuzzylite * CMake: add presets * .gitignore: ignore cmake build dirs * github: use cmake presets
This commit is contained in:
1 parent
a8265c7052
commit
8fc14369a4
27 files changed
+1413
-688
No files matched your search
@@ -0,0 +1,135 @@
|
||||
{
|
||||
"version": 2,
|
||||
"configurePresets": [
|
||||
{
|
||||
"name": "default-release",
|
||||
"hidden": true,
|
||||
"binaryDir": "${sourceDir}/out/build/${presetName}",
|
||||
"generator": "Ninja",
|
||||
"cacheVariables": {
|
||||
"CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}",
|
||||
"PACKAGE_FILE_NAME" : "$env{VCMI_PACKAGE_FILE_NAME}",
|
||||
"PACKAGE_NAME_SUFFIX" : "$env{VCMI_PACKAGE_NAME_SUFFIX}",
|
||||
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
|
||||
"FORCE_BUNDLED_FL" : "0",
|
||||
"ENABLE_TEST": "0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "linux-clang-release",
|
||||
"displayName": "Clang x86_64-pc-linux-gnu",
|
||||
"description": "VCMI Linux Clang",
|
||||
"inherits": "default-release",
|
||||
"cacheVariables": {
|
||||
"CMAKE_C_COMPILER": "/usr/bin/clang",
|
||||
"CMAKE_CXX_COMPILER": "/usr/bin/clang++"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "linux-gcc-release",
|
||||
"displayName": "GCC x86_64-pc-linux-gnu",
|
||||
"description": "VCMI Linux GCC",
|
||||
"inherits": "default-release",
|
||||
"cacheVariables": {
|
||||
"CMAKE_C_COMPILER": "/usr/bin/gcc",
|
||||
"CMAKE_CXX_COMPILER": "/usr/bin/g++"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "windows-msvc-release",
|
||||
"displayName": "Windows x64 RelWithDebInfo",
|
||||
"description": "VCMI RelWithDebInfo build",
|
||||
"inherits": "default-release",
|
||||
"generator": "Visual Studio 17 2022",
|
||||
"architecture": {
|
||||
"value": "x64",
|
||||
"strategy": "set"
|
||||
},
|
||||
"cacheVariables": {
|
||||
"CMAKE_TOOLCHAIN_FILE": "${sourceDir}/vcpkg/scripts/buildsystems/vcpkg.cmake",
|
||||
"CMAKE_POLICY_DEFAULT_CMP0091": "NEW",
|
||||
"FORCE_BUNDLED_MINIZIP": "ON"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-ninja-release",
|
||||
"displayName": "Ninja release",
|
||||
"description": "VCMI MacOS Ninja",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "macos-xcode-release",
|
||||
"displayName": "XCode release",
|
||||
"description": "VCMI MacOS Xcode",
|
||||
"inherits": "default-release",
|
||||
"generator": "Xcode"
|
||||
}
|
||||
],
|
||||
"buildPresets": [
|
||||
{
|
||||
"name": "default-release",
|
||||
"hidden": true,
|
||||
"configuration": "RelWithDebInfo"
|
||||
},
|
||||
{
|
||||
"name": "linux-clang-release",
|
||||
"configurePreset": "linux-clang-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "linux-gcc-release",
|
||||
"configurePreset": "linux-gcc-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "macos-xcode-release",
|
||||
"configurePreset": "macos-xcode-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "macos-ninja-release",
|
||||
"configurePreset": "macos-ninja-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "windows-msvc-release",
|
||||
"configurePreset": "windows-msvc-release",
|
||||
"inherits": "default-release"
|
||||
}
|
||||
],
|
||||
"testPresets": [
|
||||
{
|
||||
"name": "default-release",
|
||||
"hidden": true,
|
||||
"output": {
|
||||
"shortProgress": true,
|
||||
"verbosity": "verbose"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "linux-clang-release",
|
||||
"configurePreset": "linux-clang-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "linux-gcc-release",
|
||||
"configurePreset": "linux-gcc-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "macos-xcode-release",
|
||||
"configurePreset": "macos-xcode-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "macos-ninja-release",
|
||||
"configurePreset": "macos-ninja-release",
|
||||
"inherits": "default-release"
|
||||
},
|
||||
{
|
||||
"name": "windows-msvc-release",
|
||||
"configurePreset": "windows-msvc-release",
|
||||
"inherits": "default-release"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in new issue
Block a user