{ "module": "webenginecore", "depends": [ "buildtools-private", "core-private", "gui-private", "printsupport" ], "condition": "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-extensions-gcc-version" : { "label": "GCC 6 or newer", "type": "hasGcc6OrNewer" }, "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 && (tests.webengine-extensions-gcc-version || config.clang || !config.gcc)", "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" } ] } ] }