347 lines
9.0 KiB
JSON
347 lines
9.0 KiB
JSON
{
|
|
"version": 3,
|
|
"cmakeMinimumRequired": {
|
|
"major": 3,
|
|
"minor": 21,
|
|
"patch": 0
|
|
},
|
|
"configurePresets": [
|
|
{
|
|
"name": "ios",
|
|
"hidden": true,
|
|
"generator": "Xcode",
|
|
"description": "Base iOS preset",
|
|
"toolchainFile": "${sourceDir}/platform/ios/ios.toolchain.cmake",
|
|
"cacheVariables": {
|
|
"CMAKE_SYSTEM_NAME": "iOS",
|
|
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache",
|
|
"CMAKE_OSX_DEPLOYMENT_TARGET": "14.0"
|
|
},
|
|
"condition": {
|
|
"type": "equals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Darwin"
|
|
}
|
|
},
|
|
{
|
|
"name": "ios-metal",
|
|
"displayName": "iOS Metal",
|
|
"inherits": "ios",
|
|
"binaryDir": "${sourceDir}/build-ios",
|
|
"cacheVariables": {
|
|
"MLN_WITH_METAL": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "macos",
|
|
"hidden": true,
|
|
"generator": "Ninja",
|
|
"cacheVariables": {
|
|
"CMAKE_SYSTEM_NAME": "Darwin",
|
|
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache",
|
|
"CMAKE_OSX_DEPLOYMENT_TARGET": "14.3",
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"MLN_DARWIN_USE_LIBUV": "ON"
|
|
},
|
|
"condition": {
|
|
"type": "equals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Darwin"
|
|
}
|
|
},
|
|
{
|
|
"name": "macos-metal",
|
|
"displayName": "macOS Metal",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build-macos-metal",
|
|
"inherits": "macos",
|
|
"cacheVariables": {
|
|
"MLN_WITH_METAL": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "macos-metal-xcode",
|
|
"displayName": "macOS (Xcode)",
|
|
"generator": "Xcode",
|
|
"binaryDir": "${sourceDir}/build-macos-metal-xcode",
|
|
"inherits": "macos-metal"
|
|
},
|
|
{
|
|
"name": "macos-vulkan",
|
|
"displayName": "macOS Vulkan",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build-macos-vulkan",
|
|
"inherits": "macos",
|
|
"cacheVariables": {
|
|
"MLN_WITH_VULKAN": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "macos-vulkan-xcode",
|
|
"displayName": "macOS Vulkan (Xcode)",
|
|
"generator": "Xcode",
|
|
"binaryDir": "${sourceDir}/build-macos-vulkan-xcode",
|
|
"inherits": "macos-vulkan"
|
|
},
|
|
{
|
|
"name": "macos-metal-node",
|
|
"inherits": "macos-metal",
|
|
"binaryDir": "${sourceDir}/build",
|
|
"displayName": "MacOS Node",
|
|
"description": "MacOS Node build (Metal renderer)",
|
|
"cacheVariables": {
|
|
"MLN_WITH_NODE": "ON",
|
|
"MLN_WITH_WERROR": "OFF",
|
|
"MLN_CREATE_AUTORELEASEPOOL": "ON",
|
|
"MLN_DARWIN_USE_LIBUV": "OFF"
|
|
}
|
|
},
|
|
{
|
|
"name": "macos-webgpu-dawn",
|
|
"displayName": "macOS WebGPU (Dawn)",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build-macos-webgpu-dawn",
|
|
"inherits": "macos",
|
|
"cacheVariables": {
|
|
"MLN_WITH_WEBGPU": "ON",
|
|
"MLN_WEBGPU_IMPL_DAWN": "ON",
|
|
"MLN_DARWIN_USE_LIBUV": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "macos-webgpu-wgpu",
|
|
"displayName": "macOS WebGPU (wgpu-native)",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build-macos-webgpu-wgpu",
|
|
"inherits": "macos",
|
|
"cacheVariables": {
|
|
"MLN_WITH_WEBGPU": "ON",
|
|
"MLN_WEBGPU_IMPL_WGPU": "ON",
|
|
"MLN_DARWIN_USE_LIBUV": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "linux",
|
|
"hidden": true,
|
|
"generator": "Ninja",
|
|
"cacheVariables": {
|
|
"CMAKE_SYSTEM_NAME": "Linux",
|
|
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache",
|
|
"MLN_WITH_METAL": "OFF",
|
|
"MLN_WITH_OPENGL": "OFF",
|
|
"MLN_WITH_VULKAN": "OFF",
|
|
"CMAKE_C_COMPILER": "clang",
|
|
"CMAKE_CXX_COMPILER": "clang++",
|
|
"CMAKE_BUILD_WITH_INSTALL_RPATH": "ON",
|
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
|
|
"MLN_WITH_CLANG_TIDY": "OFF",
|
|
"MLN_WITH_WAYLAND": "ON",
|
|
"MLN_WITH_X11": "OFF"
|
|
},
|
|
"condition": {
|
|
"type": "equals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Linux"
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-opengl",
|
|
"binaryDir": "${sourceDir}/build-linux-opengl",
|
|
"generator": "Ninja",
|
|
"inherits": "linux",
|
|
"cacheVariables": {
|
|
"MLN_WITH_OPENGL": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-vulkan",
|
|
"binaryDir": "${sourceDir}/build-linux-vulkan",
|
|
"inherits": "linux",
|
|
"cacheVariables": {
|
|
"MLN_WITH_VULKAN": "ON",
|
|
"MLN_WITH_WAYLAND": "OFF",
|
|
"MLN_WITH_X11": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-webgpu-dawn",
|
|
"binaryDir": "${sourceDir}/build-linux-webgpu-dawn",
|
|
"inherits": "linux",
|
|
"cacheVariables": {
|
|
"MLN_WITH_WEBGPU": "ON",
|
|
"MLN_WEBGPU_IMPL_DAWN": "ON",
|
|
"MLN_WITH_WAYLAND": "OFF",
|
|
"MLN_WITH_X11": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-webgpu-wgpu",
|
|
"binaryDir": "${sourceDir}/build-linux-webgpu-wgpu",
|
|
"inherits": "linux",
|
|
"cacheVariables": {
|
|
"MLN_WITH_WEBGPU": "ON",
|
|
"MLN_WEBGPU_IMPL_WGPU": "ON",
|
|
"MLN_WITH_WAYLAND": "OFF",
|
|
"MLN_WITH_X11": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-opengl-node",
|
|
"inherits": "linux",
|
|
"binaryDir": "${sourceDir}/build",
|
|
"displayName": "Linux Node",
|
|
"description": "Linux Node build (OpenGL renderer)",
|
|
"cacheVariables": {
|
|
"MLN_WITH_NODE": "ON",
|
|
"MLN_WITH_OPENGL": "ON",
|
|
"MLN_WITH_WAYLAND": "OFF",
|
|
"MLN_WITH_X11": "ON",
|
|
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows",
|
|
"hidden": true,
|
|
"generator": "Ninja",
|
|
"cacheVariables": {
|
|
"CMAKE_SYSTEM_NAME": "Windows",
|
|
"MLN_WITH_OPENGL": "OFF",
|
|
"MLN_WITH_EGL": "OFF",
|
|
"MLN_WITH_VULKAN": "OFF",
|
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
|
},
|
|
"condition": {
|
|
"type": "equals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Windows"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-opengl",
|
|
"binaryDir": "${sourceDir}/build-windows-opengl",
|
|
"generator": "Ninja",
|
|
"inherits": "windows",
|
|
"cacheVariables": {
|
|
"MLN_WITH_OPENGL": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-opengl-node",
|
|
"inherits": "windows",
|
|
"binaryDir": "${sourceDir}/build",
|
|
"displayName": "Windows Node",
|
|
"description": "Windows Node build (OpenGL renderer)",
|
|
"cacheVariables": {
|
|
"MLN_WITH_NODE": "ON",
|
|
"MLN_WITH_OPENGL": "ON",
|
|
"CMAKE_CXX_COMPILER_LAUNCHER": "sccache"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-egl",
|
|
"binaryDir": "${sourceDir}/build-windows-egl",
|
|
"generator": "Ninja",
|
|
"inherits": "windows",
|
|
"cacheVariables": {
|
|
"MLN_WITH_OPENGL": "ON",
|
|
"MLN_WITH_EGL": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-vulkan",
|
|
"binaryDir": "${sourceDir}/build-windows-vulkan",
|
|
"inherits": "windows",
|
|
"cacheVariables": {
|
|
"MLN_WITH_OPENGL": "OFF",
|
|
"MLN_WITH_EGL": "OFF",
|
|
"MLN_WITH_VULKAN": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-arm64",
|
|
"hidden": true,
|
|
"generator": "Visual Studio 17 2022",
|
|
"architecture": {
|
|
"value": "ARM64",
|
|
"strategy": "set"
|
|
},
|
|
"environment": {
|
|
"VSCMD_ARG_TGT_ARCH": "arm64"
|
|
},
|
|
"cacheVariables": {
|
|
"CMAKE_SYSTEM_NAME": "Windows",
|
|
"MLN_WITH_OPENGL": "OFF",
|
|
"MLN_WITH_EGL": "OFF",
|
|
"MLN_WITH_VULKAN": "OFF",
|
|
"MLN_WITH_GLFW": "OFF"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-arm64-opengl",
|
|
"hidden": false,
|
|
"inherits": "windows-arm64",
|
|
"displayName": "Windows ARM64 OpenGL",
|
|
"description": "Windows ARM64 build (OpenGL renderer)",
|
|
"cacheVariables": {
|
|
"MLN_WITH_OPENGL": "ON",
|
|
"MLN_WITH_GLFW": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-arm64-opengl-node",
|
|
"binaryDir": "${sourceDir}/build",
|
|
"inherits": "windows-arm64",
|
|
"displayName": "Windows ARM64 Node",
|
|
"description": "Windows ARM64 Node build (OpenGL renderer)",
|
|
"cacheVariables": {
|
|
"MLN_WITH_NODE": "ON",
|
|
"MLN_WITH_OPENGL": "ON",
|
|
"CMAKE_CXX_COMPILER_LAUNCHER": "sccache"
|
|
}
|
|
},
|
|
{
|
|
"name": "windows-arm64-vulkan",
|
|
"hidden": false,
|
|
"inherits": "windows-arm64",
|
|
"displayName": "Windows ARM64 Vulkan",
|
|
"description": "Windows ARM64 build (Vulkan renderer)",
|
|
"cacheVariables": {
|
|
"MLN_WITH_VULKAN": "ON",
|
|
"MLN_WITH_GLFW": "ON"
|
|
}
|
|
}
|
|
],
|
|
"buildPresets": [
|
|
{
|
|
"name": "macos-core",
|
|
"configurePreset": "macos",
|
|
"targets": ["mbgl-core"]
|
|
},
|
|
{
|
|
"name": "linux-opengl-core",
|
|
"configurePreset": "linux-opengl",
|
|
"targets": ["mbgl-core"]
|
|
},
|
|
{
|
|
"name": "linux-vulkan-core",
|
|
"configurePreset": "linux-vulkan",
|
|
"targets": ["mbgl-core"]
|
|
},
|
|
{
|
|
"name": "windows-opengl-core",
|
|
"configurePreset": "windows-opengl",
|
|
"targets": ["mbgl-core"]
|
|
},
|
|
{
|
|
"name": "windows-egl-core",
|
|
"configurePreset": "windows-egl",
|
|
"targets": ["mbgl-core"]
|
|
},
|
|
{
|
|
"name": "windows-vulkan-core",
|
|
"configurePreset": "windows-vulkan",
|
|
"targets": ["mbgl-core"]
|
|
}
|
|
]
|
|
}
|