mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-25 17:25:08 +02:00
429 lines
11 KiB
JSON
429 lines
11 KiB
JSON
{
|
|
"version": 6,
|
|
"cmakeMinimumRequired": {
|
|
"major": 3,
|
|
"minor": 25,
|
|
"patch": 0
|
|
},
|
|
"configurePresets": [
|
|
{
|
|
"hidden": true,
|
|
"name": "base",
|
|
"displayName": "Default Config",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${fileDir}/Build/release",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
|
|
"SERENITY_CACHE_DIR": "${fileDir}/Build/caches",
|
|
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake",
|
|
"VCPKG_INSTALL_OPTIONS": "--no-print-usage",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/release-triplets"
|
|
},
|
|
"environment": {
|
|
"LADYBIRD_SOURCE_DIR": "${fileDir}",
|
|
"VCPKG_ROOT": "${fileDir}/Build/vcpkg",
|
|
"VCPKG_BINARY_SOURCES": "clear;files,${fileDir}/Build/caches/vcpkg-binary-cache,readwrite;$penv{VCPKG_BINARY_SOURCES}"
|
|
},
|
|
"vendor": {
|
|
"jetbrains.com/clion": {
|
|
"toolchain": "Default"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "unix_base",
|
|
"inherits": "base",
|
|
"condition": {
|
|
"type": "notEquals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Windows"
|
|
}
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "windows_base",
|
|
"inherits": "base",
|
|
"description": "Visual Studio via Clang/LLVM Toolchain",
|
|
"architecture": {
|
|
"value": "x64",
|
|
"strategy": "external"
|
|
},
|
|
"cacheVariables": {
|
|
"CMAKE_C_COMPILER": "clang-cl",
|
|
"CMAKE_CXX_COMPILER": "clang-cl"
|
|
},
|
|
"vendor": {
|
|
"microsoft.com/VisualStudioSettings/CMake/1.0": {
|
|
"intelliSenseMode": "windows-clang-x64"
|
|
}
|
|
},
|
|
"condition": {
|
|
"type": "equals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Windows"
|
|
}
|
|
},
|
|
{
|
|
"name": "Release",
|
|
"inherits": "unix_base",
|
|
"displayName": "Release Config"
|
|
},
|
|
{
|
|
"name": "Debug",
|
|
"inherits": "unix_base",
|
|
"displayName": "Debug Config",
|
|
"binaryDir": "${fileDir}/Build/debug",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/debug-triplets"
|
|
}
|
|
},
|
|
{
|
|
"name": "Windows_Experimental",
|
|
"inherits": "windows_base",
|
|
"displayName": "Windows Experimental Config",
|
|
"description": "Experimental windows configuration that builds all targets, allowing for gradual increase in support",
|
|
"binaryDir": "${fileDir}/Build/debug",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/debug-triplets",
|
|
"ENABLE_WINDOWS_CI": "OFF"
|
|
}
|
|
},
|
|
{
|
|
"name": "Distribution",
|
|
"inherits": "unix_base",
|
|
"displayName": "Distribution Config",
|
|
"description": "Distribution build with static libraries",
|
|
"binaryDir": "${fileDir}/Build/distribution",
|
|
"cacheVariables": {
|
|
"BUILD_SHARED_LIBS": "OFF",
|
|
"CMAKE_BUILD_TYPE": "Release",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/distribution-triplets"
|
|
}
|
|
},
|
|
{
|
|
"name": "Sanitizer",
|
|
"inherits": [
|
|
"unix_base",
|
|
"Release"
|
|
],
|
|
"displayName": "Sanitizer Config",
|
|
"description": "Sanitizer build",
|
|
"binaryDir": "${fileDir}/Build/sanitizers",
|
|
"cacheVariables": {
|
|
"ENABLE_UNDEFINED_SANITIZER": "ON",
|
|
"ENABLE_ADDRESS_SANITIZER": "ON",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/sanitizer-triplets"
|
|
}
|
|
},
|
|
{
|
|
"name": "Windows_Sanitizer_Experimental",
|
|
"inherits": [
|
|
"Windows_Experimental"
|
|
],
|
|
"displayName": "Windows Sanitizer Config",
|
|
"binaryDir": "${fileDir}/Build/sanitizers",
|
|
"cacheVariables": {
|
|
"ENABLE_WINDOWS_CI": "OFF",
|
|
"ENABLE_UNDEFINED_SANITIZER": "ON",
|
|
"ENABLE_ADDRESS_SANITIZER": "ON",
|
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/sanitizer-triplets"
|
|
}
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "vcpkg_ci",
|
|
"description": "FIXME: Use the GitHub Actions vcpkg cache"
|
|
},
|
|
{
|
|
"name": "CI",
|
|
"displayName": "Non-Sanitizer CI Config",
|
|
"inherits": [
|
|
"vcpkg_ci",
|
|
"unix_base"
|
|
]
|
|
},
|
|
{
|
|
"name": "Windows_CI",
|
|
"inherits": [
|
|
"vcpkg_ci",
|
|
"windows_base"
|
|
],
|
|
"displayName": "Windows CI Config",
|
|
"cacheVariables": {
|
|
"ENABLE_WINDOWS_CI": "ON",
|
|
"ENABLE_QT": "OFF"
|
|
}
|
|
},
|
|
{
|
|
"name": "Distribution_CI",
|
|
"inherits": [
|
|
"vcpkg_ci",
|
|
"Distribution"
|
|
],
|
|
"displayName": "Distribution CI Config",
|
|
"description": "Distribution build with GitHub Actions cache"
|
|
},
|
|
{
|
|
"name": "Sanitizer_CI",
|
|
"inherits": [
|
|
"vcpkg_ci",
|
|
"Sanitizer"
|
|
],
|
|
"displayName": "Sanitizer CI Config"
|
|
},
|
|
{
|
|
"name": "Windows_Sanitizer_CI",
|
|
"inherits": [
|
|
"Windows_CI"
|
|
],
|
|
"displayName": "Windows Sanitizer CI Config",
|
|
"binaryDir": "${fileDir}/Build/sanitizers",
|
|
"cacheVariables": {
|
|
"ENABLE_WINDOWS_CI": "ON",
|
|
"ENABLE_UNDEFINED_SANITIZER": "ON",
|
|
"ENABLE_ADDRESS_SANITIZER": "ON",
|
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/sanitizer-triplets"
|
|
}
|
|
},
|
|
{
|
|
"name": "Fuzzers",
|
|
"inherits": "unix_base",
|
|
"displayName": "Fuzzers Config",
|
|
"description": "Fuzzers build",
|
|
"binaryDir": "${fileDir}/Build/fuzzers",
|
|
"cacheVariables": {
|
|
"BUILD_SHARED_LIBS": "OFF",
|
|
"ENABLE_QT": "OFF",
|
|
"VCPKG_OVERLAY_TRIPLETS": "${fileDir}/Meta/CMake/vcpkg/distribution-triplets",
|
|
"ENABLE_FUZZERS_LIBFUZZER": "ON",
|
|
"ENABLE_ADDRESS_SANITIZER": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "Fuzzers_CI",
|
|
"inherits": [
|
|
"vcpkg_ci",
|
|
"Fuzzers"
|
|
],
|
|
"displayName": "Fuzzers CI Config",
|
|
"description": "Fuzzers build with GitHub Actions cache"
|
|
},
|
|
{
|
|
"name": "Swift_Release",
|
|
"inherits": "unix_base",
|
|
"displayName": "Swift Release Config",
|
|
"description": "Swift release build using Ninja generator",
|
|
"binaryDir": "${fileDir}/Build/swift",
|
|
"cacheVariables": {
|
|
"ENABLE_SWIFT": "ON",
|
|
"CMAKE_C_COMPILER": "MustBeSetManually",
|
|
"CMAKE_CXX_COMPILER": "MustBeSetManually++"
|
|
},
|
|
"vendor": {
|
|
"jetbrains.com/clion": {
|
|
"toolchain": "Swift"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"buildPresets": [
|
|
{
|
|
"hidden": true,
|
|
"name": "base",
|
|
"targets": [
|
|
"all"
|
|
]
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "unix_base",
|
|
"inherits": "base",
|
|
"configurePreset": "unix_base",
|
|
"condition": {
|
|
"type": "notEquals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Windows"
|
|
}
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "windows_base",
|
|
"inherits": "base",
|
|
"configurePreset": "windows_base",
|
|
"condition": {
|
|
"type": "equals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Windows"
|
|
}
|
|
},
|
|
{
|
|
"name": "Release",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Release",
|
|
"displayName": "Build",
|
|
"description": "Build the project in release"
|
|
},
|
|
{
|
|
"name": "Debug",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Debug",
|
|
"displayName": "Build",
|
|
"description": "Build the project in debug"
|
|
},
|
|
{
|
|
"name": "Windows_Experimental",
|
|
"inherits": "windows_base",
|
|
"configurePreset": "Windows_Experimental",
|
|
"displayName": "Build",
|
|
"description": "Build the project"
|
|
},
|
|
{
|
|
"name": "Distribution",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Distribution",
|
|
"displayName": "Build",
|
|
"description": "Build the project for distribution"
|
|
},
|
|
{
|
|
"name": "Sanitizer",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Sanitizer",
|
|
"displayName": "Build with Sanitizers",
|
|
"description": "Build the project with Sanitizers"
|
|
},
|
|
{
|
|
"name": "Windows_Sanitizer_Experimental",
|
|
"inherits": "windows_base",
|
|
"configurePreset": "Windows_Sanitizer_Experimental",
|
|
"displayName": "Build with Sanitizers",
|
|
"description": "Build the project with Sanitizers"
|
|
},
|
|
{
|
|
"name": "Windows_CI",
|
|
"inherits": "windows_base",
|
|
"configurePreset": "Windows_CI",
|
|
"displayName": "Windows_CI Build",
|
|
"description": "Build the project for Windows CI"
|
|
},
|
|
{
|
|
"name": "Windows_Sanitizer_CI",
|
|
"inherits": "windows_base",
|
|
"configurePreset": "Windows_Sanitizer_CI",
|
|
"displayName": "Windows_Sanitizer_CI Build",
|
|
"description": "Build the project with sanitizers for Windows CI"
|
|
},
|
|
{
|
|
"name": "Swift_Release",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Swift_Release",
|
|
"displayName": "Build Swift Release",
|
|
"description": "Build the project for Swift release"
|
|
}
|
|
],
|
|
"testPresets": [
|
|
{
|
|
"hidden": true,
|
|
"name": "base",
|
|
"output": {
|
|
"outputOnFailure": true
|
|
},
|
|
"execution": {
|
|
"noTestsAction": "error",
|
|
"stopOnFailure": true
|
|
},
|
|
"environment": {
|
|
"LADYBIRD_SOURCE_DIR": "${fileDir}"
|
|
}
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "windows_base",
|
|
"configurePreset": "windows_base",
|
|
"inherits": "base",
|
|
"condition": {
|
|
"type": "equals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Windows"
|
|
}
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "unix_base",
|
|
"configurePreset": "unix_base",
|
|
"inherits": "base",
|
|
"condition": {
|
|
"type": "notEquals",
|
|
"lhs": "${hostSystemName}",
|
|
"rhs": "Windows"
|
|
}
|
|
},
|
|
{
|
|
"hidden": true,
|
|
"name": "sanitizer_base",
|
|
"environment": {
|
|
"ASAN_OPTIONS": "strict_string_checks=1:check_initialization_order=1:strict_init_order=1:detect_stack_use_after_return=1:allocator_may_return_null=1:$penv{ASAN_OPTIONS}",
|
|
"UBSAN_OPTIONS": "print_stacktrace=1:print_summary=1:halt_on_error=1:$penv{UBSAN_OPTIONS}"
|
|
}
|
|
},
|
|
{
|
|
"name": "Release",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Release"
|
|
},
|
|
{
|
|
"name": "Debug",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Debug"
|
|
},
|
|
{
|
|
"name": "Windows_Experimental",
|
|
"inherits": "windows_base",
|
|
"configurePreset": "Windows_Experimental"
|
|
},
|
|
{
|
|
"name": "Distribution",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Distribution"
|
|
},
|
|
{
|
|
"name": "Sanitizer",
|
|
"inherits": [
|
|
"unix_base",
|
|
"sanitizer_base"
|
|
],
|
|
"configurePreset": "Sanitizer"
|
|
},
|
|
{
|
|
"name": "Windows_Sanitizer_Experimental",
|
|
"inherits": [
|
|
"windows_base",
|
|
"sanitizer_base"
|
|
],
|
|
"configurePreset": "Windows_Sanitizer_Experimental"
|
|
},
|
|
{
|
|
"name": "Windows_CI",
|
|
"inherits": "windows_base",
|
|
"configurePreset": "Windows_CI"
|
|
},
|
|
{
|
|
"name": "Windows_Sanitizer_CI",
|
|
"inherits": [
|
|
"windows_base",
|
|
"sanitizer_base"
|
|
],
|
|
"configurePreset": "Windows_Sanitizer_CI"
|
|
},
|
|
{
|
|
"name": "Swift_Release",
|
|
"inherits": "unix_base",
|
|
"configurePreset": "Swift_Release"
|
|
}
|
|
]
|
|
}
|