blob: 9059575b9e5718fc0af0fa14e5a84fc537545ae1 [file] [log] [blame]
{
"module": "webenginecore",
"depends": [
"buildtools-private",
"core-private",
"gui-private",
"printsupport"
],
"condition": "module.gui && features.build-qtwebengine-core && features.webengine-core-support",
"testDir": "../../config.tests",
"commandline": {
"options": {
"webengine-alsa": "boolean",
"webengine-embedded-build": "boolean",
"webengine-full-debug-info": "boolean",
"webengine-icu": { "type": "enum", "name": "webengine-system-icu", "values": { "system": "yes", "qt": "no" } },
"webengine-ffmpeg": { "type": "enum", "name": "webengine-system-ffmpeg", "values": { "system": "yes", "qt": "no" } },
"webengine-opus": { "type": "enum", "name": "webengine-system-opus", "values": { "system": "yes", "qt": "no" } },
"webengine-webp": { "type": "enum", "name": "webengine-system-libwebp", "values": { "system": "yes", "qt": "no" } },
"webengine-pepper-plugins": "boolean",
"webengine-printing-and-pdf": "boolean",
"webengine-proprietary-codecs": "boolean",
"webengine-pulseaudio": "boolean",
"webengine-spellchecker": "boolean",
"webengine-native-spellchecker": "boolean",
"webengine-extensions": "boolean",
"webengine-webrtc": "boolean",
"webengine-geolocation": "boolean",
"webengine-v8-snapshot": "boolean",
"webengine-webchannel": "boolean",
"webengine-kerberos": "boolean",
"alsa": { "type": "boolean", "name": "webengine-alsa" },
"pulseaudio": { "type": "boolean", "name": "webengine-pulseaudio" },
"ffmpeg": { "type": "enum", "name": "webengine-system-ffmpeg", "values": { "system": "yes", "qt": "no" } },
"opus": { "type": "enum", "name": "webengine-system-opus", "values": { "system": "yes", "qt": "no" } },
"webp": { "type": "enum", "name": "webengine-system-libwebp", "values": { "system": "yes", "qt": "no" } },
"pepper-plugins": { "type": "boolean", "name": "webengine-pepper-plugins" },
"printing-and-pdf": { "type": "boolean", "name": "webengine-printing-and-pdf" },
"proprietary-codecs": { "type": "boolean", "name": "webengine-proprietary-codecs" },
"spellchecker": { "type": "boolean", "name": "webengine-spellchecker" },
"extensions": { "type": "boolean", "name": "webengine-extensions" },
"webrtc": { "type": "boolean", "name": "webengine-webrtc" }
}
},
"libraries": {
"webengine-alsa": {
"label": "alsa",
"test": {
"tail": [
"#if SND_LIB_VERSION < 0x1000a // 1.0.10",
"#error Alsa version found too old, require >= 1.0.10",
"#endif"
]
},
"headers" : ["alsa/asoundlib.h"],
"sources" : [{ "type": "pkgConfig", "args": "alsa" }
]
},
"webengine-poppler-cpp": {
"label": "poppler-cpp",
"sources": [
{ "type": "pkgConfig", "args": "poppler-cpp" }
]
},
"webengine-pulseaudio": {
"label": "pulseaudio >= 0.9.10",
"sources": [
{ "type": "pkgConfig", "args": "libpulse >= 0.9.10 libpulse-mainloop-glib" }
]
}
},
"tests" : {
"webengine-host-compiler": {
"label": "host compiler",
"test": "hostcompiler",
"host": "true",
"type": "compile"
},
"webengine-host-pkg-config": {
"label": "host pkg-config",
"type": "detectHostPkgConfig",
"log": "path"
},
"webengine-embedded-build": {
"label": "embedded build",
"type": "detectEmbedded"
},
"webengine-sanitizer": {
"label" : "sanitizer support",
"type": "isSanitizerSupported"
},
"webengine-arm-thumb" : {
"label": "thumb instruction set",
"type": "hasThumbFlag"
},
"webengine-noexecstack" : {
"label": "linker supports -z noexecstack",
"type": "linkerSupportsFlag",
"flag": "-z,noexecstack"
}
},
"features": {
"webengine-embedded-build": {
"label": "Embedded build",
"purpose": "Enables the embedded build configuration.",
"section": "WebEngine",
"condition": "config.unix",
"autoDetect": "tests.webengine-embedded-build",
"output": [ "privateFeature" ]
},
"webengine-alsa": {
"label": "Use ALSA",
"condition": "config.unix && libs.webengine-alsa",
"output": [ "privateFeature" ]
},
"webengine-v8-snapshot": {
"label" : "Use v8 snapshot",
"purpose": "Enables the v8 snapshot, for fast v8 context creation",
"output": [ "privateFeature" ]
},
"webengine-v8-snapshot-support": {
"label" : "Building v8 snapshot supported",
"autoDetect": "features.webengine-v8-snapshot",
"condition": "!config.unix || !features.cross_compile || arch.arm64 || tests.webengine-host-compiler",
"output": [ "privateFeature" ]
},
"webengine-geolocation": {
"label": "Geolocation",
"condition": "module.positioning",
"output": [ "publicFeature" ]
},
"webengine-pulseaudio": {
"label": "Use PulseAudio",
"autoDetect": "config.unix",
"condition": "libs.webengine-pulseaudio",
"output": [ "privateFeature" ]
},
"webengine-pepper-plugins": {
"label": "Pepper Plugins",
"purpose": "Enables use of Pepper Flash plugins.",
"section": "WebEngine",
"autoDetect": "!features.webengine-embedded-build",
"output": [ "privateFeature" ]
},
"webengine-printing-and-pdf": {
"label": "Printing and PDF",
"purpose": "Provides printing and output to PDF.",
"section": "WebEngine",
"condition": "module.printsupport && features.printer",
"autoDetect": "!features.webengine-embedded-build",
"output": [ "privateFeature" ]
},
"webengine-webchannel": {
"label": "WebChannel support",
"purpose": "Provides QtWebChannel integration.",
"section": "WebEngine",
"condition": "module.webchannel",
"output": [ "publicFeature" ]
},
"webengine-proprietary-codecs": {
"label": "Proprietary Codecs",
"purpose": "Enables the use of proprietary codecs such as h.264/h.265 and MP3.",
"section": "WebEngine",
"autoDetect": false,
"output": [ "privateFeature" ]
},
"webengine-kerberos": {
"label": "Kerberos Authentication",
"purpose": "Enables Kerberos Authentication Support",
"autoDetect": "config.win32",
"section": "WebEngine",
"output": [ "privateFeature" ]
},
"webengine-spellchecker": {
"label": "Spellchecker",
"purpose": "Provides a spellchecker.",
"section": "WebEngine",
"output": [ "publicFeature" ]
},
"webengine-native-spellchecker": {
"label": "Native Spellchecker",
"purpose": "Use the system's native spellchecking engine.",
"section": "WebEngine",
"autoDetect": false,
"condition": "config.macos && features.webengine-spellchecker",
"output": [ "publicFeature" ]
},
"webengine-extensions": {
"label": "Extensions",
"purpose": "Enables Chromium extensions within certain limits. Currently used for enabling the pdf viewer.",
"section": "WebEngine",
"condition": "features.webengine-printing-and-pdf",
"autoDetect": "features.webengine-printing-and-pdf",
"output": [ "publicFeature" ]
},
"webengine-webrtc": {
"label": "WebRTC",
"purpose": "Provides WebRTC support.",
"section": "WebEngine",
"autoDetect": "!features.webengine-embedded-build",
"output": [ "privateFeature" ]
},
"webengine-ozone-x11" : {
"label": "Support qpa-xcb",
"condition": "config.unix
&& features.webengine-system-x11
&& features.webengine-system-libdrm
&& features.webengine-system-xcomposite
&& features.webengine-system-xcursor
&& features.webengine-system-xi
&& features.webengine-system-xtst",
"output": [ "privateFeature" ]
},
"webengine-sanitizer" : {
"label": "Sanitizer",
"autoDetect": "config.sanitizer && tests.webengine-sanitizer",
"condition": "config.sanitizer",
"output": [ "privateFeature" ]
},
"webengine-poppler-cpp": {
"label": "poppler-cpp",
"autoDetect": "config.unix",
"condition": "libs.webengine-poppler-cpp",
"output": [ "privateFeature" ]
},
"webengine-arm-thumb": {
"label": "Thumb instruction set",
"condition": "config.linux && features.webengine-embedded-build && arch.arm && tests.webengine-arm-thumb",
"output": [ "privateFeature" ]
},
"webengine-full-debug-info": {
"label": "Full debug information",
"purpose": "Enables debug information for Blink and V8.",
"autoDetect": false,
"condition": "config.debug || features.debug_and_release || features.force_debug_info",
"output": [
{ "type": "privateConfig", "name": "v8base_debug" },
{ "type": "privateConfig", "name": "webcore_debug" }
]
},
"webengine-noexecstack": {
"label": "linker supports -z noexecstack",
"condition": "config.unix && tests.webengine-noexecstack",
"output": [ "privateFeature" ]
}
},
"report": [
{
"type": "warning",
"condition": "config.sanitizer && !tests.webengine-sanitizer && !features.webengine-sanitizer",
"message": "Qt WebEngine cannot be built with the chosen sanitizer configuration. Check config.log for details or use -feature-webengine-sanitizer to force the build."
},
{
"type": "warning",
"condition": "config.unix && !features.webengine-host-pkg-config",
"message": "host pkg-config not found"
},
{
"type": "warning",
"condition": "config.linux && features.webengine-embedded-build && !features.webengine-system-ffmpeg && arch.arm && !features.webengine-arm-thumb",
"message": "Thumb instruction set is required to build ffmpeg for QtWebEngine."
},
{
"type": "warning",
"condition": "config.linux && features.webengine-v8-snapshot && !features.webengine-v8-snapshot-support",
"message": "V8 snapshot cannot be built. Most likely, the 32-bit host compiler does not work. Please make sure you have 32-bit devel environment installed."
}
],
"summary": [
{
"section": "Qt WebEngineCore",
"condition": "features.build-qtwebengine-core",
"entries": [
"webengine-embedded-build",
"webengine-full-debug-info",
"webengine-pepper-plugins",
"webengine-printing-and-pdf",
"webengine-proprietary-codecs",
"webengine-spellchecker",
"webengine-native-spellchecker",
"webengine-webrtc",
"webengine-geolocation",
"webengine-webchannel",
"webengine-v8-snapshot",
"webengine-kerberos",
"webengine-extensions",
{
"type": "feature",
"args": "webengine-ozone-x11",
"condition": "config.unix"
},
{
"type": "feature",
"args": "webengine-v8-snapshot-support",
"condition": "config.unix && config.cross_compile && features.webengine-v8-snapshot"
},
{
"type": "feature",
"args": "webengine-alsa",
"condition": "config.unix"
},
{
"type": "feature",
"args": "webengine-pulseaudio",
"condition": "config.unix"
},
{
"type": "feature",
"args": "webengine-sanitizer",
"condition": "config.sanitizer"
},
{
"message": "macOS version",
"type": "macosToolchainVersion",
"args": "macosVersion",
"condition": "config.macos"
},
{
"message": "Xcode version",
"type": "macosToolchainVersion",
"args": "xcodeVersion",
"condition": "config.macos"
},
{
"message": "Clang version",
"type": "macosToolchainVersion",
"args": "clangVersion",
"condition": "config.macos"
},
{
"message": "macOS SDK version",
"type": "macosToolchainVersion",
"args": "sdkVersion",
"condition": "config.macos"
},
{
"message": "macOS minimum deployment target",
"type": "macosToolchainVersion",
"args": "deploymentTarget",
"condition": "config.macos"
}
]
}
]
}