{ "version": 3, "cmakeMinimumRequired": { "major": 3, "minor": 21, "patch": 0 }, "configurePresets": [ { "name": "ios", "displayName": "iOS", "generator": "Xcode", "description": "Create Xcode project for iOS", "binaryDir": "${sourceDir}/build-ios", "toolchainFile": "${sourceDir}/platform/ios/ios.toolchain.cmake", "cacheVariables": { "CMAKE_SYSTEM_NAME": "iOS", "CMAKE_CXX_COMPILER_LAUNCHER": "ccache", "CMAKE_OSX_DEPLOYMENT_TARGET": "14.0", "MLN_WITH_METAL": "ON", "MLN_WITH_OPENGL": "OFF" }, "condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Darwin" } }, { "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-core", "inherits": "windows-opengl", "cacheVariables": { "MLN_CORE_INCLUDE_DEPS": "ON", "MLN_USE_BUILTIN_ICU": "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-egl-core", "inherits": "windows-egl", "cacheVariables": { "MLN_CORE_INCLUDE_DEPS": "ON", "MLN_USE_BUILTIN_ICU": "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-vulkan-core", "inherits": "windows-vulkan", "cacheVariables": { "MLN_CORE_INCLUDE_DEPS": "ON", "MLN_USE_BUILTIN_ICU": "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"] } ] }