From d155f3da5d6e8ad08fab040d8f748d3bbdb69039 Mon Sep 17 00:00:00 2001 From: Michal Klocek Date: Thu, 2 Sep 2021 08:01:36 +0200 Subject: Remove the rest of qmake based configuration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The only not cover part in cmake port are: * ios builds for qtpdf * qt static dependecies for qpdf Pick-to: 6.2 Change-Id: Iefe624c35d847b4a9c3cd970192487340b1657f9 Reviewed-by: Michael BrĂ¼ning --- configure.pri | 558 -------------- mkspecs/features/default_pre.prf | 20 - mkspecs/features/functions.prf | 138 ---- mkspecs/features/gn_generator.prf | 268 ------- src/buildtools/buildtools.pro | 20 - src/buildtools/config/common.pri | 113 --- src/buildtools/config/functions.pri | 8 - src/buildtools/config/linking.pri | 77 -- src/buildtools/config/linux.pri | 178 ----- src/buildtools/config/mac_osx.pri | 38 - src/buildtools/config/support.pri | 257 ------- src/buildtools/config/windows.pri | 91 --- src/buildtools/configure.json | 843 --------------------- src/buildtools/configure_host.pro | 65 -- src/buildtools/configure_target.pro | 33 - src/buildtools/gn.pro | 39 - src/buildtools/ninja.pro | 23 - src/core/api/core_api.pro | 119 --- src/core/config/common.pri | 48 -- src/core/config/linux.pri | 44 -- src/core/config/mac_osx.pri | 8 - src/core/config/windows.pri | 8 - src/core/core.pro | 48 -- src/core/core_chromium.pri | 352 --------- src/core/core_common.pri | 21 - src/core/core_generator.pro | 7 - src/core/core_gn_config.pri | 17 - src/core/core_headers.pro | 6 - src/core/core_module.pro | 120 --- src/core/core_project.pro | 28 - src/core/gn_run.pro | 68 -- src/pdf/config/common.pri | 78 -- src/pdf/config/ios.pri | 66 -- src/pdf/configure.json | 64 -- src/pdf/gn_run.pro | 69 -- src/pdf/pdf.pro | 31 - src/pdf/pdfcore.pro | 87 --- src/pdf/pdfcore_generator.pro | 15 - src/pdf/pdfcore_prl_generator.pro | 27 - src/pdf/quick/quick.pro | 40 - src/pdf/quick/resources.qrc | 10 - src/pdfwidgets/configure.json | 28 - src/pdfwidgets/pdfwidgets.pro | 13 - src/plugins/imageformats/imageformats.pro | 2 - src/plugins/imageformats/pdf/pdf.pro | 13 - src/plugins/plugins.pro | 3 - src/plugins/qwebengineview/qwebengineview.pro | 11 - .../qwebengineview/qwebengineview_plugin.qrc | 5 - src/process/process.pro | 78 -- src/src.pro | 65 -- .../qwebengine_convert_dict.pro | 55 -- src/webenginequick/configure.json | 34 - src/webenginequick/module.pro | 78 -- src/webenginequick/ui/ui.pro | 20 - src/webenginequick/webenginequick.pro | 12 - src/webenginewidgets/configure.json | 28 - src/webenginewidgets/webenginewidgets.pro | 26 - 57 files changed, 4621 deletions(-) delete mode 100644 configure.pri delete mode 100644 mkspecs/features/default_pre.prf delete mode 100644 mkspecs/features/functions.prf delete mode 100644 mkspecs/features/gn_generator.prf delete mode 100644 src/buildtools/buildtools.pro delete mode 100644 src/buildtools/config/common.pri delete mode 100644 src/buildtools/config/functions.pri delete mode 100644 src/buildtools/config/linking.pri delete mode 100644 src/buildtools/config/linux.pri delete mode 100644 src/buildtools/config/mac_osx.pri delete mode 100644 src/buildtools/config/support.pri delete mode 100644 src/buildtools/config/windows.pri delete mode 100644 src/buildtools/configure.json delete mode 100644 src/buildtools/configure_host.pro delete mode 100644 src/buildtools/configure_target.pro delete mode 100644 src/buildtools/gn.pro delete mode 100644 src/buildtools/ninja.pro delete mode 100644 src/core/api/core_api.pro delete mode 100644 src/core/config/common.pri delete mode 100644 src/core/config/linux.pri delete mode 100644 src/core/config/mac_osx.pri delete mode 100644 src/core/config/windows.pri delete mode 100644 src/core/core.pro delete mode 100644 src/core/core_chromium.pri delete mode 100644 src/core/core_common.pri delete mode 100644 src/core/core_generator.pro delete mode 100644 src/core/core_gn_config.pri delete mode 100644 src/core/core_headers.pro delete mode 100644 src/core/core_module.pro delete mode 100644 src/core/core_project.pro delete mode 100644 src/core/gn_run.pro delete mode 100644 src/pdf/config/common.pri delete mode 100644 src/pdf/config/ios.pri delete mode 100644 src/pdf/configure.json delete mode 100644 src/pdf/gn_run.pro delete mode 100644 src/pdf/pdf.pro delete mode 100644 src/pdf/pdfcore.pro delete mode 100644 src/pdf/pdfcore_generator.pro delete mode 100644 src/pdf/pdfcore_prl_generator.pro delete mode 100644 src/pdf/quick/quick.pro delete mode 100644 src/pdf/quick/resources.qrc delete mode 100644 src/pdfwidgets/configure.json delete mode 100644 src/pdfwidgets/pdfwidgets.pro delete mode 100644 src/plugins/imageformats/imageformats.pro delete mode 100644 src/plugins/imageformats/pdf/pdf.pro delete mode 100644 src/plugins/plugins.pro delete mode 100644 src/plugins/qwebengineview/qwebengineview.pro delete mode 100644 src/plugins/qwebengineview/qwebengineview_plugin.qrc delete mode 100644 src/process/process.pro delete mode 100644 src/src.pro delete mode 100644 src/tools/qwebengine_convert_dict/qwebengine_convert_dict.pro delete mode 100644 src/webenginequick/configure.json delete mode 100644 src/webenginequick/module.pro delete mode 100644 src/webenginequick/ui/ui.pro delete mode 100644 src/webenginequick/webenginequick.pro delete mode 100644 src/webenginewidgets/configure.json delete mode 100644 src/webenginewidgets/webenginewidgets.pro diff --git a/configure.pri b/configure.pri deleted file mode 100644 index 02885ea52..000000000 --- a/configure.pri +++ /dev/null @@ -1,558 +0,0 @@ -include(src/buildtools/config/support.pri) -include(src/buildtools/config/functions.pri) - -# this must be done outside any function -QTWEBENGINE_SOURCE_TREE = $$PWD - -equals(QMAKE_HOST.os, Windows): EXE_SUFFIX = .exe - -defineTest(isPythonVersionSupported) { - python = $$system_quote($$system_path($$1)) - python_version = $$system('$$python -c "import sys; print(sys.version_info[0:3])"') - python_version ~= s/[()]//g - python_version = $$split(python_version, ',') - python_major_version = $$first(python_version) - greaterThan(python_major_version, 2) { - qtLog("Python version 3 is not supported by Chromium.") - return(false) - } - python_minor_version = $$member(python_version, 1) - python_patch_version = $$member(python_version, 2) - greaterThan(python_major_version, 1): greaterThan(python_minor_version, 6): greaterThan(python_patch_version, 4): return(true) - qtLog("Unsupported python version: $${python_major_version}.$${python_minor_version}.$${python_patch_version}.") - return(false) -} - -defineTest(qtConfTest_detectJumboBuild) { - mergeLimit = $$eval(config.input.merge_limit) - mergeLimit = $$find(mergeLimit, "\\d") - isEmpty(mergeLimit) { - win32: mergeLimit = 0 - else: mergeLimit = 8 - } - qtLog("Setting jumbo build merge batch limit to $${mergeLimit}.") - $${1}.merge_limit = $$mergeLimit - export($${1}.merge_limit) - $${1}.cache += merge_limit - export($${1}.cache) - - return(true) -} - -defineTest(qtConfReport_skipBuildWarning) { - $${1}() - !isEmpty(skipBuildReason):qtConfAddWarning($${skipBuildReason}) -} - -defineTest(qtConfReport_jumboBuild) { - mergeLimit = $$eval(cache.webengine-jumbo-build.merge_limit) - isEmpty(mergeLimit)|!greaterThan(mergeLimit,0) { - mergeLimit = "no" - } - qtConfReportPadded($${1}, $$mergeLimit) -} - -defineTest(qtConfTest_detectPython2) { - python = $$qtConfFindInPath("python2$$EXE_SUFFIX") - isEmpty(python) { - qtLog("'python2$$EXE_SUFFIX' not found in PATH. Checking for 'python$$EXE_SUFFIX'.") - python = $$qtConfFindInPath("python$$EXE_SUFFIX") - } - isEmpty(python) { - qtLog("'python$$EXE_SUFFIX' not found in PATH. Giving up.") - return(false) - } - !isPythonVersionSupported($$python) { - qtLog("A suitable Python 2 executable could not be located.") - return(false) - } - - # Make tests.python2.location available in configure.json. - $${1}.location = $$clean_path($$python) - export($${1}.location) - $${1}.cache += location - export($${1}.cache) - - return(true) -} - -defineReplace(qtConfFindGnuTool) { - equals(QMAKE_HOST.os, Windows) { - gnuwin32bindir = $$absolute_path($$QTWEBENGINE_SOURCE_TREE/../gnuwin32/bin) - gnuwin32toolpath = "$$gnuwin32bindir/$${1}" - exists($$gnuwin32toolpath): \ - return($$gnuwin32toolpath) - } - return($$qtConfFindInPath($$1)) -} - -defineTest(qtConfTest_detectGperf) { - gperf = $$qtConfFindGnuTool("gperf$$EXE_SUFFIX") - isEmpty(gperf) { - qtLog("Required gperf could not be found.") - return(false) - } - qtLog("Found gperf from path: $$gperf") - return(true) -} - -defineTest(qtConfTest_detectBison) { - bison = $$qtConfFindGnuTool("bison$$EXE_SUFFIX") - isEmpty(bison) { - qtLog("Required bison could not be found.") - return(false) - } - qtLog("Found bison from path: $$bison") - return(true) -} - -defineTest(qtwebengine_platformError) { - platformError = $$1 - export(platformError) -} - -defineTest(qtConfTest_detectPlatform) { - QT_FOR_CONFIG += gui-private - - linux:qtwebengine_isLinuxPlatformSupported() { - $${1}.platform = "linux" - } - win32:qtwebengine_isWindowsPlatformSupported() { - $${1}.platform = "windows" - } - macos:qtwebengine_isMacOsPlatformSupported() { - $${1}.platform = "macos" - } - ios:qtwebengine_isMacOsPlatformSupported() { - $${1}.platform = "ios" - } - - !isEmpty(platformError) { - qtLog("Platform not supported.") - $${1}.platformSupport = $$platformError - export($${1}.platformSupport) - $${1}.cache += platformSupport - export($${1}.cache) - return(false) - } - export($${1}.platformSupport) - return(true) -} - -defineTest(qtConfTest_detectArch) { - contains(QT_ARCH, "i386")|contains(QT_ARCH, "x86_64"): return(true) - contains(QT_ARCH, "arm")|contains(QT_ARCH, "arm64"): return(true) - contains(QT_ARCH, "mips"): return(true) - contains(QT_ARCH, "mips64"): return(true) - qtLog("Architecture not supported.") - return(false) -} - -defineTest(qtConfTest_detectFlex) { - flex = $$qtConfFindGnuTool("flex$$EXE_SUFFIX") - isEmpty(flex) { - qtLog("Required flex could not be found.") - return(false) - } - qtLog("Found flex from path: $$flex") - return(true) -} - -defineTest(qtConfTest_detectNinja) { - ninja = $$qtConfFindInPath($$(NINJA) "ninja$$EXE_SUFFIX") - !isEmpty(ninja) { - qtLog("Found ninja from path: $$ninja") - qtRunLoggedCommand("$$ninja --version", version)|return(false) - contains(version, "1\.([7-9]|1[0-9])\..*") { - $${1}.path = $$ninja - export($${1}.path) - $${1}.cache += path - export($${1}.cache) - return(true) - } - qtLog("Ninja version too old") - } - qtLog("Building own ninja") - return(false) -} - -defineTest(qtConfTest_detectGn) { - gn = $$qtConfFindInPath("gn$$EXE_SUFFIX") - !isEmpty(gn) { - qtRunLoggedCommand("$$gn --version", version)|return(false) - #accept all for now - contains(version, ".*"): return(true) - qtLog("Gn version too old") - } - qtLog("Building own gn") - return(false) -} - -defineTest(qtConfTest_detectNodeJS) { - nodejs = $$qtConfFindInPath("nodejs$$EXE_SUFFIX") - isEmpty(nodejs) { - qtLog("'nodejs$$EXE_SUFFIX' not found in PATH. Checking for 'node$$EXE_SUFFIX'.") - nodejs = $$qtConfFindInPath("node$$EXE_SUFFIX") - isEmpty(nodejs) { - qtLog("'node$$EXE_SUFFIX' not found in PATH. Giving up.") - return(false) - } - } - nodejs = $$system_quote($$system_path($$nodejs)) - !qtRunLoggedCommand("$$nodejs --version", version) { - qtLog("'$$nodejs' didn't run.") - return(false) - } - # at least version 10 - version10 = false - contains(version, "v([1-9][0-9])\..*"): version10 = true - - $${1}.version10 = $$version10 - export($${1}.version10) - $${1}.cache += version10 - export($${1}.cache) - return(true) -} - -defineTest(qtConfTest_detectEmbedded) { - lessThan(QT_MINOR_VERSION, 9) { - cross_compile: return(true) - return(false) - } - $$qtConfEvaluate("features.cross_compile"): return(true) - return(false) -} - -defineTest(qtConfTest_detectHostPkgConfig) { - PKG_CONFIG = $$qtConfPkgConfig(true) - isEmpty(PKG_CONFIG) { - qtLog("Could not find host pkg-config") - return(false) - } - qtLog("Found host pkg-config: $$PKG_CONFIG") - $${1}.path = $$PKG_CONFIG - export($${1}.path) - $${1}.cache += path - export($${1}.cache) - return(true) -} - -defineTest(qtConfTest_isSanitizerSupported) { - sanitizer_combo_supported = true - - sanitize_address { - asan_supported = false - linux-clang-libc++:isSanitizerSupportedOnLinux() { - asan_supported = true - } else:macos:isSanitizerSupportedOnMacOS() { - asan_supported = true - } - !$$asan_supported { - sanitizer_combo_supported = false - qtLog("An address sanitizer-enabled Qt WebEngine build can only be built on Linux or macOS using Clang and libc++.") - } - } - - sanitize_memory { - sanitizer_combo_supported = false - qtLog("A memory sanitizer-enabled Qt WebEngine build is not supported.") - } - - sanitize_undefined { - ubsan_supported = false - CONFIG(release, debug|release):!debug_and_release { - linux-clang-libc++:isSanitizerSupportedOnLinux() { - ubsan_supported = true - } else:macos:isSanitizerSupportedOnMacOS() { - ubsan_supported = true - } - } - !$$ubsan_supported { - sanitizer_combo_supported = false - qtLog("An undefined behavior sanitizer-enabled Qt WebEngine build can only be built on Linux or macOS using Clang and libc++ in release mode.") - } - } - - sanitize_thread { - tsan_supported = false - linux-clang-libc++:isSanitizerSupportedOnLinux() { - tsan_supported = true - } - !$$tsan_supported { - sanitizer_combo_supported = false - qtLog("A thread sanitizer-enabled Qt WebEngine build can only be built on Linux using Clang and libc++.") - } - } - - $$sanitizer_combo_supported: return(true) - return(false) -} - -defineTest(isSanitizerSupportedOnLinux) { - isSanitizerLinuxClangVersionSupported(): return(true) - return(false) -} - -defineTest(isSanitizerSupportedOnMacOS) { - isEmpty(QMAKE_APPLE_CLANG_MAJOR_VERSION) { - QTWEBENGINE_CLANG_IS_APPLE = false - } else { - QTWEBENGINE_CLANG_IS_APPLE = true - } - - $$QTWEBENGINE_CLANG_IS_APPLE:isSanitizerMacOSAppleClangVersionSupported(): return(true) - else:isSanitizerMacOSClangVersionSupported(): return(true) - return(false) -} - -defineTest(isSanitizerMacOSAppleClangVersionSupported) { - # Clang sanitizer suppression attributes work from Apple Clang version 7.3.0+. - greaterThan(QMAKE_APPLE_CLANG_MAJOR_VERSION, 7): return(true) - greaterThan(QMAKE_APPLE_CLANG_MINOR_VERSION, 2): return(true) - - qtLog("Using Apple Clang version $${QMAKE_APPLE_CLANG_MAJOR_VERSION}.$${QMAKE_APPLE_CLANG_MINOR_VERSION}.$${QMAKE_APPLE_CLANG_PATCH_VERSION}, but at least Apple Clang version 7.3.0 is required to build a sanitizer-enabled Qt WebEngine.") - return(false) -} - -defineTest(isSanitizerMacOSClangVersionSupported) { - # Clang sanitizer suppression attributes work from non-apple Clang version 3.7+. - greaterThan(QMAKE_CLANG_MAJOR_VERSION, 3): return(true) - greaterThan(QMAKE_CLANG_MINOR_VERSION, 6): return(true) - - qtLog("Using Clang version $${QMAKE_CLANG_MAJOR_VERSION}.$${QMAKE_CLANG_MINOR_VERSION}, but at least Clang version 3.7 is required to build a sanitizer-enabled Qt WebEngine.") - return(false) -} - -defineTest(isSanitizerLinuxClangVersionSupported) { - # Clang sanitizer suppression attributes work from Clang version 3.7+. - greaterThan(QMAKE_CLANG_MAJOR_VERSION, 3): return(true) - greaterThan(QMAKE_CLANG_MINOR_VERSION, 6): return(true) - - qtLog("Using Clang version $${QMAKE_CLANG_MAJOR_VERSION}.$${QMAKE_CLANG_MINOR_VERSION}, but at least Clang version 3.7 is required to build a sanitizer-enabled Qt WebEngine.") - return(false) -} - -defineReplace(qtConfFunc_isTestsInBuildParts) { - contains(QT_BUILD_PARTS, tests): return(true) - return(false) -} - -defineReplace(webEngineGetMacOSVersion) { - value = $$system("sw_vers -productVersion 2>/dev/null") - return($$value) -} - -defineReplace(webEngineGetMacOSSDKVersion) { - value = $$system("/usr/bin/xcodebuild -sdk $$QMAKE_MAC_SDK -version ProductVersion 2>/dev/null") - return($$value) -} - -defineReplace(webEngineGetMacOSClangVerboseVersion) { - output = $$system("$$QMAKE_CXX --version 2>/dev/null", lines) - value = $$first(output) - return($$value) -} - -defineTest(qtConfReport_macosToolchainVersion) { - arg = $$2 - contains(arg, "macosVersion"): report_message = $$webEngineGetMacOSVersion() - contains(arg, "xcodeVersion"): report_message = "$$QMAKE_XCODE_VERSION" - contains(arg, "clangVersion"): report_message = $$webEngineGetMacOSClangVerboseVersion() - contains(arg, "sdkVersion"): report_message = $$webEngineGetMacOSSDKVersion() - contains(arg, "deploymentTarget"): report_message = "$$QMAKE_MACOSX_DEPLOYMENT_TARGET" - !isEmpty(report_message): qtConfReportPadded($$1, $$report_message) -} - -defineTest(qtConfTest_isWindowsHostCompiler64) { - win_host_arch = $$(VSCMD_ARG_HOST_ARCH) - isEmpty(win_host_arch): return(true) - contains(win_host_arch,"x64"): return(true) - qtLog("Required 64-bit cross-building or native toolchain was not detected.") - return(false) -} - -# Fixme QTBUG-71772 -defineTest(qtConfTest_hasThumbFlag) { - FLAG = $$qtwebengine_extractCFlag("-mthumb") - !isEmpty(FLAG): return(true) - FLAG = $$qtwebengine_extractCFlag("-marm") - !isEmpty(FLAG): return(false) - - MARCH = $$qtwebengine_extractCFlag("-march=.*") - MARMV = $$replace(MARCH, "armv",) - !isEmpty(MARMV) { - MARMV = $$split(MARMV,) - MARMV = $$member(MARMV, 0) - } - if (isEmpty(MARMV) | lessThan(MARMV, 7)): return(false) - # no flag assume mthumb - return(true) -} - -defineTest(qtConfTest_detectSubmodule) { - isEmpty(QTWEBENGINE_ROOT) { - # topLevel build , add poor man's workaround - QTWEBENGINE_ROOT=$$PWD/../../../qtwebengine - } - !exists($$QTWEBENGINE_ROOT/src/3rdparty/chromium):return(false) - return(true) -} - -defineTest(qtConfTest_detectNoWhitespace) { - WSPC = $$find(OUT_PWD, \\s) - !isEmpty(WSPC):return(false) - return(true) -} - -defineTest(qtwebengine_confCheckWebEngineCoreError) { - QT_FOR_CONFIG += buildtools-private gui-private - return($$qtwebengine_checkWebEngineCoreError()) -} - -defineTest(qtwebengine_confCheckPdfError) { - QT_FOR_CONFIG += buildtools-private gui-private - return($$qtwebengine_checkPdfError()) -} - -defineTest(qtwebengine_isLinuxPlatformSupported) { - !gcc|intel_icc { - qtwebengine_platformError("requires clang or GCC.") - return(false) - } - gcc:!clang:!qtwebengine_isGCCVersionSupported(): return(false) - gcc:!qtConfig(c++14) { - qtwebengine_platformError("requires c++14 support.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_isWindowsPlatformSupported) { - winrt { - qtwebengine_platformError("for WinRT is not supported.") - return(false) - } - qtwebengine_isBuildingOnWin32() { - qtwebengine_platformError("must be built on a 64-bit machine.") - return(false) - } - !msvc|intel_icl { - qtwebengine_platformError("requires MSVC or Clang (MSVC mode).") - return(false) - } - !qtwebengine_isMinWinSDKVersion(10, 19041): { - qtwebengine_platformError("requires a Windows SDK version 10.0.19041 or newer.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_isMacOsPlatformSupported) { - !qtwebengine_isMinXcodeVersion(10, 0, 0) { - qtwebengine_platformError("requires at least version 10.0.0, but using Xcode version $${QMAKE_XCODE_VERSION}.") - return(false) - } - !clang|intel_icc { - qtwebengine_platformError("requires Clang.") - return(false) - } - # We require macOS 10.13 (darwin version 17.0.0) or newer. - darwin_major_version = $$section(QMAKE_HOST.version, ., 0, 0) - lessThan(darwin_major_version, 17) { - qtwebengine_platformError("requires macOS version 10.13 or newer.") - return(false) - } - !qtwebengine_isMinOSXSDKVersion(10, 13): { - qtwebengine_platformError("requires a macOS SDK version of 10.13 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_isGCCVersionSupported) { - # Keep in sync with src/webenginequick/doc/src/qtwebengine-platform-notes.qdoc - lessThan(QMAKE_GCC_MAJOR_VERSION, 5) { - qtwebengine_platformError("requires at least gcc version 5, but using gcc version $${QMAKE_GCC_MAJOR_VERSION}.$${QMAKE_GCC_MINOR_VERSION}.") - return(false) - } - - equals(QMAKE_GCC_MAJOR_VERSION, 5): equals(QMAKE_GCC_MINOR_VERSION, 4): equals(QMAKE_GCC_PATCH_VERSION, 0) { - qtwebengine_platformError("gcc version 5.4.0 is blacklisted due to internal compiler errors.") - return(false) - } - - return(true) -} - -defineTest(qtwebengine_isBuildingOnWin32) { - # The check below is ugly, but necessary, as it seems to be the only reliable way to detect if the host - # architecture is 32 bit. QMAKE_HOST.arch does not work as it returns the architecture that the toolchain - # is building for, not the system's actual architecture. - PROGRAM_FILES_X86 = $$(ProgramW6432) - isEmpty(PROGRAM_FILES_X86): return(true) - return(false) -} - -defineTest(qtwebengine_isMinOSXSDKVersion) { - requested_major = $$1 - requested_minor = $$2 - requested_patch = $$3 - isEmpty(requested_patch): requested_patch = 0 - WEBENGINE_OSX_SDK_PRODUCT_VERSION = $$system("/usr/bin/xcodebuild -sdk $$QMAKE_MAC_SDK -version ProductVersion 2>/dev/null") - export(WEBENGINE_OSX_SDK_PRODUCT_VERSION) - isEmpty(WEBENGINE_OSX_SDK_PRODUCT_VERSION) { - qtwebengine_platformError("requires SDK product version, but could not resolve it for \'$$QMAKE_MAC_SDK\'.") - return(false) - } - major_version = $$section(WEBENGINE_OSX_SDK_PRODUCT_VERSION, ., 0, 0) - minor_version = $$section(WEBENGINE_OSX_SDK_PRODUCT_VERSION, ., 1, 1) - patch_version = $$section(WEBENGINE_OSX_SDK_PRODUCT_VERSION, ., 2, 2) - isEmpty(patch_version): patch_version = 0 - - greaterThan(major_version, $$requested_major):return(true) - equals(major_version, $$requested_major):greaterThan(minor_version, $$requested_minor):return(true) - equals(major_version, $$requested_major):equals(minor_version, $$requested_minor):!lessThan(patch_version, $$requested_patch):return(true) - - return(false) -} - -defineTest(qtwebengine_isMinXcodeVersion) { - requested_major = $$1 - requested_minor = $$2 - requested_patch = $$3 - isEmpty(requested_minor): requested_minor = 0 - isEmpty(requested_patch): requested_patch = 0 - target_var = QMAKE_XCODE_VERSION - major_version = $$section($$target_var, ., 0, 0) - minor_version = $$section($$target_var, ., 1, 1) - patch_version = $$section($$target_var, ., 2, 2) - isEmpty(minor_version): minor_version = 0 - isEmpty(patch_version): patch_version = 0 - - greaterThan(major_version, $$requested_major):return(true) - equals(major_version, $$requested_major):greaterThan(minor_version, $$requested_minor):return(true) - equals(major_version, $$requested_major):equals(minor_version, $$requested_minor):!lessThan(patch_version, $$requested_patch):return(true) - - return(false) -} - -defineTest(qtwebengine_isMinWinSDKVersion) { - requested_major = $$1 - requested_minor = $$2 - WIN_SDK_VERSION = $$(WindowsSDKVersion) - - isEmpty(WIN_SDK_VERSION)|equals(WIN_SDK_VERSION, "\\") { - qtwebengine_platformError("requires Windows SDK version, but could not detect it (\'WindowsSDKVersion\' environment variable is not set).") - return(false) - } - - # major.0.minor - major_version = $$section(WIN_SDK_VERSION, ., 0, 0) - minor_version = $$section(WIN_SDK_VERSION, ., 2, 2) - - greaterThan(major_version, $$requested_major):return(true) - equals(major_version, $$requested_major):greaterThan(minor_version, $$requested_minor):return(true) - equals(major_version, $$requested_major):equals(minor_version, $$requested_minor)::return(true) - - return(false) -} diff --git a/mkspecs/features/default_pre.prf b/mkspecs/features/default_pre.prf deleted file mode 100644 index c7440fa7a..000000000 --- a/mkspecs/features/default_pre.prf +++ /dev/null @@ -1,20 +0,0 @@ -QTWEBENGINEPROCESS_NAME_RELEASE = QtWebEngineProcess -debug_and_release { - QTWEBENGINEPROCESS_NAME_DEBUG = $$join(QTWEBENGINEPROCESS_NAME_RELEASE,,,d) -} else { - QTWEBENGINEPROCESS_NAME_DEBUG = $$QTWEBENGINEPROCESS_NAME_RELEASE -} -build_pass:CONFIG(debug, debug|release) { - QTWEBENGINEPROCESS_NAME = $$QTWEBENGINEPROCESS_NAME_DEBUG -} else { - QTWEBENGINEPROCESS_NAME = $$QTWEBENGINEPROCESS_NAME_RELEASE -} - -# Location of sync.profile -MODULE_BASE_DIR = $$QTWEBENGINE_ROOT - -EOL = $$escape_expand(\\n) - -# Call the original default_pre. -load(default_pre) -load(functions) diff --git a/mkspecs/features/functions.prf b/mkspecs/features/functions.prf deleted file mode 100644 index 6c3ef3cbc..000000000 --- a/mkspecs/features/functions.prf +++ /dev/null @@ -1,138 +0,0 @@ -include($$QTWEBENGINE_ROOT/src/buildtools/config/support.pri) - -defineReplace(getConfigDir) { - CONFIG(release, debug|release):return("release") - return("debug") -} - -defineReplace(getChromiumSrcDir) { - exists($$QTWEBENGINE_ROOT/.git): git_chromium_src_dir = $$system("git config qtwebengine.chromiumsrcdir") - # Fall back to the snapshot path if git does not know about chromium sources (i.e. init-repository.py has not been used) - isEmpty(git_chromium_src_dir): git_chromium_src_dir = "src/3rdparty/chromium" - return($$git_chromium_src_dir) -} - -defineReplace(which) { - out = $$1 - win32 { - command = $$split(out, " ") - executable = $$first(command) - # Return the first match only - out = $$system("((for /f \"usebackq delims=\" %i in (`where $$executable 2^> NUL`) do @if not defined _endwhich (@echo %i & set _endwhich=true)) & set _endwhich=)") - isEmpty(out) { - message($$executable not found) - out = $$executable - } - for(arg, command): !equals(arg, $$executable): out += $$arg - } else:unix { - command = $$split(out, " ") - executable = $$first(command) - out = $$system("which $$executable 2>/dev/null") - isEmpty(out) { - message($$executable not found) - out = $$executable - } - for(arg, command): !equals(arg, $$executable): out += $$arg - } - return($$out) -} - -# Returns the unquoted path to the python executable. -defineReplace(pythonPath) { - isEmpty(QMAKE_PYTHON2) { - # Fallback for building QtWebEngine with Qt < 5.8 - QMAKE_PYTHON2 = python - } - return($$QMAKE_PYTHON2) -} - -# Returns the python executable for use with shell / make targets. -defineReplace(pythonPathForShell) { - return($$shell_quote($$shell_path($$pythonPath()))) -} - -# Returns the python executable for use with $$system() -defineReplace(pythonPathForSystem) { - return($$system_quote($$system_path($$pythonPath()))) -} - -defineReplace(ninjaPath) { - isEmpty(QMAKE_NINJA) { - src_3rd_party_dir = $$absolute_path("$${getChromiumSrcDir()}/../", "$$QTWEBENGINE_ROOT") - out = $$shadowed($$absolute_path(ninja/ninja, $$src_3rd_party_dir)) - win32: out = $${out}.exe - QMAKE_NINJA = $$out - } - return($$QMAKE_NINJA) -} - -defineReplace(gnPath) { - src_3rd_party_dir = $$absolute_path("$${getChromiumSrcDir()}/../", "$$QTWEBENGINE_ROOT") - out = $$shadowed($$absolute_path(gn/out/Release/gn, $$src_3rd_party_dir)) - - win32: out = $${out}.exe - return($$out) -} - -defineReplace(gnWebEngineArgs) { - linux { - include($$QTWEBENGINE_ROOT/src/buildtools/config/linux.pri) - include($$QTWEBENGINE_ROOT/src/core/config/linux.pri) - } - macos { - include($$QTWEBENGINE_ROOT/src/buildtools/config/mac_osx.pri) - include($$QTWEBENGINE_ROOT/src/core/config/mac_osx.pri) - } - win32 { - include($$QTWEBENGINE_ROOT/src/buildtools/config/windows.pri) - include($$QTWEBENGINE_ROOT/src/core/config/windows.pri) - } - isEmpty(gn_args): error(No gn_args found please make sure you have valid configuration.) - return($$gn_args) -} - -defineReplace(gnPdfArgs) { - linux: include($$QTWEBENGINE_ROOT/src/buildtools/config/linux.pri) - macos: include($$QTWEBENGINE_ROOT/src/buildtools/config/mac_osx.pri) - ios: include($$QTWEBENGINE_ROOT/src/pdf/config/ios.pri) - win32: include($$QTWEBENGINE_ROOT/src/buildtools/config/windows.pri) - include($$QTWEBENGINE_ROOT/src/pdf/config/common.pri) - isEmpty(gn_args): error(No gn_args found please make sure you have valid configuration.) - return($$gn_args) -} - -defineReplace(gnArch) { - qtArch = $$1 - contains(qtArch, "i386"): return(x86) - contains(qtArch, "x86_64"): return(x64) - contains(qtArch, "arm"): return(arm) - contains(qtArch, "arm64"): return(arm64) - contains(qtArch, "mips"): return(mipsel) - contains(qtArch, "mips64"): return(mips64el) - contains(qtArch, "mips64el"): return(mips64el) - return(unknown) -} - -defineReplace(gnOS) { - macos: return(mac) - win32: return(win) - linux: return(linux) - error(Unsupported platform) - return(unknown) -} - -defineReplace(pkgConfigHostExecutable) { - wrapper_name = $$OUT_PWD/pkg-config-host_wrapper.sh - wrapper_cmd = $$QMAKE_PKG_CONFIG_HOST - isEmpty(wrapper_cmd): wrapper_cmd = pkg-config - wrapper_content = \ - "$$LITERAL_HASH!/bin/sh" \ - "unset PKG_CONFIG_LIBDIR" \ - "unset PKG_CONFIG_SYSROOT_DIR" \ - "exec $$wrapper_cmd \"$@\"" - !build_pass:!write_file($$wrapper_name, wrapper_content, exe): error() - QMAKE_DISTCLEAN += $$wrapper_name - export(QMAKE_DISTCLEAN) - return($$system_quote($$system_path($$wrapper_name))) -} - diff --git a/mkspecs/features/gn_generator.prf b/mkspecs/features/gn_generator.prf deleted file mode 100644 index bbaed2331..000000000 --- a/mkspecs/features/gn_generator.prf +++ /dev/null @@ -1,268 +0,0 @@ -load(moc) -load(resources) - -defineReplace(getTargetType) { - equals(TEMPLATE, "app"):return("executable") - equals(TEMPLATE, "lib") { - CONFIG(static): return("static_library") - return("shared_library") - } - return("none") -} - -defineReplace(filter_flag_values) { - value_to_check = $$1 - if (macos|ios):equals(value_to_check, "$(EXPORT_ARCH_ARGS)") { - # EXPORT_ARCH_ARGS comes from qtbase/mkspecs/features/mac/default_post.prf which is a way - # to figure out the architectures to pass to the compiler at Makefile time. Because this - # variable expansion is not supported by GN, we filter it out. GN takes care of assigning - # the architecture itself. - return("") - } - if (ios) { - equals(value_to_check, "$(EXPORT_QMAKE_XARCH_LFLAGS)"): return("") - equals(value_to_check, "$(EXPORT_QMAKE_XARCH_CFLAGS)"): return("") - } - - return($$value_to_check) -} - -isEmpty(GN_FILE): GN_FILE = $$system_path($$_PRO_FILE_PWD_/BUILD.gn) -isEmpty(GN_RUN_BINARY_SCRIPT): GN_RUN_BINARY_SCRIPT = "//build/gn_run_binary.py" -isEmpty(GN_FIND_MOCABLES_SCRIPT): GN_FIND_MOCABLES_SCRIPT = "//build/gn_find_mocables.py" - -# MOC SETUP - -GN_CONTENTS += "moc_source_h_files = exec_script(\"$$GN_FIND_MOCABLES_SCRIPT\"," -GN_CONTENTS += " [" -for (headerfile, HEADERS): GN_CONTENTS += " \"$$GN_SRC_DIR/$$headerfile\"," -GN_CONTENTS += " ], \"list lines\", [\"$$system_path($$_PRO_FILE_)\"]"\ - ")" -GN_CONTENTS += "moc_source_cpp_files = exec_script(\"$$GN_FIND_MOCABLES_SCRIPT\"," -GN_CONTENTS += " [" -for (sourcefile, SOURCES): GN_CONTENTS += " \"$$GN_SRC_DIR/$$sourcefile\"," -GN_CONTENTS += " ], \"list lines\", [\"$$system_path($$_PRO_FILE_)\"]"\ - ")" - -DEFINES_LIST = $$join(DEFINES, " -D", "-D") -INCLUDE_LIST = $$join(INCLUDEPATH, " -I", "-I") - -# we don't generate a moc_predef file yet. -MOC_PREDEF_FILE = -MOC_COMMAND = $$clean_path($$mocCmdBase()) -MOC_COMMAND = $$replace(MOC_COMMAND, $$re_escape("$(DEFINES)"), $$DEFINES_LIST) -MOC_COMMAND = $$replace(MOC_COMMAND, $$re_escape("$(INCPATH)"), $$INCLUDE_LIST) -MOC_COMMAND = $$eval($$list($$MOC_COMMAND)) - -GN_CONTENTS += "if (moc_source_h_files != []) {" -GN_CONTENTS += " action_foreach(\"generate_h_mocs\") {"\ - " script = \"$$GN_RUN_BINARY_SCRIPT\"" -GN_CONTENTS += " sources = moc_source_h_files" \ - " outputs = [ \"$target_gen_dir/.moc/moc_{{source_name_part}}.cpp\" ]" -GN_CONTENTS += " inputs = [ \"$$system_path($$_PRO_FILE_)\" ]" \ - " args = [" -for(token, MOC_COMMAND): GN_CONTENTS += " \"$$replace(token,\",\\\")\"," -GN_CONTENTS += " \"{{source}}\"," \ - " \"-o\"," \ - " rebase_path(\"$target_gen_dir/.moc/moc_{{source_name_part}}.cpp\")"\ - " ]" -GN_CONTENTS += " }" -GN_CONTENTS += "}" -GN_CONTENTS += "if (moc_source_cpp_files != []) {" -GN_CONTENTS += " action_foreach(\"generate_cpp_mocs\") {"\ - " script = \"$$GN_RUN_BINARY_SCRIPT\"" -GN_CONTENTS += " sources = moc_source_cpp_files" \ - " outputs = [ \"$target_gen_dir/.moc/{{source_name_part}}.moc\" ]" -GN_CONTENTS += " inputs = [ \"$$system_path($$_PRO_FILE_)\" ]" \ - " args = [" -for(token, MOC_COMMAND): GN_CONTENTS += " \"$$replace(token,\",\\\")\"," -GN_CONTENTS += " \"{{source}}\"," \ - " \"-o\"," \ - " rebase_path(\"$target_gen_dir/.moc/{{source_name_part}}.moc\")"\ - " ]" -GN_CONTENTS += " }" -GN_CONTENTS += "}" - -# RESOURCES SETUP - -CLEAN_QMAKE_RCC = $$clean_path($$QMAKE_RCC) - -!isEmpty(RESOURCES) { - GN_CONTENTS += "action_foreach(\"generate_resources\") {"\ - " script = \"$$GN_RUN_BINARY_SCRIPT\"" - GN_CONTENTS += " sources = [" - for (sourcefile, RESOURCES): GN_CONTENTS += " \"$$GN_SRC_DIR/$$sourcefile\"," - GN_CONTENTS += " ]" \ - " outputs = [ \"$target_gen_dir/.rcc/qrc_{{source_name_part}}.cpp\" ]" - GN_CONTENTS += " inputs = [ \"$$system_path($$_PRO_FILE_)\" ]" \ - " args = [" \ - " \"$$replace(CLEAN_QMAKE_RCC,\",\\\")\"," - for(resource_flag, $$QMAKE_RESOURCE_FLAGS): GN_CONTENTS += " \"$$resource_flag\"" - GN_CONTENTS += " \"-name\"," \ - " \"{{source_name_part}}\"," \ - " \"{{source}}\"," \ - " \"-o\"," \ - " rebase_path(\"$target_gen_dir/.rcc/qrc_{{source_name_part}}.cpp\")"\ - " ]" - GN_CONTENTS += "}" -} - -# CONFIG SETUP - -# Chromium already enables warnings, so enabling them again will just -# re-enable all the warnings disabled by Chromium. -QMAKE_CFLAGS -= $$QMAKE_CFLAGS_WARN_ON -QMAKE_CXXFLAGS -= $$QMAKE_CXXFLAGS_WARN_ON - -GN_CONTENTS += "config(\"$${TARGET}_config\") {" -!isEmpty(QMAKE_CFLAGS) { - GN_CONTENTS += " cflags = [" - for(flag, QMAKE_CFLAGS): GN_CONTENTS += " \"$$filter_flag_values($$flag)\"," - GN_CONTENTS += " ]" -} - -!isEmpty(QMAKE_FRAMEWORKPATH) { - GN_CONTENTS += " cflags += [" - for(path, QMAKE_FRAMEWORKPATH): GN_CONTENTS += " \"-F$$path\"," - GN_CONTENTS += " ]" -} - -# Chromium activates this, but we need it off to be able to compile QFlags -clang_cl { - QMAKE_CXXFLAGS += "-fno-complete-member-pointers" -} - -!isEmpty(QMAKE_CXXFLAGS) { - GN_CONTENTS += " cflags_cc = [" - for(flag, QMAKE_CXXFLAGS): GN_CONTENTS += " \"$$filter_flag_values($$flag)\"," - GN_CONTENTS += " ]" -} - -GN_CONTENTS += " defines = [" -# Remove single quotes around function macro defines, so that GN doesn't escape them, thus breaking -# the macro. -# Also add a layer of escaping for double quotes. -for (define, DEFINES): { - define = $$replace(define,\",\\\") - define = $$replace(define,\',) - GN_CONTENTS += " \"$$define\"," -} -GN_CONTENTS += " ]" - -GN_CONTENTS += " include_dirs = [" -for (path, INCLUDEPATH): GN_CONTENTS += " \"$$path\"," -GN_CONTENTS += " rebase_path(\"$target_gen_dir/.moc/\")," -GN_CONTENTS += " \"$$QMAKESPEC\"" -GN_CONTENTS += " ]" - -GN_CONTENTS += " ldflags = [" -for (flag, QMAKE_LFLAGS): GN_CONTENTS += " \"$$filter_flag_values($$flag)\"," -for (flag, GN_FLAGS): GN_CONTENTS += " \"$$flag\"," -!isEmpty(QMAKE_RPATHDIR) { - for (rpath, QMAKE_RPATHDIR) { - unix:!macos: GN_CONTENTS += " \"-Wl,-rpath=$${rpath}\"," - } -} -!isEmpty(QMAKE_RPATHLINKDIR): GN_CONTENTS += " \"-Wl,-rpath-link=$${QMAKE_RPATHLINKDIR}\"," -GN_CONTENTS += " ]" - -GN_CONTENTS += " lib_dirs = [" -lib_dirs = $$find(LIBS, ^-L.*) -lib_dirs = $$unique(lib_dirs) -for (lib_dir, lib_dirs): GN_CONTENTS += " \"$$replace(lib_dir, -L, )\"," -GN_CONTENTS += " ]" - -GN_CONTENTS += "}" - -# TARGET SETUP - -TARGET_TYPE = $$getTargetType() - -GN_CONTENTS += "$${TARGET_TYPE}(\"$$TARGET\") {" -!isEmpty(GN_CREATE_PRI): GN_CONTENTS += " create_pri_file = $$GN_CREATE_PRI" -!isEmpty(GN_IMPORTS) { - for (imp, GN_IMPORTS): GN_CONTENTS += " import(\"$$imp\")" -} - -GN_CONTENTS += " configs += [ \":$${TARGET}_config\" ]" -!isEmpty(GN_PRECOMPILED_HEADERS): GN_CONTENTS += " configs += [ \"//build/config:precompiled_headers\" ]" - -# Source files to compile -GN_CONTENTS += " sources = [" -for (sourcefile, SOURCES): GN_CONTENTS += " \"$$GN_SRC_DIR/$$sourcefile\"," -for (headerfile, HEADERS): GN_CONTENTS += " \"$$GN_SRC_DIR/$$headerfile\"," -GN_CONTENTS += " ]" - -# Add Sources generated by rcc from qrc files. -!isEmpty(RESOURCES): GN_CONTENTS += " sources += get_target_outputs(\":generate_resources\")" - -GN_CONTENTS += " if (!defined(libs)) {"\ - " libs = []"\ - " }" -GN_CONTENTS += " libs += [" -for (lib, GN_LIBS): GN_CONTENTS += " \"$$lib\"," -libs = $$find(LIBS, ^-l.*) -libs = $$unique(libs) -for (lib, libs): GN_CONTENTS += " \"$$replace(lib, -l, )\"," -GN_CONTENTS += " ]" - -GN_CONTENTS += " if (!defined(deps)) {"\ - " deps = []"\ - " }" - -!isEmpty(RESOURCES) { - GN_CONTENTS += " deps += [" - GN_CONTENTS += " \":generate_resources\"," - GN_CONTENTS += " ]" -} - -# Remove the default no_rtti config for our own cpp files, thus leaving the decision -# to the compiler's defaults. This is consistent with how qtbase does it. -# Unless the user explicitly configured Qt with a different RTTI setting. -# Windows only for now, because macOS (and presumably Linux) does not support -# partial rtti info (e.g. rtti info present for derived class, but not base class), and the -# qtbase rtti feature affects only Windows. -win32 { - GN_CONTENTS += " configs -= [\"//build/config/compiler:no_rtti\"]" - CONFIG(rtti_off): GN_CONTENTS += " configs += [\"//build/config/compiler:no_rtti\"]" - CONFIG(rtti): GN_CONTENTS += " configs += [\"//build/config/compiler:rtti\"]" -} -gcc:!qtConfig(reduce_exports) { - GN_CONTENTS += " configs -= [\"//build/config/gcc:symbol_visibility_hidden\"]" -} - -GN_CONTENTS += " if (moc_source_h_files != []) {" -GN_CONTENTS += " deps += [" -GN_CONTENTS += " \":generate_h_mocs\"," -GN_CONTENTS += " ]" -# Add moc output files to compile -GN_CONTENTS += " sources += get_target_outputs(\":generate_h_mocs\")" -GN_CONTENTS += " }" -GN_CONTENTS += " if (moc_source_cpp_files != []) {" -GN_CONTENTS += " deps += [" -GN_CONTENTS += " \":generate_cpp_mocs\"," -GN_CONTENTS += " ]" -GN_CONTENTS += " }" -GN_CONTENTS += "}" -!isEmpty(GN_CORE_INCLUDE_DIRS) { - GN_CONTENTS += " if (!defined(core_include_dirs)) {"\ - " core_include_dirs = []"\ - " }" - GN_CONTENTS += "core_include_dirs += [" - for (inc, GN_CORE_INCLUDE_DIRS): GN_CONTENTS += " \"$$inc\"," - GN_CONTENTS += "]" -} - -!isEmpty(GN_INCLUDES) { - for (inc, GN_INCLUDES): GN_CONTENTS += $$cat($$inc,lines) -} - -build_pass|!debug_and_release: write_file($$GN_FILE, GN_CONTENTS) - -# The generated Makefile shouldn't build anything by itself, just re-run qmake if necessary -TEMPLATE = aux -SOURCES = -HEADERS = -RESOURCES = - -QMAKE_DISTCLEAN += $$GN_FILE diff --git a/src/buildtools/buildtools.pro b/src/buildtools/buildtools.pro deleted file mode 100644 index 1366d18d5..000000000 --- a/src/buildtools/buildtools.pro +++ /dev/null @@ -1,20 +0,0 @@ -TEMPLATE = subdirs - -linux { - # configure_host.pro and configure_target.pro are phony pro files that - # extract things like compiler and linker from qmake. - # Only used on Linux as it is only important for cross-building and alternative compilers. - configure_host.file = configure_host.pro - configure_target.file = configure_target.pro - configure_target.depends = configure_host - gn.depends += configure_target - - SUBDIRS += configure_host configure_target -} - -ninja.file = ninja.pro -SUBDIRS += ninja - -gn.file = gn.pro -gn.depends = ninja -SUBDIRS += gn diff --git a/src/buildtools/config/common.pri b/src/buildtools/config/common.pri deleted file mode 100644 index cf990c79b..000000000 --- a/src/buildtools/config/common.pri +++ /dev/null @@ -1,113 +0,0 @@ -# Shared configuration for all our supported platforms -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) -QT_FOR_CONFIG += buildtools-private webenginecore webenginecore-private - -gn_args += \ - use_qt=true \ - init_stack_vars=false \ - is_component_build=false \ - is_shared=true \ - enable_debugallocation=false \ - enable_media_remoting=false \ - enable_message_center=false \ - enable_nacl=false \ - enable_remoting=false \ - enable_reporting=false \ - enable_resource_allowlist_generation=false \ - enable_swiftshader=false \ - enable_swiftshader_vulkan=false \ - angle_enable_swiftshader=false \ - enable_web_speech=false \ - enable_widevine=true \ - forbid_non_component_debug_builds=false \ - has_native_accessibility=false \ - safe_browsing_mode=0 \ - skia_use_dawn=false \ - toolkit_views=false \ - treat_warnings_as_errors=false \ - use_allocator_shim=false \ - use_allocator=\"none\" \ - use_custom_libcxx=false \ - chrome_pgo_phase=0 \ - enable_hangout_services_extension=true - -# Closure compile requires Java -gn_args += \ - optimize_webui=false \ - enable_js_type_check=false - -# We always embed v8 startup data currently -gn_args += \ - v8_use_external_startup_data=false - -# Uses special flags for clang not available on xcode, and messes up gdb debugging too. -gn_args += \ - strip_absolute_paths_from_debug_symbols=false - -greaterThan(QMAKE_JUMBO_MERGE_LIMIT,0) { - gn_args += \ - use_jumbo_build=true \ - jumbo_file_merge_limit=$$QMAKE_JUMBO_MERGE_LIMIT -} - -!greaterThan(QMAKE_JUMBO_MERGE_LIMIT,8) { - gn_args += jumbo_build_excluded="[\"browser\"]" -} - -precompile_header { - gn_args += enable_precompiled_headers=true -} else { - gn_args += enable_precompiled_headers=false -} - -CONFIG(release, debug|release):!qtConfig(webengine-developer-build) { - gn_args += is_official_build=true -} else { - gn_args += is_official_build=false - !qtConfig(webengine-developer-build): gn_args += is_unsafe_developer_build=false - # Just doesn't work in many configurations: - gn_args += from_here_uses_location_builtins=false -} - -CONFIG(release, debug|release) { - gn_args += is_debug=false - force_debug_info { - # Level 1 is not enough to generate all Chromium debug symbols on Windows - msvc: gn_args += symbol_level=2 - else: gn_args += symbol_level=1 - } else { - gn_args += symbol_level=0 - } -} - -CONFIG(debug, debug|release) { - gn_args += is_debug=true - gn_args += use_debug_fission=false - # MSVC requires iterator debug to always match and Qt leaves it default on. - msvc: gn_args += enable_iterator_debugging=true - - # We also can not have optimized V8 binaries for MSVC as iterator debugging - # would mismatch. - msvc|v8base_debug: gn_args += v8_optimized_debug=false -} - -!webcore_debug: gn_args += blink_symbol_level=0 -!v8base_debug: gn_args += remove_v8base_debug_symbols=true - -# Compiling with -Os makes a huge difference in binary size -optimize_size: gn_args += optimize_for_size=true - -# We don't want to apply sanitizer options to the build tools (GN, dict convert, etc). -!host_build { - sanitize_address: gn_args += is_asan=true - sanitize_thread: gn_args += is_tsan=true - sanitize_memory: gn_args += is_msan=true - sanitize_undefined: gn_args += is_ubsan=true is_ubsan_vptr=true -} - -ccache { - gn_args += cc_wrapper=\"ccache\" -} - -qtConfig(force_asserts): gn_args += dcheck_always_on=true diff --git a/src/buildtools/config/functions.pri b/src/buildtools/config/functions.pri deleted file mode 100644 index 8c11faa16..000000000 --- a/src/buildtools/config/functions.pri +++ /dev/null @@ -1,8 +0,0 @@ -defineReplace(qtwebengine_extractCFlag) { - CFLAGS = $$QMAKE_CC $$QMAKE_CFLAGS - OPTION = $$find(CFLAGS, $$1) - OPTION = $$split(OPTION, =) - PARAM = $$member(OPTION, 1) - !isEmpty(PARAM): return ($$PARAM) - return ($$OPTION) -} diff --git a/src/buildtools/config/linking.pri b/src/buildtools/config/linking.pri deleted file mode 100644 index f295e2c66..000000000 --- a/src/buildtools/config/linking.pri +++ /dev/null @@ -1,77 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -QT_FOR_CONFIG += buildtools-private - -linking_pri = $$OUT_PWD/$$getConfigDir()/$${TARGET}.pri - -!include($$linking_pri) { - error("Could not find the linking information that gn should have generated.") -} - -# Do not precompile any headers. We are only interested in the linker step. -PRECOMPILED_HEADER = - -isEmpty(NINJA_OBJECTS): error("Missing object files from linking pri.") -isEmpty(NINJA_LFLAGS): error("Missing linker flags from linking pri") -isEmpty(NINJA_ARCHIVES): error("Missing archive files from linking pri") -isEmpty(NINJA_LIBS): error("Missing library files from linking pri") -NINJA_OBJECTS = $$eval($$list($$NINJA_OBJECTS)) -# Do manual response file linking for macOS and Linux - -RSP_OBJECT_FILE = $$OUT_PWD/$$getConfigDir()/$${TARGET}_o.rsp -for(object, NINJA_OBJECTS): RSP_O_CONTENT += $$object -write_file($$RSP_OBJECT_FILE, RSP_O_CONTENT) -RSP_ARCHIVE_FILE = $$OUT_PWD/$$getConfigDir()/$${TARGET}_a.rsp -for(archive, NINJA_ARCHIVES): RSP_A_CONTENT += $$archive -write_file($$RSP_ARCHIVE_FILE, RSP_A_CONTENT) - -if(macos|ios) { - !static { - QMAKE_LFLAGS += -Wl,-filelist,$$shell_quote($${RSP_OBJECT_FILE}) - QMAKE_LFLAGS += @$${RSP_ARCHIVE_FILE} - } else { - OBJECTS += $$NINJA_OBJECTS - LIBS_PRIVATE += $${NINJA_ARCHIVES} - } -} - -linux { - !static { - QMAKE_LFLAGS += @$${RSP_OBJECT_FILE} - QMAKE_LFLAGS += -Wl,--start-group @$${RSP_ARCHIVE_FILE} -Wl,--end-group - } else { - OBJECTS += $$NINJA_OBJECTS - LIBS_PRIVATE += -Wl,--start-group $${NINJA_ARCHIVES} -Wl,--end-group - } -} - -win32 { - !static { - QMAKE_LFLAGS += @$${RSP_OBJECT_FILE} - QMAKE_LFLAGS += @$${RSP_ARCHIVE_FILE} - } else { - OBJECTS += $$NINJA_OBJECTS - LIBS_PRIVATE += $${NINJA_ARCHIVES} - } -} - -LIBS_PRIVATE += $$NINJA_LIB_DIRS $$NINJA_LIBS -# GN's LFLAGS doesn't always work across all the Linux configurations we support. -# The Windows and macOS ones from GN does provide a few useful flags however - -unix:qtConfig(webengine-noexecstack): \ - QMAKE_LFLAGS += -Wl,-z,noexecstack -linux { - # add chromium flags - for(flag, NINJA_LFLAGS) { - # filter out some flags - !contains(flag, .*noexecstack$): \ - !contains(flag, .*as-needed$): \ - !contains(flag, ^-B.*): \ - !contains(flag, ^-fuse-ld.*): \ - QMAKE_LFLAGS += $$flag - } -} else { - QMAKE_LFLAGS += $$NINJA_LFLAGS -} - -POST_TARGETDEPS += $$NINJA_TARGETDEPS diff --git a/src/buildtools/config/linux.pri b/src/buildtools/config/linux.pri deleted file mode 100644 index 7507d51ef..000000000 --- a/src/buildtools/config/linux.pri +++ /dev/null @@ -1,178 +0,0 @@ -include(common.pri) -include(functions.pri) - -defineReplace(extractCFlag) { - return($$qtwebengine_extractCFlag($$1)) -} - -QT_FOR_CONFIG += gui-private webenginecore-private pdf-private - -gn_args += \ - use_cups=false \ - use_gio=false \ - use_gnome_keyring=false \ - use_udev=true \ - use_bundled_fontconfig=false \ - use_sysroot=false \ - enable_session_service=false \ - is_cfi=false \ - use_ozone=true \ - use_x11=false \ - ozone_auto_platforms=false \ - ozone_platform_headless=false \ - ozone_platform_external=true \ - ozone_platform=\"qt\" \ - ozone_extra_path=\"$$QTWEBENGINE_ROOT/src/core/ozone/ozone_extra.gni\" - -use_gold_linker: gn_args += use_gold=true -else: gn_args += use_gold=false - -use_lld_linker: gn_args += use_lld=true -else: gn_args += use_lld=false - -clang { - clang_full_path = $$which($${QMAKE_CXX}) - # Remove the "/bin/clang++" part. - clang_prefix = $$section(clang_full_path, /, 0, -3) - gn_args += \ - is_clang=true \ - clang_use_chrome_plugins=false \ - clang_use_default_sample_profile=false \ - clang_base_path=\"$${clang_prefix}\" - - linux-clang-libc++: gn_args += use_libcxx=true -} else { - gn_args += \ - is_clang=false -} - -cross_compile:!host_build { - TOOLCHAIN_SYSROOT = $$[QT_SYSROOT] - !isEmpty(TOOLCHAIN_SYSROOT): gn_args += target_sysroot=\"$${TOOLCHAIN_SYSROOT}\" -} - -contains(QT_ARCH, "arm") { - # Extract ARM specific compiler options that we have to pass to gn, - # but let gn figure out a default if an option is not present. - MTUNE = $$extractCFlag("-mtune=.*") - !isEmpty(MTUNE): gn_args += arm_tune=\"$$MTUNE\" - - MFLOAT = $$extractCFlag("-mfloat-abi=.*") - !isEmpty(MFLOAT): gn_args += arm_float_abi=\"$$MFLOAT\" - - MARCH = $$extractCFlag("-march=.*") - !isEmpty(MARCH): gn_args += arm_arch=\"$$MARCH\" - - MARMV = $$replace(MARCH, "armv",) - !isEmpty(MARMV) { - MARMV = $$split(MARMV,) - MARMV = $$member(MARMV, 0) - lessThan(MARMV, 6): error("$$MARCH architecture is not supported") - gn_args += arm_version=$$MARMV - } - - # TODO: use neon detection from qtbase - !lessThan(MARMV, 8) { - gn_args += arm_use_neon=true - } else { - MFPU = $$extractCFlag("-mfpu=.*") - !isEmpty(MFPU):contains(MFPU, ".*neon.*") { - gn_args += arm_use_neon=true - } else { - gn_args += arm_use_neon=false - # If the toolchain does not explicitly specify to use NEON instructions - # we use arm_neon_optional for ARMv7 - equals(MARMV, 7): gn_args += arm_optionally_use_neon=true - } - } - - qtConfig(webengine-arm-thumb) { - gn_args += arm_use_thumb=true # this adds -mthumb - } else { - gn_args += arm_use_thumb=false - !qtConfig(webengine-system-ffmpeg) { - # Fixme QTBUG-71772 - gn_args += media_use_ffmpeg=false - gn_args += use_webaudio_ffmpeg=false - } - } -} - -contains(QT_ARCH, "mips") { - MARCH = $$extractCFlag("-march=.*") - !isEmpty(MARCH) { - equals(MARCH, "mips32r6"): gn_args += mips_arch_variant=\"r6\" - else: equals(MARCH, "mips32r2"): gn_args += mips_arch_variant=\"r2\" - else: equals(MARCH, "mips32"): gn_args += mips_arch_variant=\"r1\" - } else { - contains(QMAKE_CFLAGS, "mips32r6"): gn_args += mips_arch_variant=\"r6\" - else: contains(QMAKE_CFLAGS, "mips32r2"): gn_args += mips_arch_variant=\"r2\" - else: contains(QMAKE_CFLAGS, "mips32"): gn_args += mips_arch_variant=\"r1\" - } - - contains(QMAKE_CFLAGS, "-mmsa"): gn_args += mips_use_msa=true - - contains(QMAKE_CFLAGS, "-mdsp2"): gn_args += mips_dsp_rev=2 - else: contains(QMAKE_CFLAGS, "-mdsp"): gn_args += mips_dsp_rev=1 -} - -host_build { - gn_args += custom_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:host\" - GN_HOST_CPU = $$gnArch($$QT_ARCH) - gn_args += host_cpu=\"$$GN_HOST_CPU\" - # Don't bother trying to use system libraries in this case - gn_args += use_glib=false -} else { - gn_args += custom_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:target\" - gn_args += host_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:host\" - GN_TARGET_CPU = $$gnArch($$QT_ARCH) - cross_compile { - gn_args += v8_snapshot_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:v8_snapshot\" - # FIXME: we should set host_cpu in case host-toolchain doesn't match os arch, - # but currently we don't it available at this point - gn_args += target_cpu=\"$$GN_TARGET_CPU\" - } else { - gn_args += host_cpu=\"$$GN_TARGET_CPU\" - } - !contains(QT_CONFIG, no-pkg-config) { - # Strip '>2 /dev/null' from $$pkgConfigExecutable() - PKGCONFIG = $$first($$list($$pkgConfigExecutable())) - gn_args += pkg_config=\"$$PKGCONFIG\" - PKG_CONFIG_HOST = $$(GN_PKG_CONFIG_HOST) - pkgConfigLibDir = $$(PKG_CONFIG_LIBDIR) - pkgConfigSysrootDir = $$(PKG_CONFIG_SYSROOT_DIR) - isEmpty(PKG_CONFIG_HOST): cross_compile { - !isEmpty(pkgConfigLibDir)|!isEmpty(pkgConfigSysrootDir) { - PKG_CONFIG_HOST = $$pkgConfigHostExecutable() - } - } - isEmpty(PKG_CONFIG_HOST): PKG_CONFIG_HOST = $$QMAKE_PKG_CONFIG_HOST - gn_args += host_pkg_config=\"$$PKG_CONFIG_HOST\" - } - - qtConfig(webengine-system-zlib) { - qtConfig(webengine-system-minizip): gn_args += use_system_zlib=true use_system_minizip=true - gn_args += pdfium_use_system_zlib=true - } - - qtConfig(webengine-system-png) { - gn_args += use_system_libpng=true pdfium_use_system_libpng=true - } - - qtConfig(webengine-system-jpeg) { - gn_args += use_system_libjpeg=true - } else { - gn_args += use_system_libjpeg=false - } - qtConfig(webengine-system-freetype) { - gn_args += use_system_freetype=true - } else { - gn_args += use_system_freetype=false - } - qtConfig(webengine-system-harfbuzz) { - gn_args += use_system_harfbuzz=true - } else { - gn_args += use_system_harfbuzz=false - } - gn_args += use_glib=false -} diff --git a/src/buildtools/config/mac_osx.pri b/src/buildtools/config/mac_osx.pri deleted file mode 100644 index b53f91706..000000000 --- a/src/buildtools/config/mac_osx.pri +++ /dev/null @@ -1,38 +0,0 @@ -include(common.pri) -load(functions) - -# Reuse the cached sdk version value from mac/sdk.prf if available -# otherwise query for it. -QMAKE_MAC_SDK_VERSION = $$eval(QMAKE_MAC_SDK.$${QMAKE_MAC_SDK}.SDKVersion) -isEmpty(QMAKE_MAC_SDK_VERSION) { - QMAKE_MAC_SDK_VERSION = $$system("/usr/bin/xcodebuild -sdk $${QMAKE_MAC_SDK} -version SDKVersion 2>/dev/null") - isEmpty(QMAKE_MAC_SDK_VERSION): error("Could not resolve SDK version for \'$${QMAKE_MAC_SDK}\'") -} - -# chromium/build/mac/find_sdk.py expects the SDK version (mac_sdk_min) in Major.Minor format. -# If Patch version is provided it fails with "Exception: No Major.Minor.Patch+ SDK found" -QMAKE_MAC_SDK_VERSION_MAJOR_MINOR = $$section(QMAKE_MAC_SDK_VERSION, ".", 0, 1) - -QMAKE_CLANG_DIR = "/usr" -QMAKE_CLANG_PATH = $$eval(QMAKE_MAC_SDK.macx-clang.$${QMAKE_MAC_SDK}.QMAKE_CXX) -!isEmpty(QMAKE_CLANG_PATH) { - clang_dir = $$clean_path("$$dirname(QMAKE_CLANG_PATH)/../") - exists($$clang_dir): QMAKE_CLANG_DIR = $$clang_dir -} - -QMAKE_CLANG_PATH = "$${QMAKE_CLANG_DIR}/bin/clang++" -message("Using clang++ from $${QMAKE_CLANG_PATH}") -system("$${QMAKE_CLANG_PATH} --version") - - -gn_args += \ - is_clang=true \ - use_sysroot=false \ - use_system_xcode=true \ - clang_base_path=\"$${QMAKE_CLANG_DIR}\" \ - clang_use_chrome_plugins=false \ - mac_deployment_target=\"$${QMAKE_MACOSX_DEPLOYMENT_TARGET}\" \ - mac_sdk_min=\"$${QMAKE_MAC_SDK_VERSION_MAJOR_MINOR}\" \ - use_external_popup_menu=false \ - angle_enable_vulkan=false - diff --git a/src/buildtools/config/support.pri b/src/buildtools/config/support.pri deleted file mode 100644 index e7f869a15..000000000 --- a/src/buildtools/config/support.pri +++ /dev/null @@ -1,257 +0,0 @@ -defineTest(qtwebengine_skipBuild) { - skipBuildReason = $$1 - export(skipBuildReason) -} - -# this should match webengine-core-support -defineReplace(qtwebengine_checkWebEngineCoreError) { - !linux:!win32:!macos { - qtwebengine_skipBuild("QtWebEngine can be built only on Linux, Windows or macOS.") - return(false) - } - static { - qtwebengine_skipBuild("Static builds of QtWebEngine are not supported.") - return(false) - } - !qtwebengine_checkForGui(QtWebEngine):return(false) - !qtwebengine_checkForSubmodule(QtWebEngine):return(false) - !qtwebengine_checkForWhiteSpace(QtWebEngine):return(false) - !qtwebengine_checkForPlatform(QtWebEngine):return(false) - !qtwebengine_checkForArch(QtWebEngine):return(false) - !qtwebengine_checkForGperf(QtWebEngine):return(false) - !qtwebengine_checkForBison(QtWebEngine):return(false) - !qtwebengine_checkForFlex(QtWebEngine):return(false) - !qtwebengine_checkForPython2(QtWebEngine):return(false) - !qtwebengine_checkForNodejs(QtWebEngine):return(false) - !qtwebengine_checkForSanitizer(QtWebEngine):return(false) - linux:!qtwebengine_checkForPkgCfg(QtWebEngine):return(false) - linux:!qtwebengine_checkForHostPkgCfg(QtWebEngine):return(false) - linux:!qtwebengine_checkForGlibc(QtWebEngine):return(false) - linux:!qtwebengine_checkForKhronos(QtWebEngine):return(false) - linux:!qtwebengine_checkForPackage(QtWebEngine,nss):return(false) - linux:!qtwebengine_checkForPackage(QtWebEngine,dbus):return(false) - linux:!qtwebengine_checkForPackage(QtWebEngine,fontconfig):return(false) - linux:!qtwebengine_checkForQpaXcb(QtWebEngine):return(false) - win32:!qtwebengine_checkForCompiler64(QtWebEngine):return(false) - win32:!qtwebengine_checkForWinVersion(QtWebEngine):return(false) - return(true) -} - -# this shuold match webengine-qtpdf-support -defineReplace(qtwebengine_checkPdfError) { - !linux:!win32:!macos:!ios { - qtwebengine_skipBuild("QtPdf can be built only on Linux, Windows, macOS or iOS.") - return(false) - } - !qtwebengine_checkForGui(QtPdf):return(false) - !qtwebengine_checkForSubmodule(QtPdf):return(false) - !qtwebengine_checkForWhiteSpace(QtPdf):return(false) - !qtwebengine_checkForPlatform(QtPdf):return(false) - !qtwebengine_checkForArch(QtPdf):return(false) - !qtwebengine_checkForGperf(QtPdf):return(false) - !qtwebengine_checkForBison(QtPdf):return(false) - !qtwebengine_checkForFlex(QtPdf):return(false) - !qtwebengine_checkForPython2(QtPdf):return(false) - !qtwebengine_checkForSanitizer(QtPdf):return(false) - linux:!qtwebengine_checkForPkgCfg(QtPdf):return(false) - linux:!qtwebengine_checkForHostPkgCfg(QtPdf):return(false) - win32:!qtwebengine_checkForWinVersion(QtPdf):return(false) - return(true) -} - -defineTest(qtwebengine_checkForGui) { - module = $$1 - !qtHaveModule(gui) { - qtwebengine_skipBuild("$${module} requires QtGui.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForSubmodule) { - module = $$1 - !qtConfig(webengine-submodule) { - qtwebengine_skipBuild("$${module} required submodule qtwebengine-chromium does not exist. Run 'git submodule update --init'.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForWhiteSpace) { - module = $$1 - !qtConfig(webengine-nowhitespace) { - qtwebengine_skipBuild("$${module} cannot be built in a path that contains whitespace characters.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForPlatform) { - module = $$1 - qtConfig(webengine-no-platform-support) { - !isEmpty(platformError) { - qtwebengine_skipBuild("$${module} $${platformError}") - return(false) - } - !isEmpty(QTWEBENGINE_OUT_ROOT) { - include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) - QT_FOR_CONFIG += buildtools-private - !isEmpty(PLATFORM_ERROR) { - qtwebengine_skipBuild("$${module} $${PLATFORM_ERROR}") - return(false) - } - } - qtwebengine_skipBuild("$${module} will not be built. Platform unsupported.") - return(false): - } - return(true) -} - -defineTest(qtwebengine_checkForArch) { - module = $$1 - !qtConfig(webengine-arch-support) { - qtwebengine_skipBuild("$${module} can only be built for x86, x86-64, ARM, Aarch64, and MIPSel architectures.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForGperf) { - module = $$1 - !qtConfig(webengine-gperf) { - qtwebengine_skipBuild("Tool gperf is required to build $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForBison) { - module = $$1 - !qtConfig(webengine-bison) { - qtwebengine_skipBuild("Tool bison is required to build $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForFlex) { - module = $$1 - !qtConfig(webengine-flex) { - qtwebengine_skipBuild("Tool flex is required to build $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForPython2) { - module = $$1 - !qtConfig(webengine-python2) { - qtwebengine_skipBuild("Python version 2 (2.7.5 or later) is required to build $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForNodejs) { - module = $$1 - !qtConfig(webengine-nodejs) { - qtwebengine_skipBuild("Nodejs is required to build $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForSanitizer) { - module = $$1 - sanitizer:!qtConfig(webengine-sanitizer) { - qtwebengine_skipBuild("Chosen sanitizer configuration is not supported for $${module}." \ - "Check config.log for details or use -feature-webengine-sanitizer to force build with the chosen sanitizer configuration.") - return(false); - } - return(true) -} - -defineTest(qtwebengine_checkForPkgCfg) { - module = $$1 - !qtConfig(pkg-config) { - qtwebengine_skipBuild("A pkg-config support is required to build $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForHostPkgCfg) { - module = $$1 - !qtConfig(webengine-host-pkg-config) { - qtwebengine_skipBuild("Host pkg-config is required to build $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForGlibc) { - module = $$1 - !qtConfig(webengine-system-glibc) { - qtwebengine_skipBuild("A suitable version >= 2.27 of libc required to build $${module} could not be found.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForKhronos) { - module = $$1 - !qtConfig(webengine-system-khr) { - qtwebengine_skipBuild("Khronos development headers required to build $${module} are missing (see mesa/libegl1-mesa-dev)") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForPackage) { - module = $$1 - package = $$2 - !qtConfig(webengine-system-$$package) { - qtwebengine_skipBuild("A suitable version of $$package required to build QtWebEngine could not be found.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForQpaXcb) { - module = $$1 - qtConfig(pkg-config):qtConfig(xcb):!qtConfig(webengine-ozone-x11) { - qtwebengine_skipBuild("Could not find all necessary libraries for qpa-xcb support in $${module}.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForCompiler64) { - module = $$1 - !qtConfig(webengine-win-compiler64) { - qtwebengine_skipBuild("64-bit cross-building or native toolchain required to build $${module} could not be found.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_checkForWinVersion) { - module = $$1 - !qtConfig(webengine-winversion) { - qtwebengine_skipBuild("$${module} requires Visual Studio 2017 or higher.") - return(false) - } - return(true) -} - -defineTest(qtwebengine_makeCheckWebEngineCoreError) { - include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) - QT_FOR_CONFIG += buildtools-private gui-private - return($$qtwebengine_checkWebEngineCoreError()) -} - -defineTest(qtwebengine_makeCheckPdfError) { - include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) - QT_FOR_CONFIG += buildtools-private gui-private - return($$qtwebengine_checkPdfError()) -} diff --git a/src/buildtools/config/windows.pri b/src/buildtools/config/windows.pri deleted file mode 100644 index 843d6f2b1..000000000 --- a/src/buildtools/config/windows.pri +++ /dev/null @@ -1,91 +0,0 @@ -include(common.pri) - -gn_args += \ - use_sysroot=false \ - enable_session_service=false \ - ninja_use_custom_environment_files=false \ - win_linker_timing=true \ - com_init_check_hook_disabled=true \ - heterogeneous_executables=true \ - enable_vr=false - -clang_cl { - clang_full_path = $$system_path($$which($${QMAKE_CXX})) - # Remove the "\bin\clang-cl.exe" part: - clang_dir = $$dirname(clang_full_path) - clang_prefix = $$join(clang_dir,,,"\..") - gn_args += \ - is_clang=true \ - use_lld=true \ - clang_use_chrome_plugins=false \ - clang_base_path=\"$$system_path($$clean_path($$clang_prefix))\" -} else { - gn_args += is_clang=false use_lld=false -} - -qtConfig(webengine-developer-build) { - # Incremental linking doesn't work in release developer builds due to usage of /OPT:ICF - # by Chromium. - CONFIG(debug, debug|release) { - gn_args += \ - use_incremental_linking=true - } else { - gn_args += \ - use_incremental_linking=false - } -} else { - gn_args += \ - use_incremental_linking=false -} - -defineTest(usingMSVC32BitCrossCompiler) { - CL_DIR = - for(dir, QMAKE_PATH_ENV) { - exists($$dir/cl.exe) { - CL_DIR = $$dir - break() - } - } - isEmpty(CL_DIR): { - warning(Cannot determine location of cl.exe.) - return(false) - } - CL_DIR = $$system_path($$CL_DIR) - CL_DIR = $$split(CL_DIR, \\) - CL_PLATFORM = $$take_last(CL_DIR) - equals(CL_PLATFORM, amd64_x86): return(true) - equals(CL_PLATFORM, x86)|equals(CL_PLATFORM, x64) { - CL_PLATFORM = $$take_last(CL_DIR) - equals(CL_PLATFORM, HostX64): return(true) - } - return(false) -} - -msvc:contains(QT_ARCH, "i386"):!usingMSVC32BitCrossCompiler() { - warning(Full debug info is disabled for chromium due to 32bit compiler) - # The 32 bit MSVC linker runs out of memory if we do not remove all debug information. - force_debug_info: gn_args -= symbol_level=1 - gn_args *= symbol_level=0 -} - -msvc { - equals(MSVC_VER, 15.0) { - MSVS_VERSION = 2017 - } else: equals(MSVC_VER, 16.0) { - MSVS_VERSION = 2019 - } else { - error("Visual Studio compiler version \"$$MSVC_VER\" is not supported by gn.") - } - - gn_args += visual_studio_version=$$MSVS_VERSION - - SDK_PATH = $$(WINDOWSSDKDIR) - VS_PATH= $$(VSINSTALLDIR) - gn_args += visual_studio_path=\"$$clean_path($$VS_PATH)\" - gn_args += windows_sdk_path=\"$$clean_path($$SDK_PATH)\" - - GN_TARGET_CPU = $$gnArch($$QT_ARCH) - gn_args += target_cpu=\"$$GN_TARGET_CPU\" -} else { - error("Microsoft Visual Studio C++ compatible compiler is required by gn.") -} diff --git a/src/buildtools/configure.json b/src/buildtools/configure.json deleted file mode 100644 index ba42c2c3f..000000000 --- a/src/buildtools/configure.json +++ /dev/null @@ -1,843 +0,0 @@ -{ - "module": "buildtools", - "depends": [ - "core-private", - "gui-private", - "printsupport" - ], - "condition": "module.gui", - "commandline": { - "options": { - "build-qtwebengine-core": "boolean", - "build-qtpdf": "boolean", - "webengine-jumbo-build": { "type": "optionalString", "name": "merge_limit"} - } - }, - "libraries": { - "webengine-dbus": { - "label": "d-bus", - "sources": [ - { "type": "pkgConfig", "args": "dbus-1" } - ] - }, - "webengine-fontconfig": { - "label": "fontconfig", - "sources": [ - { "type": "pkgConfig", "args": "fontconfig" } - ] - }, - "webengine-libdrm": { - "label": "libdrm", - "sources": [ - { "type": "pkgConfig", "args": "libdrm" } - ] - }, - "webengine-xcomposite": { - "label": "xcomposite", - "sources": [ - { "type": "pkgConfig", "args": "xcomposite" } - ] - }, - "webengine-xcursor": { - "label": "xcursor", - "sources": [ - { "type": "pkgConfig", "args": "xcursor" } - ] - }, - "webengine-xi": { - "label": "xi", - "sources": [ - { "type": "pkgConfig", "args": "xi" } - ] - }, - "webengine-xtst": { - "label": "xtst", - "sources": [ - { "type": "pkgConfig", "args": "xtst" } - ] - }, - "webengine-xkbfile": { - "label": "xkbfile", - "sources": [ - { "type": "pkgConfig", "args": "xkbfile" } - ] - }, - "webengine-nss": { - "label": "nss >= 3.26", - "sources": [ - { "type": "pkgConfig", "args": "nss >= 3.26" } - ] - }, - "webengine-x11" : { - "label" : "x11", - "sources": [ - { "type": "pkgConfig", "args": "x11" } - ] - }, - "webengine-xproto-gl": { - "label": "xproto (glproto)", - "sources": [ - { "type": "pkgConfig", "args": "glproto" } - ] - }, - "webengine-glib": { - "label": "glib-2.0 >= 2.32.0", - "sources": [ - { "type": "pkgConfig", "args": "glib-2.0 >= 2.32.0" } - ] - }, - "webengine-harfbuzz": { - "label": "harfbuzz >= 2.4.0", - "sources": [ - { "type": "pkgConfig", "args": "harfbuzz >= 2.4.0 harfbuzz-subset >= 2.4.0" } - ] - }, - "webengine-jpeglib": { - "label": "compatible jpeglib", - "type": "compile", - "test": { - "head": [ - "#include ", - "#include ", - "extern \"C\" {", - " #include ", - "}" - ], - "main": [ - "JDIMENSION dummy;", - "jpeg_crop_scanline(nullptr, &dummy, &dummy);", - "jpeg_skip_scanlines(nullptr, dummy);" - ] - }, - "sources": [ - { "type": "pkgConfig", "args": "libjpeg" }, - "-ljpeg" - ] - }, - "webengine-libevent": { - "label": "libevent", - "sources": [ - { "type": "pkgConfig", "args": "libevent" } - ] - }, - "webengine-minizip": { - "label": "minizip", - "sources": [ - { "type": "pkgConfig", "args": "minizip" } - ] - }, - "webengine-png": { - "label": "libpng >= 1.6.0", - "sources": [ - { "type": "pkgConfig", "args": "libpng >= 1.6.0" } - ] - }, - "webengine-zlib": { - "label": "zlib", - "sources": [ - { "type": "pkgConfig", "args": "zlib" } - ] - }, - "webengine-re2": { - "label": "re2", - "test" : { - "main": [ - "std::string s;", - "re2::FilteredRE2 fre2(1);", - "int id = 0;", - "fre2.Add(s, {}, &id);", - "const RE2 &re2 = fre2.GetRE2(id);" - ] - }, - "headers": "re2/filtered_re2.h", - "sources": [ - { "type": "pkgConfig", "args": "re2" } - ] - }, - "webengine-icu": { - "label": "icu >= 65", - "sources": [ - { "type": "pkgConfig", "args": "icu-uc >= 65 icu-i18n >= 65" } - ] - }, - "webengine-webp": { - "label": "libwebp, libwebpmux and libwebpdemux", - "sources": [ - { "type": "pkgConfig", "args": "libwebp libwebpmux libwebpdemux" } - ] - }, - "webengine-lcms2": { - "label": "lcms2", - "sources": [ - { "type": "pkgConfig", "args": "lcms2" } - ] - }, - "webengine-freetype": { - "label": "freetype >= 2.4.2", - "test": { - "head": [ - "#include ", - "#include FT_FREETYPE_H", - "#if ((FREETYPE_MAJOR*10000 + FREETYPE_MINOR*100 + FREETYPE_PATCH) < 20402)", - "# error This version of freetype is too old.", - "#endif" - ], - "main": [ - "FT_Face ft_face = 0;", - "FT_Reference_Face(ft_face);" - ] - }, - "sources": [ - { "type": "pkgConfig", "args": "freetype2" } - ] - }, - "webengine-libxml2": { - "label": "compatible libxml2 and libxslt", - "type": "compile", - "test": { - "tail": [ - "#if !defined(LIBXML_ICU_ENABLED)", - "#error libxml icu not enabled", - "#endif" - ] - }, - "headers": "libxml/xmlversion.h", - "sources": [ - { "type": "pkgConfig", "args": "libxml-2.0 libxslt" } - ] - }, - "webengine-ffmpeg": { - "label": "libavcodec libavformat libavutil", - "sources": [ - { "type": "pkgConfig", "args": "libavcodec libavformat libavutil" } - ] - }, - "webengine-opus": { - "label": "opus", - "sources": [ - { "type": "pkgConfig", "args": "opus >= 1.3.1" } - ] - }, - "webengine-snappy": { - "label": "snappy", - "test": { - "main": [ - "snappy::Source *src = 0;", - "snappy::Sink *sink = 0;" - ] - }, - "headers": "snappy.h", - "sources": [ - "-lsnappy" - ] - }, - "webengine-libvpx": { - "label": "libvpx", - "test": { - "main": [ - "vpx_codec_cx_pkt pkt;", - "pkt.data.frame.width[0] = 0u;", - "pkt.data.frame.height[0] = 0u;", - "auto a = CONSTRAINED_FROM_ABOVE_DROP;", - "auto b = VPX_IMG_FMT_NV12;" - ] - }, - "headers": [ "vpx/vpx_encoder.h", "vpx/vp8cx.h", "vpx/vpx_image.h" ], - "sources": [ - { "type": "pkgConfig", "args": "vpx >= 1.10.0" } - ] - } - }, - - "testDir": "config.tests", - "tests" : { - "webengine-bison": { - "label": "bison", - "type": "detectBison" - }, - "webengine-flex": { - "label": "flex", - "type": "detectFlex" - }, - "webengine-gn": { - "label": "system gn", - "type": "detectGn" - }, - "webengine-glibc": { - "label": "glibc > 2.16", - "type": "compile", - "test": { - "include": "features.h", - "tail": [ - "#if __GLIBC__ < 2 || __GLIBC_MINOR__ < 17", - "#error glibc versions below 2.17 are not supported", - "#endif" - ] - } - }, - "webengine-gperf": { - "label": "gperf", - "type": "detectGperf" - }, - "webengine-khr": { - "label": "khr", - "type": "compile", - "test": { - "include": "KHR/khrplatform.h", - "qmake" : [ - "!isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL", - "!isEmpty(QMAKE_INCDIR_OPENGL): INCLUDEPATH += $$QMAKE_INCDIR_OPENGL" - ] - } - }, - "webengine-ninja": { - "label": "system ninja", - "type": "detectNinja", - "log": "path" - }, - "webengine-python2": { - "label": "python2", - "type": "detectPython2", - "log": "location" - }, - "webengine-winversion": { - "label": "winversion", - "type": "compile", - "test": { - "head" : [ - "#if !defined(__clang__) && _MSC_FULL_VER < 191426428", - "#error unsupported Visual Studio version", - "#endif" - ] - } - }, - "webengine-host-pkg-config": { - "label": "host pkg-config", - "type": "detectHostPkgConfig", - "log": "path" - }, - "webengine-jumbo-build": { - "label": "jumbo build merge limit", - "type": "detectJumboBuild", - "log": "merge_limit" - }, - "webengine-win-compiler64": { - "label": "64bit compiler", - "type": "isWindowsHostCompiler64" - }, - "webengine-platform-support": { - "label": "platform supported", - "type": "detectPlatform", - "log": "platformSupport" - }, - "webengine-arch-support": { - "label": "architecture supported", - "type": "detectArch" - }, - "webengine-submodule" : { - "label": "submodule initialized", - "type": "detectSubmodule" - }, - "webengine-nowhitespace" : { - "label": "build path without whitespace", - "type": "detectNoWhitespace" - }, - "webengine-arm-thumb" : { - "label": "thumb instruction set", - "type": "hasThumbFlag" - }, - "webengine-sanitizer": { - "label" : "sanitizer support", - "type": "isSanitizerSupported" - }, - "webengine-noexecstack" : { - "label": "linker supports -z noexecstack", - "type": "linkerSupportsFlag", - "flag": "-z,noexecstack" - }, - "webengine-nodejs": { - "label": "node.js", - "type": "detectNodeJS", - "log": "version10" - } - }, - "features": { - "webengine-core-support": { - "label": "Support Qt WebEngine Core", - "condition": "(config.linux || config.win32 || config.macos) - && !config.static - && module.gui - && features.webengine-submodule - && features.webengine-nowhitespace - && !features.webengine-no-platform-support - && features.webengine-arch-support - && features.webengine-gperf - && features.webengine-bison - && features.webengine-flex - && features.webengine-python2 - && features.webengine-nodejs - && (!config.sanitizer || features.webengine-sanitizer) - && (!config.linux || features.pkg-config) - && (!config.linux || features.webengine-host-pkg-config) - && (!config.linux || features.webengine-system-glibc) - && (!config.linux || features.webengine-system-khr) - && (!config.linux || features.webengine-system-nss) - && (!config.linux || features.webengine-system-dbus) - && (!config.linux || features.webengine-system-fontconfig) - && (!config.linux || !features.pkg-config || !features.xcb || features.webengine-ozone-x11) - && (!config.win32 || features.webengine-win-compiler64) - && (!config.win32 || features.webengine-winversion)", - "output": [ "privateFeature" ] - }, - "webengine-qtpdf-support": { - "label": "Support Qt Pdf", - "condition": "(config.linux || config.win32 || config.macos || config.ios) - && module.gui - && features.webengine-submodule - && features.webengine-nowhitespace - && !features.webengine-no-platform-support - && features.webengine-arch-support - && features.webengine-gperf - && features.webengine-bison - && features.webengine-flex - && features.webengine-python2 - && (!config.sanitizer || features.webengine-sanitizer) - && (!config.linux || features.pkg-config) - && (!config.linux || features.webengine-host-pkg-config) - && (!config.win32 || features.webengine-winversion)", - "output": [ "privateFeature" ] - }, - "build-qtwebengine-core": { - "label": "Build Qt WebEngine Core", - "purpose": "Provides WebEngine Core support.", - "output": [ "privateFeature" ] - }, - "build-qtpdf": { - "label": "Support Qt PDF rendering module", - "purpose": "Enables building the Qt PDF rendering module.", - "output": [ "privateFeature" ] - }, - "webengine-developer-build": { - "label": "Developer build", - "purpose": "Enables the developer build configuration.", - "autoDetect": "features.private_tests", - "output": [ "privateFeature" ] - }, - "webengine-python2": { - "label": "python2", - "condition": "tests.webengine-python2", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "QMAKE_PYTHON2", "value": "tests.webengine-python2.location" } - ] - }, - "webengine-gperf": { - "label": "gperf", - "condition": "tests.webengine-gperf", - "output": [ "privateFeature" ] - }, - "webengine-bison": { - "label": "bison", - "condition": "tests.webengine-bison", - "output": [ "privateFeature" ] - }, - "webengine-flex": { - "label": "flex", - "condition": "tests.webengine-flex", - "output": [ "privateFeature" ] - }, - "webengine-nodejs": { - "label": "node.js", - "condition": "tests.webengine-nodejs", - "output": [ "privateFeature" ] - }, - "webengine-nodejs10": { - "label": "node.js", - "condition": "tests.webengine-nodejs && tests.webengine-nodejs.version10", - "output": [ "privateFeature" ] - }, - "webengine-system-ninja": { - "label": "Use System Ninja", - "condition": "tests.webengine-ninja", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "QMAKE_NINJA", "value": "tests.webengine-ninja.path" } - ] - }, - "webengine-system-fontconfig": { - "label": "fontconfig", - "condition": "libs.webengine-fontconfig", - "output": [ "privateFeature" ] - }, - "webengine-system-dbus": { - "label": "dbus", - "condition": "libs.webengine-dbus", - "output": [ "privateFeature" ] - }, - "webengine-system-libdrm": { - "label": "libdrm", - "condition": "libs.webengine-libdrm", - "output": [ "privateFeature" ] - }, - "webengine-system-xcomposite": { - "label": "xcomposite", - "condition": "libs.webengine-xcomposite", - "output": [ "privateFeature" ] - }, - "webengine-system-xcursor": { - "label": "xcursor", - "condition": "libs.webengine-xcursor", - "output": [ "privateFeature" ] - }, - "webengine-system-xi": { - "label": "xi", - "condition": "libs.webengine-xi", - "output": [ "privateFeature" ] - }, - "webengine-system-xtst": { - "label": "xtst", - "condition": "libs.webengine-xtst", - "output": [ "privateFeature" ] - }, - "webengine-system-xkbfile": { - "label": "xkbfile", - "condition": "libs.webengine-xkbfile", - "output": [ "privateFeature" ] - }, - "webengine-system-gn": { - "label": "Use System Gn", - "autoDetect": "false", - "condition": "tests.webengine-gn", - "output": [ "privateFeature" ] - }, - "webengine-system-khr" : { - "label": "khr", - "condition": "config.unix && tests.webengine-khr", - "output": [ "privateFeature" ] - }, - "webengine-system-nss": { - "label": "nss", - "condition": "config.unix && !config.darwin && libs.webengine-nss", - "output": [ "privateFeature" ] - }, - "webengine-system-glibc": { - "label": "glibc", - "condition": "config.linux && tests.webengine-glibc", - "output": [ "privateFeature" ] - }, - "webengine-system-x11" : { - "label": "x11", - "condition": "config.unix && libs.webengine-x11", - "output": [ "privateFeature" ] - }, - "webengine-system-xproto-gl" : { - "label": "xproto (glproto)", - "condition": "config.unix && libs.webengine-xproto-gl", - "output": [ "privateFeature" ] - }, - "webengine-host-pkg-config": { - "label": "host-pkg-config", - "condition": "config.unix && tests.webengine-host-pkg-config", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "QMAKE_PKG_CONFIG_HOST", "value": "tests.webengine-host-pkg-config.path" } - ] - }, - "webengine-ozone-x11" : { - "condition": "config.unix - && features.xcb - && features.webengine-system-x11 - && features.webengine-system-libdrm - && features.webengine-system-xcomposite - && features.webengine-system-xcursor - && features.webengine-system-xi - && features.webengine-system-xproto-gl - && features.webengine-system-xtst - && features.webengine-system-xkbfile", - "output": [ "privateFeature" ] - }, - "webengine-jumbo-build": { - "label": "jumbo build merge batch", - "condition": "tests.webengine-jumbo-build", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "QMAKE_JUMBO_MERGE_LIMIT", "value": "tests.webengine-jumbo-build.merge_limit" } - ] - }, - "webengine-system-harfbuzz": { - "label": "harfbuzz", - "condition": "config.unix && features.system-harfbuzz && libs.webengine-harfbuzz", - "output": [ "privateFeature" ] - }, - "webengine-qt-harfbuzz" : { - "label": "qtharfbuzz", - "condition": "config.static && !features.system-harfbuzz && features.harfbuzz", - "output": [ "privateFeature" ] - }, - "webengine-system-glib" : { - "label": "glib", - "condition": "config.unix && libs.webengine-glib", - "output": [ "privateFeature" ] - }, - "webengine-system-minizip" : { - "label": "minizip", - "condition": "config.unix && libs.webengine-minizip", - "output": [ "privateFeature" ] - }, - "webengine-system-zlib" : { - "label": "zlib", - "condition": "config.unix && features.system-zlib && libs.webengine-zlib", - "output": [ "privateFeature" ] - }, - "webengine-qt-zlib" : { - "label": "QtZlib", - "condition": "config.static && !features.system-zlib", - "output": [ "privateFeature" ] - }, - "webengine-system-libevent" : { - "label": "libevent", - "condition": "config.unix && libs.webengine-libevent", - "output": [ "privateFeature" ] - }, - "webengine-system-png" : { - "label": "png", - "condition": "config.unix && features.system-png && libs.webengine-png", - "output": [ "privateFeature" ] - }, - "webengine-qt-png" : { - "label": "qtlibpng", - "condition" : "config.static && !features.system-png && features.png", - "output": [ "privateFeature" ] - }, - "webengine-system-jpeg" : { - "label": "JPEG", - "condition": "config.unix && features.system-jpeg && libs.webengine-jpeglib", - "output": [ "privateFeature" ] - }, - "webengine-qt-jpeg" : { - "label": "qtlibjpeg", - "condition": "config.static && !features.system-jpeg && features.jpeg", - "output": [ "privateFeature" ] - }, - "webengine-system-re2": { - "label": "re2", - "condition": "config.unix && libs.webengine-re2", - "output": [ "privateFeature" ] - }, - "webengine-system-icu": { - "label": "icu", - "autoDetect": "false", - "condition": "libs.webengine-icu", - "output": [ "privateFeature" ] - }, - "webengine-system-libwebp": { - "label": "libwebp, libwebpmux and libwebpdemux", - "condition": "config.unix && libs.webengine-webp", - "output": [ "privateFeature" ] - }, - "webengine-system-opus": { - "label": "opus", - "condition": "config.unix && libs.webengine-opus", - "output": [ "privateFeature" ] - }, - "webengine-system-ffmpeg": { - "label": "ffmpeg", - "autoDetect": "false", - "condition": "libs.webengine-ffmpeg && features.webengine-system-opus && features.webengine-system-libwebp", - "output": [ "privateFeature" ] - }, - "webengine-system-libxml2": { - "label": "libxml2 and libxslt", - "condition": "config.unix && libs.webengine-libxml2", - "output": [ "privateFeature" ] - }, - "webengine-system-lcms2" : { - "label": "lcms2", - "condition": "config.unix && libs.webengine-lcms2", - "output": [ "privateFeature" ] - }, - "webengine-system-freetype" : { - "label": "freetype", - "condition": "config.unix && features.system-freetype && libs.webengine-freetype", - "output": [ "privateFeature" ] - }, - "webengine-qt-freetype" : { - "label": "qtfreetype", - "condition": "config.static && !features.system-freetype && features.freetype", - "output": [ "privateFeature" ] - }, - "webengine-system-libvpx" : { - "label": "libvpx", - "condition": "config.unix && libs.webengine-libvpx", - "output": [ "privateFeature" ] - }, - "webengine-system-snappy" : { - "label": "snappy", - "condition": "config.unix && libs.webengine-snappy", - "output": [ "privateFeature" ] - }, - "webengine-winversion" : { - "label": "winversion", - "condition": "config.win32 && tests.webengine-winversion", - "output": [ "privateFeature" ] - }, - "webengine-win-compiler64": { - "label": "64bit compiler", - "condition": "config.win32 && tests.webengine-win-compiler64", - "output": [ "privateFeature" ] - }, - "webengine-submodule": { - "label": "submodule", - "condition": "tests.webengine-submodule", - "output": [ "privateFeature" ] - }, - "webengine-nowhitespace": { - "label": "nowhitespace", - "condition" : "tests.webengine-nowhitespace", - "output": [ "privateFeature" ] - }, - "webengine-arch-support": { - "label": "architecture", - "condition" : "tests.webengine-arch-support", - "output": [ "privateFeature" ] - }, - "webengine-no-platform-support": { - "label": "platform", - "condition" : "!tests.webengine-platform-support", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "PLATFORM_ERROR", "value": "tests.webengine-platform-support.platformSupport" } - ] - }, - "webengine-arm-thumb": { - "label": "Thumb instruction set", - "condition": "config.linux && arch.arm && tests.webengine-arm-thumb", - "output": [ "privateFeature" ] - }, - "webengine-sanitizer" : { - "label": "Sanitizer", - "autoDetect": "config.sanitizer && tests.webengine-sanitizer", - "condition": "config.sanitizer", - "output": [ "privateFeature" ] - }, - "webengine-noexecstack": { - "label": "linker supports -z noexecstack", - "condition": "config.unix && tests.webengine-noexecstack", - "output": [ "privateFeature" ] - } - }, - "report": [ - { - "type": "skipBuildWarning", - "condition": "!features.webengine-core-support && features.build-qtwebengine-core", - "message": "qtwebengine_confCheckWebEngineCoreError" - }, - { - "type": "skipBuildWarning", - "condition": "!features.webengine-qtpdf-support && features.build-qtpdf", - "message": "qtwebengine_confCheckPdfError" - }, - { - "type": "note", - "condition": "features.webengine-core-support && !features.build-qtwebengine-core", - "message": "QtWebEngine build is disabled by user." - }, - { - "type": "note", - "condition": "features.webengine-qtpdf-support && !features.build-qtpdf", - "message": "QtPdf build is disabled by user." - }, - { - "type": "warning", - "condition": "!features.webengine-core-support && features.build-qtwebengine-core", - "message": "QtWebEngine will not be built." - }, - { - "type": "warning", - "condition": "!features.webengine-qtpdf-support && features.build-qtpdf", - "message": "QtPdf will not be built." - }, - { - "type": "warning", - "condition": "config.ios && config.simulator && config.device && features.build-qtpdf", - "message": "Building fat libray with device and simulator architectures will disable NEON." - } - ], - "summary": [ - { - "section": "Qt WebEngine Build Tools", - "entries": [ - "webengine-system-ninja", - { - "message": "Jumbo Build Merge Limit", - "type": "jumboBuild" - }, - "webengine-developer-build", - { - "type": "feature", - "args": "webengine-sanitizer", - "condition": "!config.sanitizer" - }, - { - "section": "QtWebEngine required system libraries", - "condition": "config.unix && !config.macos && !config.ios", - "entries": [ - "webengine-system-fontconfig", - "webengine-system-dbus", - "webengine-system-nss", - "webengine-system-khr", - "webengine-system-glibc" - ] - }, - { - "section": "QtWebEngine required system libraries for qpa-xcb", - "condition": "config.unix && !config.macos && features.xcb", - "entries": [ - "webengine-system-x11", - "webengine-system-libdrm", - "webengine-system-xcomposite", - "webengine-system-xcursor", - "webengine-system-xi", - "webengine-system-xproto-gl", - "webengine-system-xtst", - "webengine-system-xkbfile" - ] - }, - { - "section": "Optional system libraries used", - "condition": "config.unix", - "entries": [ - "webengine-system-re2", - "webengine-system-icu", - "webengine-system-libwebp", - "webengine-system-opus", - "webengine-system-ffmpeg", - "webengine-system-libvpx", - "webengine-system-snappy", - "webengine-system-glib", - "webengine-system-zlib", - "webengine-system-minizip", - "webengine-system-libevent", - "webengine-system-libxml2", - "webengine-system-lcms2", - "webengine-system-png", - "webengine-system-jpeg", - "webengine-system-harfbuzz", - "webengine-system-freetype" - ] - }, - { - "section": "Qt 3rdparty libs", - "condition": "config.static", - "entries": [ - "webengine-qt-freetype", - "webengine-qt-harfbuzz", - "webengine-qt-png", - "webengine-qt-jpeg", - "webengine-qt-zlib" - ] - } - ] - } - ] -} diff --git a/src/buildtools/configure_host.pro b/src/buildtools/configure_host.pro deleted file mode 100644 index dd0d3e327..000000000 --- a/src/buildtools/configure_host.pro +++ /dev/null @@ -1,65 +0,0 @@ -# Prevent generating a makefile that attempts to create a lib -TEMPLATE = aux - -# Pick up the host toolchain -option(host_build) - -GN_HOST_CPU = $$gnArch($$QT_ARCH) -!isEmpty(QT_TARGET_ARCH): GN_TARGET_CPU = $$gnArch($$QT_TARGET_ARCH) -else: GN_TARGET_CPU = $$GN_HOST_CPU -GN_OS = $$gnOS() - -clang: GN_CLANG = true -else: GN_CLANG = false - -use_gold_linker: GN_USE_GOLD=true -else: GN_USE_GOLD=false - -GN_V8_HOST_CPU = $$GN_HOST_CPU -contains(GN_TARGET_CPU, "arm")|contains(GN_TARGET_CPU, "mipsel")|contains(GN_TARGET_CPU, "x86") { - # The v8 snapshot need a host that matches bitwidth, so we build makesnapshot to 32-bit variants of host. - contains(GN_V8_HOST_CPU, x64): GN_V8_HOST_CPU = "x86" - else: contains(GN_V8_HOST_CPU, arm64): GN_V8_HOST_CPU = "arm" - else: contains(GN_V8_HOST_CPU, mips64el): GN_V8_HOST_CPU = "mipsel" -} - -GN_HOST_EXTRA_CPPFLAGS = $$(GN_HOST_TOOLCHAIN_EXTRA_CPPFLAGS) - -# We always use the gcc_toolchain, because clang_toolchain is just -# a broken wrapper around it for Google's custom clang binaries. -GN_CONTENTS = \ -"import(\"//build/config/sysroot.gni\")" \ -"import(\"//build/toolchain/gcc_toolchain.gni\")" \ -"gcc_toolchain(\"host\") {" \ -" cc = \"$$which($$QMAKE_CC)\" " \ -" cxx = \"$$which($$QMAKE_CXX)\" " \ -" ld = \"$$which($$QMAKE_LINK)\" " \ -" ar = \"$$which(ar)\" " \ -" nm = \"$$which(nm)\" " \ -" extra_cppflags = \"$$GN_HOST_EXTRA_CPPFLAGS\" " \ -" toolchain_args = { " \ -" current_os = \"$$GN_OS\" " \ -" current_cpu = \"$$GN_HOST_CPU\" " \ -" is_clang = $$GN_CLANG " \ -" use_gold = $$GN_USE_GOLD " \ -" } " \ -"}" \ -"gcc_toolchain(\"v8_snapshot\") {" \ -" cc = \"$$which($$QMAKE_CC)\" " \ -" cxx = \"$$which($$QMAKE_CXX)\" " \ -" ld = \"$$which($$QMAKE_LINK)\" " \ -" ar = \"$$which(ar)\" " \ -" nm = \"$$which(nm)\" " \ -" toolchain_args = { " \ -" current_os = \"$$GN_OS\" " \ -" current_cpu = \"$$GN_V8_HOST_CPU\" " \ -" v8_current_cpu = \"$$GN_TARGET_CPU\" " \ -" is_clang = $$GN_CLANG " \ -" use_gold = $$GN_USE_GOLD " \ -" } " \ -" } " - -GN_FILE = $$OUT_PWD/../toolchain/BUILD.gn -!build_pass { - write_file($$GN_FILE, GN_CONTENTS) -} diff --git a/src/buildtools/configure_target.pro b/src/buildtools/configure_target.pro deleted file mode 100644 index 31aa283f6..000000000 --- a/src/buildtools/configure_target.pro +++ /dev/null @@ -1,33 +0,0 @@ -# Prevent generating a makefile that attempts to create a lib -TEMPLATE = aux - -GN_CPU = $$gnArch($$QT_ARCH) -GN_OS = $$gnOS() - -clang: GN_CLANG = true -else: GN_CLANG = false - -use_gold_linker: GN_USE_GOLD=true -else: GN_USE_GOLD=false - -GN_CONTENTS = \ -"gcc_toolchain(\"target\") {" \ -" cc = \"$$which($$QMAKE_CC)\" " \ -" cxx = \"$$which($$QMAKE_CXX)\" " \ -" ld = \"$$which($$QMAKE_LINK)\" " \ -" ar = \"$$which($${CROSS_COMPILE}ar)\" " \ -" nm = \"$$which($${CROSS_COMPILE}nm)\" " \ -" toolchain_args = { " \ -" current_os = \"$$GN_OS\" " \ -" current_cpu = \"$$GN_CPU\" " \ -" is_clang = $$GN_CLANG " \ -" use_gold = $$GN_USE_GOLD " \ -" } " \ -"}" - -GN_FILE = $$OUT_PWD/../toolchain/BUILD.gn -!build_pass { - write_file($$GN_FILE, GN_CONTENTS, append) -} - -QMAKE_DISTCLEAN += $$GN_FILE diff --git a/src/buildtools/gn.pro b/src/buildtools/gn.pro deleted file mode 100644 index 9e8cfe157..000000000 --- a/src/buildtools/gn.pro +++ /dev/null @@ -1,39 +0,0 @@ -TEMPLATE = aux -option(host_build) - -!debug_and_release: CONFIG += release - -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -QT_FOR_CONFIG += buildtools-private - -build_pass|!debug_and_release { - !qtConfig(webengine-system-gn): CONFIG(release, debug|release) { - buildgn.target = build_gn - out = $$gnPath() - out_path = $$dirname(out) - # check if it is not already build - !exists($$out) { - src_3rd_party_dir = $$absolute_path("$${getChromiumSrcDir()}/../", "$$QTWEBENGINE_ROOT") - gn_bootstrap = $$system_path($$absolute_path(gn/build/gen.py, $$src_3rd_party_dir)) - - gn_gen_args = --no-last-commit-position --out-path $$out_path \ - --cc \"$$which($$QMAKE_CC)\" --cxx \"$$which($$QMAKE_CXX)\" \ - --ld \"$$which($$QMAKE_LINK)\" - - msvc:!clang_cl: gn_gen_args += --use-lto - - gn_configure = $$system_quote($$gn_bootstrap) $$gn_gen_args - macos { - gn_configure += --isysroot \"$$QMAKE_MAC_SDK_PATH\" - } - message($$gn_configure) - !system("$$pythonPathForSystem() $$gn_configure") { - error("GN generation error!") - } - !system("cd $$system_quote($$system_path($$out_path)) && $$system_quote($$system_path($$ninjaPath())) $$basename(out)" ) { - error("GN build error!") - } - } - QMAKE_DISTCLEAN += $$out - } -} diff --git a/src/buildtools/ninja.pro b/src/buildtools/ninja.pro deleted file mode 100644 index 66a6d5aa6..000000000 --- a/src/buildtools/ninja.pro +++ /dev/null @@ -1,23 +0,0 @@ -TEMPLATE = aux - -!debug_and_release: CONFIG += release - -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -QT_FOR_CONFIG += buildtools-private - -build_pass|!debug_and_release { - !qtConfig(webengine-system-ninja): CONFIG(release, debug|release) { - out = $$ninjaPath() - # check if it is not already build - !exists($$out) { - mkpath($$dirname(out)) - src_3rd_party_dir = $$absolute_path("$${getChromiumSrcDir()}/../", "$$QTWEBENGINE_ROOT") - ninja_configure = $$system_quote($$system_path($$absolute_path(ninja/configure.py, $$src_3rd_party_dir))) - !system("cd $$system_quote($$system_path($$dirname(out))) && $$pythonPathForSystem() $$ninja_configure --bootstrap") { - error("NINJA build error!") - } - } - QMAKE_DISTCLEAN += $$out - } -} - diff --git a/src/core/api/core_api.pro b/src/core/api/core_api.pro deleted file mode 100644 index 2408a5869..000000000 --- a/src/core/api/core_api.pro +++ /dev/null @@ -1,119 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) -QT_FOR_CONFIG += webenginecore webenginecore-private - -TARGET = qtwebenginecoreapi$$qtPlatformTargetSuffix() -DESTDIR = $$OUT_PWD/$$getConfigDir() - -TEMPLATE = lib - -CONFIG += staticlib -QT += network core-private webenginecoreheaders-private quick qml - -qtConfig(webengine-printing-and-pdf): QT += printsupport - -# Don't create .prl file for this intermediate library because -# their contents get used when linking against them, breaking -# "-Wl,-whole-archive -lqtwebenginecoreapi --Wl,-no-whole-archive" -CONFIG -= create_prl - -# Copy this logic from qt_module.prf so that the intermediate library can be -# created to the same rules as the final module linking in core_module.pro. -!host_build:if(win32|mac):!macx-xcode { - qtConfig(debug_and_release): CONFIG += debug_and_release - qtConfig(build_all): CONFIG += build_all -} - -DEFINES += \ - BUILDING_CHROMIUM \ - NOMINMAX - -CHROMIUM_SRC_DIR = $$QTWEBENGINE_ROOT/$$getChromiumSrcDir() -CHROMIUM_GEN_DIR = $$OUT_PWD/../$$getConfigDir()/gen -INCLUDEPATH += $$QTWEBENGINE_ROOT/src/core \ - $$CHROMIUM_GEN_DIR \ - $$CHROMIUM_GEN_DIR/third_party/perfetto \ - $$CHROMIUM_GEN_DIR/third_party/perfetto/build_config \ - $$CHROMIUM_SRC_DIR/third_party/abseil-cpp \ - $$CHROMIUM_SRC_DIR/third_party/perfetto/include \ - $$CHROMIUM_SRC_DIR - -gcc: QMAKE_CXXFLAGS_WARN_ON = -Wno-unused-parameter - -HEADERS = \ - qwebenginecallback.h \ - qwebenginecallback_p.h \ - qwebengineclientcertificatestore.h \ - qtwebenginecoreglobal.h \ - qtwebenginecoreglobal_p.h \ - qwebenginecertificateerror.h \ - qwebenginecookiestore.h \ - qwebenginecookiestore_p.h \ - qwebenginefindtextresult.h \ - qwebenginefullscreenrequest.h \ - qwebenginehttprequest.h \ - qwebenginemessagepumpscheduler_p.h \ - qwebenginenotification.h \ - qwebenginequotarequest.h \ - qwebengineregisterprotocolhandlerrequest.h \ - qwebengineurlrequestinterceptor.h \ - qwebengineurlrequestinfo.h \ - qwebengineurlrequestinfo_p.h \ - qwebengineurlrequestjob.h \ - qwebengineurlscheme.h \ - qwebengineurlschemehandler.h \ - qwebenginecontextmenurequest.h \ - qwebenginecontextmenurequest_p.h \ - qwebenginedownloadrequest.h \ - qwebenginedownloadrequest_p.h \ - qwebengineloadrequest.h \ - qwebenginesettings.h \ - qwebenginescript.h \ - qwebenginescriptcollection.h \ - qwebenginescriptcollection_p.h \ - qwebengineprofile.h \ - qwebengineprofile_p.h \ - qwebengineclientcertificateselection.h \ - qwebenginehistory.h \ - qwebenginehistory_p.h \ - qwebenginepage.h \ - qwebenginepage_p.h - -SOURCES = \ - qtwebenginecoreglobal.cpp \ - qwebenginecertificateerror.cpp \ - qwebengineclientcertificatestore.cpp \ - qwebenginecookiestore.cpp \ - qwebenginefindtextresult.cpp \ - qwebenginefullscreenrequest.cpp \ - qwebenginehttprequest.cpp \ - qwebenginemessagepumpscheduler.cpp \ - qwebenginenotification.cpp \ - qwebenginequotarequest.cpp \ - qwebengineregisterprotocolhandlerrequest.cpp \ - qwebengineurlrequestinfo.cpp \ - qwebengineurlrequestjob.cpp \ - qwebengineurlscheme.cpp \ - qwebengineurlschemehandler.cpp \ - qwebenginecontextmenurequest.cpp \ - qwebenginedownloadrequest.cpp \ - qwebengineloadrequest.cpp \ - qwebenginesettings.cpp \ - qwebenginescript.cpp \ - qwebenginescriptcollection.cpp \ - qwebengineprofile.cpp \ - qwebengineclientcertificateselection.cpp \ - qwebenginehistory.cpp \ - qwebenginepage.cpp - -# Chromium headers included are not remotely clean -CONFIG -= warning_clean - -msvc { - # Create a list of object files that can be used as response file for the linker. - # This is done to simulate -whole-archive on MSVC. - QMAKE_POST_LINK = \ - "if exist $(DESTDIR_TARGET).objects del $(DESTDIR_TARGET).objects$$escape_expand(\\n\\t)" \ - "for %%a in ($(OBJECTS)) do echo $$shell_quote($$shell_path($$OUT_PWD))\\%%a >> $(DESTDIR_TARGET).objects" -} - -load(qt_common) diff --git a/src/core/config/common.pri b/src/core/config/common.pri deleted file mode 100644 index d9d64e76b..000000000 --- a/src/core/config/common.pri +++ /dev/null @@ -1,48 +0,0 @@ -qtConfig(webengine-printing-and-pdf) { - gn_args += enable_basic_printing=true enable_print_preview=true - gn_args += enable_pdf=true -} else { - gn_args += enable_basic_printing=false enable_print_preview=false - gn_args += enable_pdf=false -} - -qtConfig(webengine-pepper-plugins) { - gn_args += enable_plugins=true -} else { - gn_args += enable_plugins=false -} - -qtConfig(webengine-spellchecker) { - gn_args += enable_spellcheck=true -} else { - gn_args += enable_spellcheck=false -} - -qtConfig(webengine-webrtc) { - gn_args += enable_webrtc=true -} else { - gn_args += enable_webrtc=false -} - -qtConfig(webengine-proprietary-codecs) { - gn_args += proprietary_codecs=true ffmpeg_branding=\"Chrome\" - qtConfig(webengine-webrtc) { - gn_args += rtc_use_h264=true - } -} else { - gn_args += proprietary_codecs=false -} - -qtConfig(webengine-extensions) { - gn_args += enable_extensions=true -} else { - gn_args += enable_extensions=false -} - -qtConfig(webengine-kerberos) { - gn_args += use_kerberos=true -} else { - gn_args += use_kerberos=false -} - -!qtConfig(webengine-nodejs10): gn_args += use_rollup=false diff --git a/src/core/config/linux.pri b/src/core/config/linux.pri deleted file mode 100644 index 3e490a0d5..000000000 --- a/src/core/config/linux.pri +++ /dev/null @@ -1,44 +0,0 @@ -include(common.pri) - -qtConfig(webengine-embedded-build) { - gn_args += is_desktop_linux=false -} - -!host_build{ - - - - qtConfig(webengine-pulseaudio) { - gn_args += use_pulseaudio=true - } else { - gn_args += use_pulseaudio=false - } - - qtConfig(webengine-alsa) { - gn_args += use_alsa=true - } else { - gn_args += use_alsa=false - } - - !packagesExist(libpci): gn_args += use_libpci=false - - qtConfig(webengine-ozone-x11) { - gn_args += ozone_platform_x11=true - gn_args += use_xkbcommon=true - packagesExist(xscrnsaver): gn_args += use_xscrnsaver=true - qtConfig(webengine-webrtc): gn_args += rtc_use_x11=true - } - - qtConfig(webengine-webrtc): qtConfig(webengine-webrtc-pipewire): gn_args += rtc_use_pipewire=true - - qtConfig(webengine-system-libevent): gn_args += use_system_libevent=true - qtConfig(webengine-system-libwebp): gn_args += use_system_libwebp=true - qtConfig(webengine-system-libxml2): gn_args += use_system_libxml=true use_system_libxslt=true - qtConfig(webengine-system-opus): gn_args += use_system_opus=true - qtConfig(webengine-system-snappy): gn_args += use_system_snappy=true - qtConfig(webengine-system-libvpx): gn_args += use_system_libvpx=true - qtConfig(webengine-system-icu): gn_args += use_system_icu=true icu_use_data_file=false - qtConfig(webengine-system-ffmpeg): gn_args += use_system_ffmpeg=true - qtConfig(webengine-system-re2): gn_args += use_system_re2=true - qtConfig(webengine-system-lcms2): gn_args += use_system_lcms2=true -} diff --git a/src/core/config/mac_osx.pri b/src/core/config/mac_osx.pri deleted file mode 100644 index 9543daf90..000000000 --- a/src/core/config/mac_osx.pri +++ /dev/null @@ -1,8 +0,0 @@ -include(common.pri) - -qtConfig(build-qtwebengine-core):qtConfig(webengine-spellchecker) { - qtConfig(webengine-native-spellchecker): gn_args += use_browser_spellchecker=true - else: gn_args += use_browser_spellchecker=false -} else { - gn_args += use_browser_spellchecker=false -} diff --git a/src/core/config/windows.pri b/src/core/config/windows.pri deleted file mode 100644 index 9543daf90..000000000 --- a/src/core/config/windows.pri +++ /dev/null @@ -1,8 +0,0 @@ -include(common.pri) - -qtConfig(build-qtwebengine-core):qtConfig(webengine-spellchecker) { - qtConfig(webengine-native-spellchecker): gn_args += use_browser_spellchecker=true - else: gn_args += use_browser_spellchecker=false -} else { - gn_args += use_browser_spellchecker=false -} diff --git a/src/core/core.pro b/src/core/core.pro deleted file mode 100644 index f2d3fd307..000000000 --- a/src/core/core.pro +++ /dev/null @@ -1,48 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -QT_FOR_CONFIG += buildtools-private -TEMPLATE = subdirs - -# core_headers is a dummy module to syncqt the headers so we can -# use them by later targets -core_headers.file = core_headers.pro -core_api.file = api/core_api.pro - -# This will take the compile output of ninja, and link+deploy the final binary. -core_module.file = core_module.pro -core_module.depends = core_api - -core_generator.file = core_generator.pro -core_generator.depends = core_headers - -# core_gn_generator.pro is a dummy .pro file that is used by qmake -# to generate our main BUILD.gn file - -gn_run.file = gn_run.pro -gn_run.depends = core_generator - -core_api.depends = gn_run - -# A fake project for qt creator -core_project.file = core_project.pro -core_project.depends = gn_run - -!qtConfig(webengine-core-support):qtConfig(build-qtwebengine-core):!build_pass { - !qtwebengine_makeCheckWebEngineCoreError() { - errorbuild.commands = @echo $$shell_quote("QtWebEngineCore module will not be built. $${skipBuildReason}") - } else { - errorbuild.commands = @echo $$shell_quote("QtWebEngineCore module will not be built for unknown reason, please open a bug report at https://bugreports.qt.io") - } - errorbuild.CONFIG = phony - QMAKE_EXTRA_TARGETS += errorbuild - first.depends += errorbuild - QMAKE_EXTRA_TARGETS += first -} else { - SUBDIRS += \ - core_headers \ - core_generator \ - gn_run \ - core_api \ - core_module - - false: SUBDIRS += core_project -} diff --git a/src/core/core_chromium.pri b/src/core/core_chromium.pri deleted file mode 100644 index df938232c..000000000 --- a/src/core/core_chromium.pri +++ /dev/null @@ -1,352 +0,0 @@ -qtConfig(debug_and_release): CONFIG += debug_and_release - -macos { - # This fixes namespace builds on macOS. Specifically namespace ambiguity issues between Qt and - # Chromium forward declarations of NSString. - - # The single quotes are present so that qmake iteration does not interpret the space as - # delimiting a new value, they are removed before writing to the GN file, and the final shell - # quoting is done by GN itself. - forward_declaration_macro = "'Q_FORWARD_DECLARE_OBJC_CLASS(name)=class name;'" -} else { - forward_declaration_macro = "Q_FORWARD_DECLARE_OBJC_CLASS=QT_FORWARD_DECLARE_CLASS" -} - -# Defining keywords such as 'signal' clashes with the chromium code base. -DEFINES += QT_NO_KEYWORDS \ - QT_USE_QSTRINGBUILDER \ - $$forward_declaration_macro \ - QTWEBENGINECORE_VERSION_STR=\"$$MODULE_VERSION\" \ - QTWEBENGINEPROCESS_NAME=\"$$QTWEBENGINEPROCESS_NAME\" \ - BUILDING_CHROMIUM - -# Ensure that response files, generated by qtbase/mkspecs/features/moc.prf, are found by moc. -MOC_DIR = $$OUT_PWD/$$getConfigDir()/.moc -RCC_DIR = $$OUT_PWD/$$getConfigDir()/.rcc - -# Assume that we want mobile touch and low-end hardware behaviors -# whenever we are cross compiling. -qtConfig(webengine-embedded-build): DEFINES += QTWEBENGINE_EMBEDDED_SWITCHES - -INCLUDEPATH += $$PWD $$PWD/api - -clang_cl { - QMAKE_CFLAGS -= $$QMAKE_CFLAGS_MSVC_COMPAT - QMAKE_CXXFLAGS -= $$QMAKE_CFLAGS_MSVC_COMPAT -} - -SOURCES = \ - accessibility_activation_observer.cpp \ - accessibility_tree_formatter_qt.cpp \ - authentication_dialog_controller.cpp \ - browser_accessibility_manager_qt.cpp \ - browser_accessibility_qt.cpp \ - browsing_data_remover_delegate_qt.cpp \ - browser_main_parts_qt.cpp \ - browser_message_filter_qt.cpp \ - certificate_error_controller.cpp \ - chromium_overrides.cpp \ - client_cert_select_controller.cpp \ - clipboard_qt.cpp \ - color_chooser_qt.cpp \ - color_chooser_controller.cpp \ - common/qt_messages.cpp \ - compositor/compositor.cpp \ - compositor/content_gpu_client_qt.cpp \ - compositor/display_overrides.cpp \ - compositor/display_software_output_surface.cpp \ - content_client_qt.cpp \ - content_browser_client_qt.cpp \ - content_main_delegate_qt.cpp \ - content_utility_client_qt.cpp \ - delegated_frame_host_client_qt.cpp \ - desktop_screen_qt.cpp \ - devtools_frontend_qt.cpp \ - devtools_manager_delegate_qt.cpp \ - download_manager_delegate_qt.cpp \ - favicon_manager.cpp \ - file_picker_controller.cpp \ - find_text_helper.cpp \ - javascript_dialog_controller.cpp \ - javascript_dialog_manager_qt.cpp \ - login_delegate_qt.cpp \ - media_capture_devices_dispatcher.cpp \ - native_web_keyboard_event_qt.cpp \ - net/client_cert_override.cpp \ - net/client_cert_store_data.cpp \ - net/cookie_monster_delegate_qt.cpp \ - net/custom_url_loader_factory.cpp \ - net/proxy_config_monitor.cpp \ - net/proxy_config_service_qt.cpp \ - net/proxying_url_loader_factory_qt.cpp \ - net/proxying_restricted_cookie_manager_qt.cpp \ - net/qrc_url_scheme_handler.cpp \ - net/ssl_host_state_delegate_qt.cpp \ - net/system_network_context_manager.cpp \ - net/url_request_custom_job_delegate.cpp \ - net/url_request_custom_job_proxy.cpp \ - net/webui_controller_factory_qt.cpp \ - ozone/gl_context_qt.cpp \ - ozone/gl_share_context_qt.cpp \ - ozone/gl_ozone_egl_qt.cpp \ - ozone/gl_surface_qt.cpp \ - ozone/gl_surface_egl_qt.cpp \ - ozone/gl_surface_wgl_qt.cpp \ - ozone/platform_window_qt.cpp \ - ozone/surface_factory_qt.cpp \ - permission_manager_qt.cpp \ - platform_notification_service_qt.cpp \ - process_main.cpp \ - profile_adapter.cpp \ - profile_adapter_client.cpp \ - profile_qt.cpp \ - profile_io_data_qt.cpp \ - quota_permission_context_qt.cpp \ - quota_request_controller_impl.cpp \ - pref_service_adapter.cpp \ - register_protocol_handler_request_controller_impl.cpp \ - render_view_context_menu_qt.cpp \ - render_widget_host_view_qt.cpp \ - render_widget_host_view_qt_delegate_client.cpp \ - renderer/content_renderer_client_qt.cpp \ - renderer/content_settings_observer_qt.cpp \ - renderer/render_frame_observer_qt.cpp \ - renderer/web_engine_page_render_frame.cpp \ - renderer/render_configuration.cpp \ - renderer/user_resource_controller.cpp \ - renderer_host/web_engine_page_host.cpp \ - renderer_host/user_resource_controller_host.cpp \ - resource_bundle_qt.cpp \ - resource_context_qt.cpp \ - touch_handle_drawable_qt.cpp \ - touch_selection_controller_client_qt.cpp \ - touch_selection_menu_controller.cpp \ - type_conversion.cpp \ - user_notification_controller.cpp \ - user_script.cpp \ - visited_links_manager_qt.cpp \ - web_contents_adapter.cpp \ - web_contents_delegate_qt.cpp \ - web_contents_view_qt.cpp \ - web_engine_context.cpp \ - web_engine_context_threads.cpp \ - web_engine_error.cpp \ - web_engine_library_info.cpp \ - web_engine_settings.cpp \ - web_event_factory.cpp - -HEADERS = \ - accessibility_activation_observer.h \ - authentication_dialog_controller_p.h \ - authentication_dialog_controller.h \ - build_config_qt.h \ - browser_accessibility_manager_qt.h \ - browser_accessibility_qt.h \ - browsing_data_remover_delegate_qt.h \ - browser_main_parts_qt.h \ - browser_message_filter_qt.h \ - certificate_error_controller.h \ - client_cert_select_controller.h \ - clipboard_change_observer.h \ - clipboard_qt.h \ - color_chooser_qt.h \ - color_chooser_controller_p.h \ - color_chooser_controller.h \ - common/qt_messages.h \ - compositor/compositor.h \ - compositor/content_gpu_client_qt.h \ - compositor/display_software_output_surface.h \ - content_client_qt.h \ - content_browser_client_qt.h \ - content_main_delegate_qt.h \ - content_utility_client_qt.h \ - delegated_frame_host_client_qt.h \ - desktop_screen_qt.h \ - devtools_frontend_qt.h \ - devtools_manager_delegate_qt.h \ - download_manager_delegate_qt.h \ - favicon_manager.h \ - file_picker_controller.h \ - find_text_helper.h \ - global_descriptors_qt.h \ - javascript_dialog_controller_p.h \ - javascript_dialog_controller.h \ - javascript_dialog_manager_qt.h \ - login_delegate_qt.h \ - media_capture_devices_dispatcher.h \ - net/client_cert_override.h \ - net/client_cert_store_data.h \ - net/cookie_monster_delegate_qt.h \ - net/custom_url_loader_factory.h \ - net/proxying_url_loader_factory_qt.h \ - net/proxying_restricted_cookie_manager_qt.h \ - net/qrc_url_scheme_handler.h \ - net/ssl_host_state_delegate_qt.h \ - net/system_network_context_manager.h \ - net/url_request_custom_job_delegate.h \ - net/url_request_custom_job_proxy.h \ - net/webui_controller_factory_qt.h \ - ozone/gl_context_qt.h \ - ozone/gl_share_context_qt.h \ - ozone/gl_ozone_egl_qt.h \ - ozone/gl_surface_qt.h \ - ozone/gl_surface_egl_qt.h \ - ozone/gl_surface_wgl_qt.h \ - ozone/platform_window_qt.h \ - ozone/surface_factory_qt.h \ - permission_manager_qt.h \ - platform_notification_service_qt.h \ - pref_service_adapter.h \ - process_main.h \ - profile_adapter.h \ - profile_adapter_client.h \ - profile_qt.h \ - profile_io_data_qt.h \ - proxy_config_monitor.h \ - proxy_config_service_qt.h \ - quota_permission_context_qt.h \ - quota_request_controller.h \ - quota_request_controller_impl.h \ - register_protocol_handler_request_controller.h \ - register_protocol_handler_request_controller_impl.h \ - render_view_context_menu_qt.h \ - render_widget_host_view_qt.h \ - render_widget_host_view_qt_delegate.h \ - render_widget_host_view_qt_delegate_client.h \ - renderer/content_renderer_client_qt.h \ - renderer/content_settings_observer_qt.h \ - renderer/render_frame_observer_qt.h \ - renderer/web_engine_page_render_frame.h \ - renderer/render_configuration.h \ - renderer/user_resource_controller.h \ - renderer_host/web_engine_page_host.h \ - renderer_host/user_resource_controller_host.h \ - request_controller.h \ - resource_context_qt.h \ - touch_handle_drawable_client.h \ - touch_handle_drawable_qt.h \ - touch_selection_controller_client_qt.h \ - touch_selection_menu_controller.h \ - type_conversion.h \ - user_notification_controller.h \ - user_script.h \ - visited_links_manager_qt.h \ - web_contents_adapter.h \ - web_contents_adapter_client.h \ - web_contents_delegate_qt.h \ - web_contents_view_qt.h \ - web_engine_context.h \ - web_engine_error.h \ - web_engine_library_info.h \ - web_engine_settings.h \ - web_event_factory.h - -qtConfig(webengine-ozone-x11) { - HEADERS += ozone/gl_ozone_glx_qt.h \ - ozone/gl_surface_glx_qt.h - SOURCES += ozone/gl_surface_glx_qt.cpp \ - ozone/gl_ozone_glx_qt.cpp -} - -qtConfig(webengine-pepper-plugins) { - - SOURCES += \ - renderer_host/pepper/pepper_host_factory_qt.cpp \ - renderer_host/pepper/pepper_isolated_file_system_message_filter.cpp \ - renderer/pepper/pepper_renderer_host_factory_qt.cpp \ - renderer/plugins/loadable_plugin_placeholder_qt.cpp - - HEADERS += \ - renderer_host/pepper/pepper_host_factory_qt.h \ - renderer_host/pepper/pepper_isolated_file_system_message_filter.h \ - renderer/pepper/pepper_renderer_host_factory_qt.h \ - renderer/plugins/loadable_plugin_placeholder_qt.h -} - -qtConfig(webengine-printing-and-pdf) { - - SOURCES += \ - printing/print_view_manager_base_qt.cpp \ - printing/print_view_manager_qt.cpp \ - printing/printer_worker.cpp \ - renderer/print_web_view_helper_delegate_qt.cpp - - HEADERS += \ - printing/print_view_manager_base_qt.h \ - printing/print_view_manager_qt.h \ - printing/printer_worker.h \ - renderer/print_web_view_helper_delegate_qt.h - - # pdf sources - SOURCES += printing/pdfium_document_wrapper_qt.cpp - HEADERS += printing/pdfium_document_wrapper_qt.h -} - -contains(QT_CONFIG, opengl) { - SOURCES += \ - compositor/compositor_resource_fence.cpp \ - compositor/display_gl_output_surface.cpp - HEADERS += \ - compositor/compositor_resource_fence.h \ - compositor/display_gl_output_surface.h - - macos { - HEADERS+=macos_context_type_helper.h - SOURCES+=macos_context_type_helper.mm - } -} - -qtConfig(webengine-geolocation) { - SOURCES += location_provider_qt.cpp - HEADERS += location_provider_qt.h -} - -qtConfig(webengine-webchannel) { - HEADERS += renderer/web_channel_ipc_transport.h \ - renderer_host/web_channel_ipc_transport_host.h - - SOURCES += renderer/web_channel_ipc_transport.cpp \ - renderer_host/web_channel_ipc_transport_host.cpp -} - -qtConfig(webengine-extensions) { - SOURCES += \ - common/extensions/extensions_api_provider_qt.cpp \ - common/extensions/extensions_client_qt.cpp \ - extensions/component_extension_resource_manager_qt.cpp \ - extensions/extension_host_delegate_qt.cpp \ - extensions/extension_system_qt.cpp \ - extensions/extension_system_factory_qt.cpp \ - extensions/extension_web_contents_observer_qt.cpp \ - extensions/extensions_api_client_qt.cpp \ - extensions/extensions_browser_client_qt.cpp \ - extensions/messaging_delegate_qt.cpp \ - extensions/mime_handler_view_guest_delegate_qt.cpp \ - extensions/pdf_iframe_navigation_throttle_qt.cpp \ - extensions/plugin_service_filter_qt.cpp \ - net/plugin_response_interceptor_url_loader_throttle.cpp \ - renderer/extensions/extensions_dispatcher_delegate_qt.cpp \ - renderer/extensions/extensions_renderer_client_qt.cpp \ - renderer/extensions/renderer_permissions_policy_delegate_qt.cpp \ - renderer/extensions/resource_request_policy_qt.cpp - - HEADERS += \ - common/extensions/extensions_api_provider_qt.h \ - common/extensions/extensions_client_qt.h \ - extensions/component_extension_resource_manager_qt.h \ - extensions/extension_host_delegate_qt.h \ - extensions/extension_system_qt.h \ - extensions/extension_system_factory_qt.h \ - extensions/extension_web_contents_observer_qt.h \ - extensions/extensions_api_client_qt.h \ - extensions/extensions_browser_client_qt.h \ - extensions/messaging_delegate_qt.h \ - extensions/mime_handler_view_guest_delegate_qt.h \ - extensions/pdf_iframe_navigation_throttle_qt.h \ - extensions/plugin_service_filter_qt.h \ - net/plugin_response_interceptor_url_loader_throttle.h \ - renderer/extensions/extensions_dispatcher_delegate_qt.h \ - renderer/extensions/extensions_renderer_client_qt.h \ - renderer/extensions/renderer_permissions_policy_delegate_qt.h \ - renderer/extensions/resource_request_policy_qt.h -} diff --git a/src/core/core_common.pri b/src/core/core_common.pri deleted file mode 100644 index 9e06b37fa..000000000 --- a/src/core/core_common.pri +++ /dev/null @@ -1,21 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) -QT_FOR_CONFIG += buildtools-private webenginecore webenginecore-private - -# NOTE: The TARGET, QT, QT_PRIVATE variables are used in both core_module.pro and core_gyp_generator.pro -# gyp/ninja will take care of the compilation, qmake/make will finish with linking and install. - -TARGET = QtWebEngineCore -QT += qml-private quick-private gui-private core-private -qtConfig(webengine-printing-and-pdf): QT += printsupport -QT_PRIVATE += webenginecoreheaders-private - -qtConfig(webengine-geolocation): QT += positioning -qtConfig(webengine-webchannel): QT += webchannel - -# LTO does not work for Chromium at the moment, so disable it completely for core. -CONFIG -= ltcg - -# QtBase requires C++17 -CONFIG += c++17 - diff --git a/src/core/core_generator.pro b/src/core/core_generator.pro deleted file mode 100644 index 935c653a4..000000000 --- a/src/core/core_generator.pro +++ /dev/null @@ -1,7 +0,0 @@ -include(core_common.pri) - -include(core_gn_config.pri) - -TEMPLATE = lib - -include(core_chromium.pri) diff --git a/src/core/core_gn_config.pri b/src/core/core_gn_config.pri deleted file mode 100644 index 2b8f2e18f..000000000 --- a/src/core/core_gn_config.pri +++ /dev/null @@ -1,17 +0,0 @@ -CONFIG = gn_generator $$CONFIG -GN_SRC_DIR = $$PWD -GN_FILE = $$OUT_PWD/$$getConfigDir()/BUILD.gn -GN_FIND_MOCABLES_SCRIPT = $$shell_path($$QTWEBENGINE_ROOT/tools/scripts/gn_find_mocables.py) -GN_RUN_BINARY_SCRIPT = $$shell_path($$QTWEBENGINE_ROOT/tools/scripts/gn_run_binary.py) -GN_IMPORTS = $$PWD/qtwebengine.gni -qtConfig (webengine-extensions) { - GN_INCLUDES += $$PWD/qtwebengine_sources.gni $$PWD/qtwebengine_resources.gni $$PWD/common/extensions/api/qtwebengine_extensions_features.gni -} else { - GN_INCLUDES = $$PWD/qtwebengine_sources.gni $$PWD/qtwebengine_resources.gni -} -GN_CORE_INCLUDE_DIRS = $$PWD/service -GN_CREATE_PRI = true -GN_PRECOMPILED_HEADERS = true -QMAKE_INTERNAL_INCLUDED_FILES = $$GN_IMPORTS $$GN_INCLUDES $$GN_FILE - - diff --git a/src/core/core_headers.pro b/src/core/core_headers.pro deleted file mode 100644 index cd5352eb7..000000000 --- a/src/core/core_headers.pro +++ /dev/null @@ -1,6 +0,0 @@ -TARGET = QtWebEngineCore -CONFIG += no_private_module header_module internal_module no_plist -QT -= core gui -MODULE = webenginecoreheaders -MODULE_CFG_FILE = qtwebenginecore-config -load(qt_module) diff --git a/src/core/core_module.pro b/src/core/core_module.pro deleted file mode 100644 index 520b452f7..000000000 --- a/src/core/core_module.pro +++ /dev/null @@ -1,120 +0,0 @@ -MODULE = webenginecore - -include(core_common.pri) -include($${QTWEBENGINE_ROOT}/src/buildtools/config/linking.pri) - -api_library_name = qtwebenginecoreapi$$qtPlatformTargetSuffix() -api_library_path = $$OUT_PWD/api/$$getConfigDir() -LIBS_PRIVATE += -L$$api_library_path -CONFIG *= no_smart_library_merge -osx { - LIBS_PRIVATE += -Wl,-force_load,$${api_library_path}$${QMAKE_DIR_SEP}lib$${api_library_name}.a -} else: win32 { - !qtConfig(webengine-developer-build) { - # Remove unused functions and data in debug non-developer builds, because the binaries will - # be smaller in the shipped packages. - QMAKE_LFLAGS += /OPT:REF - } else:CONFIG(debug, debug|release):!clang_cl { - # Make sure to override qtbase's QMAKE_LFLAGS_DEBUG option in debug developer builds, - # because qmake chooses and overrides the option when it gets appended to QMAKE_LFLAGS in - # qtbase\mkspecs\features\default_post.prf, regardless of what Chromium passes back from GN. - QMAKE_LFLAGS_DEBUG -= /DEBUG - QMAKE_LFLAGS_DEBUG += /DEBUG:FASTLINK - } - # Simulate -whole-archive by passing the list of object files that belong to the public - # API library as response file to the linker. - QMAKE_LFLAGS += @$${api_library_path}$${QMAKE_DIR_SEP}$${api_library_name}.lib.objects -} else { - QMAKE_LFLAGS += -Wl,-whole-archive -l$$api_library_name -Wl,-no-whole-archive -} - -win32 { - POST_TARGETDEPS += $${api_library_path}$${QMAKE_DIR_SEP}$${api_library_name}.lib -} else { - POST_TARGETDEPS += $${api_library_path}$${QMAKE_DIR_SEP}lib$${api_library_name}.a -} - -# Needed to set a CFBundleIdentifier -QMAKE_INFO_PLIST = Info_mac.plist - -# Using -Wl,-Bsymbolic-functions seems to confuse the dynamic linker -# and doesn't let Chromium get access to libc symbols through dlsym. -CONFIG -= bsymbolic_functions - -linux { - !ccache:!use_gold_linker:!use_lld_linker { - QMAKE_LINK="ulimit -n 4096 && $$QMAKE_LINK" - QMAKE_LINK_SHLIB="ulimit -n 4096 && $$QMAKE_LINK_SHLIB" - } - qtConfig(separate_debug_info): QMAKE_POST_LINK="cd $(DESTDIR) && $(STRIP) --strip-unneeded $(TARGET)" -} - -REPACK_DIR = $$OUT_PWD/$$getConfigDir() - -# Duplicated from resources/resources.gyp -LOCALE_LIST = am ar bg bn ca cs da de el en-GB en-US es-419 es et fa fi fil fr gu he hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv sw ta te th tr uk vi zh-CN zh-TW -for(LOC, LOCALE_LIST) { - locales.files += $$REPACK_DIR/qtwebengine_locales/$${LOC}.pak -} -resources.files = $$REPACK_DIR/qtwebengine_resources.pak \ - $$REPACK_DIR/qtwebengine_resources_100p.pak \ - $$REPACK_DIR/qtwebengine_resources_200p.pak \ - $$REPACK_DIR/qtwebengine_devtools_resources.pak - -icu.files = $$OUT_PWD/$$getConfigDir()/icudtl.dat - -!qtConfig(debug_and_release)|!qtConfig(build_all)|CONFIG(release, debug|release) { - qtConfig(framework) { - locales.version = Versions - locales.path = Resources/qtwebengine_locales - resources.version = Versions - resources.path = Resources - icu.version = Versions - icu.path = Resources - # No files, this prepares the bundle Helpers symlink, process.pro will create the directories - qtwebengineprocessplaceholder.version = Versions - qtwebengineprocessplaceholder.path = Helpers - QMAKE_BUNDLE_DATA += icu locales resources qtwebengineprocessplaceholder - } else { - locales.CONFIG += no_check_exist - locales.path = $$[QT_INSTALL_TRANSLATIONS]/qtwebengine_locales - resources.CONFIG += no_check_exist - resources.path = $$[QT_INSTALL_DATA]/resources - INSTALLS += locales resources - - !qtConfig(webengine-system-icu) { - icu.CONFIG += no_check_exist - icu.path = $$[QT_INSTALL_DATA]/resources - INSTALLS += icu - } - } - - !qtConfig(framework):!force_independent { - # - # Copy essential files to the qtbase build directory for non-prefix builds - # - - !qtConfig(webengine-system-icu) { - COPIES += icu - } - - COPIES += resources locales - } -} - -!build_pass:qtConfig(debug_and_release) { - # Special GNU make target that ensures linking isn't done for both debug and release builds - # at the same time. - notParallel.target = .NOTPARALLEL - QMAKE_EXTRA_TARGETS += notParallel -} - -OTHER_FILES = \ - $$files(../3rdparty/chromium/*.py, true) \ - $$files(../3rdparty/chromium/*.gyp, true) \ - $$files(../3rdparty/chromium/*.gypi, true) \ - $$files(../3rdparty/chromium/*.gn, true) \ - $$files(../3rdparty/chromium/*.gni, true) - -load(qt_module) - diff --git a/src/core/core_project.pro b/src/core/core_project.pro deleted file mode 100644 index 9c8e20808..000000000 --- a/src/core/core_project.pro +++ /dev/null @@ -1,28 +0,0 @@ -TEMPLATE = lib -# Fake project to make QtCreator happy. - -include(core_common.pri) - - -linking_pri = $$OUT_PWD/$$getConfigDir()/$${TARGET}.pri - -!include($$linking_pri) { - error("Could not find the linking information that gn should have generated.") -} - -CHROMIUM_SRC_DIR = $$QTWEBENGINE_ROOT/$$getChromiumSrcDir() -INCLUDEPATH += $$CHROMIUM_SRC_DIR \ - $$CHROMIUM_SRC_DIR/third_party/blink/public \ - $$OUT_PWD/$$getConfigDir()/gen - -SOURCES += $$NINJA_SOURCES -HEADERS += $$NINJA_HEADERS -DEFINES += $$NINJA_DEFINES - -lupdate_run { - SOURCES += clipboard_qt.cpp \ - profile_adapter_client.cpp \ - profile_adapter.cpp \ - render_view_context_menu_qt.cpp \ - web_contents_adapter.cpp -} diff --git a/src/core/gn_run.pro b/src/core/gn_run.pro deleted file mode 100644 index 4688ea59d..000000000 --- a/src/core/gn_run.pro +++ /dev/null @@ -1,68 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) -QT_FOR_CONFIG += buildtools-private webenginecore-private core-private gui-private - -TEMPLATE = aux - -qtConfig(debug_and_release): CONFIG += debug_and_release -qtConfig(build_all): CONFIG += build_all - -QT_TOOL.ninja.binary = $$shell_quote($$shell_path($$ninjaPath())) - -win32 { - # Add the gnuwin32/bin subdir of qt5.git to PATH. Needed for calling bison and friends. - gnuwin32path.name = PATH - gnuwin32path.value = $$shell_path($$clean_path($$QTWEBENGINE_ROOT/../gnuwin32/bin)) - gnuwin32path.CONFIG += prepend - exists($$gnuwin32path.value): QT_TOOL_ENV = gnuwin32path -} - -qtPrepareTool(NINJA, ninja) -QT_TOOL_ENV = - -build_pass|!debug_and_release { - gn_binary = gn - - runninja.target = run_ninja - - gn_args = $$gnWebEngineArgs() - - gn_args += "qtwebengine_target=\"$$system_path($$OUT_PWD/$$getConfigDir()):QtWebEngineCore\"" - - !qtConfig(webengine-system-gn) { - gn_binary = $$system_quote($$system_path($$gnPath())) - } - - gn_args = $$system_quote($$gn_args) - gn_src_root = $$system_quote($$system_path($$QTWEBENGINE_ROOT/$$getChromiumSrcDir())) - gn_build_root = $$system_quote($$system_path($$OUT_PWD/$$getConfigDir())) - gn_python = "--script-executable=$$pythonPathForSystem()" - gn_run = $$gn_binary gen $$gn_build_root $$gn_python --args=$$gn_args --root=$$gn_src_root - - message("Running: $$gn_run ") - !system($$gn_run) { - error("GN run error!") - } - - ninjaflags = $$(NINJAFLAGS) - isEmpty(ninjaflags):!silent: ninjaflags = "-v" - - runninja.commands = $$NINJA $$ninjaflags \$\(NINJAJOBS\) -C $$gn_build_root QtWebEngineCore - QMAKE_EXTRA_TARGETS += runninja - - build_pass:build_all: default_target.target = all - else: default_target.target = first - default_target.depends = runninja - QMAKE_EXTRA_TARGETS += default_target -} - -!build_pass:debug_and_release { - # Special GNU make target for the meta Makefile that ensures that our debug and release Makefiles won't both run ninja in parallel. - notParallel.target = .NOTPARALLEL - QMAKE_EXTRA_TARGETS += notParallel -} - -build_pass:CONFIG(debug, debug|release) { - TARGET = gn_run_debug -} - diff --git a/src/pdf/config/common.pri b/src/pdf/config/common.pri deleted file mode 100644 index 7e5459a2a..000000000 --- a/src/pdf/config/common.pri +++ /dev/null @@ -1,78 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/pdf/qtpdf-config.pri) -QT_FOR_CONFIG += pdf-private - -gn_args += use_nss_certs=false - -qtConfig(webengine-qt-png) { - gn_args += pdfium_use_qt_libpng=true - gn_args += "pdfium_qt_libpng_includes=\"$$system_path($$QMAKE_INCDIR_LIBPNG)\"" -} - -#qtConfig(webengine-qt-jpeg) { -# gn_args += use_qt_libjpeg=true -# gn_args += "qt_libjpeg_includes=\"$$system_path($$QMAKE_INCDIR_LIBJPEG)\"" -#} - -qtConfig(webengine-qt-harfbuzz) { - gn_args += use_qt_harfbuzz=true - gn_args += "qt_harfbuzz_includes=\"$$system_path($$QMAKE_INCDIR_HARFBUZZ)\"" -} - -qtConfig(webengine-qt-freetype) { - gn_args += use_qt_freetype=true - gn_args += "qt_freetype_includes=\"$$system_path($$QMAKE_INCDIR_FREETYPE)\"" -} - -qtConfig(webengine-qt-zlib) { - win32 { - CONFIG(debug, debug|release) { - qtzlib = Qt5Cored.lib - } else { - qtzlib = Qt5Core.lib - } - - } else { qtzlib = libQt5Core.a - } - gn_args += use_qt_zlib = true - gn_args += "qt_zlib_includes=\["\ - "\"$$system_path($$[QT_INSTALL_HEADERS])\"," \ - "\"$$system_path($$[QT_INSTALL_HEADERS]/QtCore)\"," \ - "\"$$system_path($$[QT_INSTALL_HEADERS]/QtZlib)\"\]" - gn_args += "qt_zlib=\"$$system_path($$[QT_INSTALL_LIBS]/$$qtzlib)\"" -} - -qtConfig(pdf-v8) { - gn_args += pdf_enable_v8=true -} else { - gn_args += pdf_enable_v8=false -} - -qtConfig(pdf-xfa) { - gn_args += pdf_enable_xfa=true -} else { - gn_args += pdf_enable_xfa=false -} - -qtConfig(pdf-xfa-bmp) { - gn_args += pdf_enable_xfa_bmp=true -} else { - gn_args += pdf_enable_xfa_bmp=false -} - -qtConfig(pdf-xfa-gif) { - gn_args += pdf_enable_xfa_gif=true -} else { - gn_args += pdf_enable_xfa_gif=false -} - -qtConfig(pdf-xfa-png) { - gn_args += pdf_enable_xfa_png=true -} else { - gn_args += pdf_enable_xfa_png=false -} - -qtConfig(pdf-xfa-tiff) { - gn_args += pdf_enable_xfa_tiff=true -} else { - gn_args += pdf_enable_xfa_tiff=false -} diff --git a/src/pdf/config/ios.pri b/src/pdf/config/ios.pri deleted file mode 100644 index c930c3fe3..000000000 --- a/src/pdf/config/ios.pri +++ /dev/null @@ -1,66 +0,0 @@ -load(functions) - -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/pdf/qtpdf-config.pri) -QT_FOR_CONFIG += buildtools-private pdf-private - -clang_dir = $$which($${QMAKE_CXX}) -clang_dir = $$clean_path("$$dirname(clang_dir)/../") - -gn_args += \ -use_qt=true \ -closure_compile=false \ -is_component_build=false \ -is_shared=true \ -is_debug=true \ -enable_message_center=false \ -enable_nacl=false \ -enable_remoting=false \ -enable_reporting=false \ -enable_resource_allowlist_generation=false \ -enable_swiftshader=false \ -enable_web_speech=false \ -has_native_accessibility=false \ -enable_debugallocation=false \ -use_allocator_shim=false \ -use_allocator=\"none\" \ -use_custom_libcxx=false \ -v8_use_external_startup_data=false \ -toolkit_views=false \ -treat_warnings_as_errors=false \ -safe_browsing_mode=0 \ -optimize_webui=false \ -forbid_non_component_debug_builds=false \ -clang_use_chrome_plugins=false \ -use_xcode_clang=true \ -clang_base_path=\"$${clang_dir}\" \ -ios_enable_code_signing=false \ -target_os=\"ios\" \ -ios_deployment_target=\"$${QMAKE_IOS_DEPLOYMENT_TARGET}\" \ -mac_sdk_min=\"$${QMAKE_MAC_SDK_VERSION_MAJOR_MINOR}\" \ -enable_ios_bitcode=true \ -use_jumbo_build=false - -device:simulator { - # we do fat libray - gn_args+= \ - target_cpu=\"$${QMAKE_APPLE_DEVICE_ARCHS}\" \ - use_qt_fat_lib=true \ - arm_use_neon=false\ - # note this adds one arch of simulator at the moment, see also additional_target_cpus - target_sysroot=\"$$xcodeSDKInfo(Path, $$device.sdk)\" \ - additional_target_sysroot=[\"$$xcodeSDKInfo(Path, $$simulator.sdk)\"] -} else { - simulator { - equals(QMAKE_APPLE_SIMULATOR_ARCHS,"x86_64") { - gn_args+=target_cpu=\"x64\" - } else { - gn_args+=target_cpu=\"$${QMAKE_APPLE_SIMULATOR_ARCHS}\" - } - gn_args+=target_sysroot=\"$$xcodeSDKInfo(Path, $$simulator.sdk)\" - } - device { - gn_args+=target_cpu=\"$${QMAKE_APPLE_DEVICE_ARCHS}\" - gn_args+=target_sysroot=\"$$xcodeSDKInfo(Path, $$device.sdk)\" - } -} diff --git a/src/pdf/configure.json b/src/pdf/configure.json deleted file mode 100644 index 069893660..000000000 --- a/src/pdf/configure.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "module": "pdf", - "depends" : [ "buildtools-private" ], - "testDir": "../../config.tests", - "condition": "module.gui && features.webengine-qtpdf-support && features.build-qtpdf", - "libraries": { - }, - "tests": { - }, - "features": { - "pdf-v8": { - "label": "Support V8", - "purpose": "Enables javascript support.", - "autoDetect": "false", - "condition": "!config.ios", - "output": ["privateFeature" ] - }, - "pdf-xfa": { - "label": "Support XFA", - "purpose": "Enables XFA support.", - "condition": "features.pdf-v8", - "output": ["privateFeature" ] - }, - "pdf-xfa-bmp": { - "label": "Support XFA-BMP", - "purpose": "Enables XFA-BMP support.", - "condition": "features.pdf-xfa", - "output": ["privateFeature" ] - }, - "pdf-xfa-gif": { - "label": "Support XFA-GIF", - "purpose": "Enables XFA-GIF support.", - "condition": "features.pdf-xfa", - "output": ["privateFeature" ] - }, - "pdf-xfa-png": { - "label": "Support XFA-PNG", - "purpose": "Enables XFA-PNG support.", - "condition": "features.pdf-xfa", - "output": ["privateFeature" ] - }, - "pdf-xfa-tiff": { - "label": "Support XFA-TIFF", - "purpose": "Enables XFA-TIFF support.", - "condition": "features.pdf-xfa", - "output": ["privateFeature" ] - } - }, - "report": [ - ], - "summary": [ - { - "section": "Qt PDF", - "entries": [ - "pdf-v8", - "pdf-xfa", - "pdf-xfa-bmp", - "pdf-xfa-gif", - "pdf-xfa-png", - "pdf-xfa-tiff" - ] - } - ] -} diff --git a/src/pdf/gn_run.pro b/src/pdf/gn_run.pro deleted file mode 100644 index 70ee582a9..000000000 --- a/src/pdf/gn_run.pro +++ /dev/null @@ -1,69 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -QT_FOR_CONFIG += buildtools-private - -TEMPLATE = aux - -qtConfig(debug_and_release): CONFIG += debug_and_release -qtConfig(build_all): CONFIG += build_all - -qtConfig(webengine-system-ninja) { - QT_TOOL.ninja.binary = ninja -} else { - QT_TOOL.ninja.binary = $$shell_quote($$shell_path($$ninjaPath())) -} - -win32 { - # Add the gnuwin32/bin subdir of qt5.git to PATH. Needed for calling bison and friends. - gnuwin32path.name = PATH - gnuwin32path.value = $$shell_path($$clean_path($$QTWEBENGINE_ROOT/../gnuwin32/bin)) - gnuwin32path.CONFIG += prepend - exists($$gnuwin32path.value): QT_TOOL_ENV = gnuwin32path -} - -qtPrepareTool(NINJA, ninja) -QT_TOOL_ENV = - -build_pass|!debug_and_release { - gn_binary = gn - - runninja.target = run_ninja - - # fixme: refine args - gn_args = $$gnPdfArgs() - - # fixme: qtwebengine_target - gn_args += "qtwebengine_target=\"$$system_path($$OUT_PWD/$$getConfigDir()):QtPdf\"" - - # fixme: - !qtConfig(webengine-system-gn) { - gn_binary = $$system_quote($$system_path($$gnPath())) - } - - gn_args = $$system_quote($$gn_args) - gn_src_root = $$system_quote($$system_path($$QTWEBENGINE_ROOT/$$getChromiumSrcDir())) - gn_build_root = $$system_quote($$system_path($$OUT_PWD/$$getConfigDir())) - gn_python = "--script-executable=$$pythonPathForSystem()" - gn_run = $$gn_binary gen $$gn_build_root $$gn_python --args=$$gn_args --root=$$gn_src_root - - message("Running: $$gn_run ") - !system($$gn_run) { - error("GN run error!") - } - - ninjaflags = $$(NINJAFLAGS) - isEmpty(ninjaflags):!silent: ninjaflags = "-v" - - runninja.commands = $$NINJA $$ninjaflags -C $$gn_build_root QtPdf - QMAKE_EXTRA_TARGETS += runninja - - build_pass:build_all: default_target.target = all - else: default_target.target = first - default_target.depends = runninja - QMAKE_EXTRA_TARGETS += default_target -} - -!build_pass:debug_and_release { - # Special GNU make target for the meta Makefile that ensures that our debug and release Makefiles won't both run ninja in parallel. - notParallel.target = .NOTPARALLEL - QMAKE_EXTRA_TARGETS += notParallel -} diff --git a/src/pdf/pdf.pro b/src/pdf/pdf.pro deleted file mode 100644 index 9f98c32b0..000000000 --- a/src/pdf/pdf.pro +++ /dev/null @@ -1,31 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -QT_FOR_CONFIG += buildtools-private -TEMPLATE = subdirs -pdfcore.file = pdfcore.pro -pdfcore_generator.file = pdfcore_generator.pro -gn_run.file = gn_run.pro -pdfcore_prl_generator.file = pdfcore_prl_generator.pro -gn_run.depends = pdfcore_generator -pdfcore_prl_generator.depends = gn_run -pdfcore.depends = pdfcore_prl_generator -quick.depends = pdfcore - -!qtConfig(webengine-qtpdf-support):qtConfig(build-qtpdf)::!build_pass { - !qtwebengine_makeCheckPdfError() { - errorbuild.commands = @echo $$shell_quote("QtPdf will not be built. $${skipBuildReason}") - } else { - errorbuild.commands = @echo $$shell_quote("QtPdf module will not be built for unknown reason, please open a bug report at https://bugreports.qt.io") - } - errorbuild.CONFIG = phony - QMAKE_EXTRA_TARGETS += errorbuild - first.depends += errorbuild - QMAKE_EXTRA_TARGETS += first -} else { - SUBDIRS += \ - pdfcore_generator \ - gn_run \ - pdfcore_prl_generator \ - pdfcore \ - quick -} - diff --git a/src/pdf/pdfcore.pro b/src/pdf/pdfcore.pro deleted file mode 100644 index bb7146853..000000000 --- a/src/pdf/pdfcore.pro +++ /dev/null @@ -1,87 +0,0 @@ -TARGET = QtPdf -MODULE = pdf - -QT += gui core core-private -QT_PRIVATE += network - -TEMPLATE = lib - -INCLUDEPATH += $$QTWEBENGINE_ROOT/src/pdf -CHROMIUM_SRC_DIR = $$QTWEBENGINE_ROOT/$$getChromiumSrcDir() -CHROMIUM_GEN_DIR = $$OUT_PWD/../$$getConfigDir()/gen -INCLUDEPATH += $$QTWEBENGINE_ROOT/src/pdf \ - $$CHROMIUM_GEN_DIR \ - $$CHROMIUM_SRC_DIR \ - api - -DEFINES += QT_BUILD_PDF_LIB -win32: DEFINES += NOMINMAX - -QMAKE_DOCS = $$PWD/doc/qtpdf.qdocconf - -gcc { - QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-parameter -} - -msvc { - QMAKE_CXXFLAGS_WARN_ON += -wd"4100" -} - -include($${QTWEBENGINE_ROOT}/src/buildtools/config/linking.pri) - -# install static dependencies and handle prl files for static builds - -static:!isEmpty(NINJA_ARCHIVES) { - static_dep_pri = $$OUT_PWD/$$getConfigDir()/$${TARGET}_static_dep.pri - !include($${static_dep_pri}) { - error("Could not find the prl information.") - } - ninja_archives = $$eval($$list($$NINJA_ARCHIVES)) - ninja_archs_install.files = $${ninja_archives} - ninja_archs_install.path = $$[QT_INSTALL_LIBS]/static_chrome - ninja_archs_install.CONFIG = no_check_exist - INSTALLS += ninja_archs_install -} - -SOURCES += \ - qpdfbookmarkmodel.cpp \ - qpdfdestination.cpp \ - qpdfdocument.cpp \ - qpdflinkmodel.cpp \ - qpdfpagenavigation.cpp \ - qpdfpagerenderer.cpp \ - qpdfsearchmodel.cpp \ - qpdfsearchresult.cpp \ - qpdfselection.cpp \ - -# all "public" headers must be in "api" for sync script and to hide auto generated headers -# by Chromium in case of in-source build - -HEADERS += \ - api/qpdfbookmarkmodel.h \ - api/qpdfdestination.h \ - api/qpdfdestination_p.h \ - api/qpdfdocument.h \ - api/qpdfdocument_p.h \ - api/qpdfdocumentrenderoptions.h \ - api/qtpdfglobal.h \ - api/qpdflinkmodel_p.h \ - api/qpdflinkmodel_p_p.h \ - api/qpdfnamespace.h \ - api/qpdfpagenavigation.h \ - api/qpdfpagerenderer.h \ - api/qpdfsearchmodel.h \ - api/qpdfsearchmodel_p.h \ - api/qpdfsearchresult.h \ - api/qpdfsearchresult_p.h \ - api/qpdfselection.h \ - api/qpdfselection_p.h \ - - -qtConfig(webengine-qt-freetype): QMAKE_USE += freetype -qtConfig(webengine-qt-png): QMAKE_USE += libpng -qtConfig(webengine-qt-harfbuzz): QMAKE_USE += harfbuzz -#qtConfig(webengine-qt-jpeg): QMAKE_USE += libjpeg -qtConfig(webengine-qt-zlib){} #qtzlib is a part of QtCore - -load(qt_module) diff --git a/src/pdf/pdfcore_generator.pro b/src/pdf/pdfcore_generator.pro deleted file mode 100644 index e5c7258b7..000000000 --- a/src/pdf/pdfcore_generator.pro +++ /dev/null @@ -1,15 +0,0 @@ -qtConfig(debug_and_release): CONFIG += debug_and_release - -TARGET = QtPdf -TEMPLATE = lib -CONFIG = gn_generator $$CONFIG -CONFIG -=static # note we still do static when linking -GN_SRC_DIR = $$PWD -GN_FILE = $$OUT_PWD/$$getConfigDir()/BUILD.gn -GN_FIND_MOCABLES_SCRIPT = $$shell_path($$QTWEBENGINE_ROOT/tools/scripts/gn_find_mocables.py) -GN_RUN_BINARY_SCRIPT = $$shell_path($$QTWEBENGINE_ROOT/tools/scripts/gn_run_binary.py) -GN_IMPORTS = $$PWD/qtpdf.gni -GN_CREATE_PRI = true -QMAKE_INTERNAL_INCLUDED_FILES = $$GN_IMPORTS $$GN_INCLUDES $$GN_FILE - - diff --git a/src/pdf/pdfcore_prl_generator.pro b/src/pdf/pdfcore_prl_generator.pro deleted file mode 100644 index 39fdaed40..000000000 --- a/src/pdf/pdfcore_prl_generator.pro +++ /dev/null @@ -1,27 +0,0 @@ - -qtConfig(debug_and_release): CONFIG += debug_and_release - -TARGET = QtPdf -TEMPLATE = aux - -build_pass|!debug_and_relase { - linking_pri = $$OUT_PWD/$$getConfigDir()/$${TARGET}.pri - !include($$linking_pri) { - error("Could not find the linking information that gn should have generated.") - } - - !isEmpty(NINJA_ARCHIVES) { - prl_file = $$OUT_PWD/$$getConfigDir()/$${TARGET}_static_dep.pri - ninja_archives = $$eval($$list($$NINJA_ARCHIVES)) - qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS] - for(ninja_arch, ninja_archives) { - ninja_arch_name = $$basename(ninja_arch) - ninja_arch_dirname = $$dirname(ninja_arch) - prl_content += "ninja_arch_prl_replace_$${ninja_arch_name}.match = $${ninja_arch_dirname}" - prl_content += "ninja_arch_prl_replace_$${ninja_arch_name}.replace = $${qqt_libdir}/static_chrome" - prl_content += "ninja_arch_prl_replace_$${ninja_arch_name}.CONFIG = path" - prl_content += "QMAKE_PRL_INSTALL_REPLACE += ninja_arch_prl_replace_$${ninja_arch_name}" - } - write_file($${prl_file}, prl_content) - } -} diff --git a/src/pdf/quick/quick.pro b/src/pdf/quick/quick.pro deleted file mode 100644 index 47c559091..000000000 --- a/src/pdf/quick/quick.pro +++ /dev/null @@ -1,40 +0,0 @@ -CXX_MODULE = qml -TARGET = pdfplugin -TARGETPATH = QtQuick/Pdf -IMPORT_VERSION = 1.0 - -# qpdfdocument_p.h includes pdfium headers which we must find in order to use private API -CHROMIUM_SRC_DIR = $$QTWEBENGINE_ROOT/$$getChromiumSrcDir() -INCLUDEPATH += $$CHROMIUM_SRC_DIR - -#QMAKE_DOCS = $$PWD/doc/qtquickpdf.qdocconf - -PDF_QML_FILES = \ - qml/PdfMultiPageView.qml \ - qml/PdfPageView.qml \ - qml/PdfScrollablePageView.qml \ - -QML_FILES += $$PDF_QML_FILES qmldir - -RESOURCES += resources.qrc - -SOURCES += \ - plugin.cpp \ - qquickpdfdocument.cpp \ - qquickpdflinkmodel.cpp \ - qquickpdfnavigationstack.cpp \ - qquickpdfsearchmodel.cpp \ - qquickpdfselection.cpp \ - qquicktableviewextra.cpp \ - -HEADERS += \ - qquickpdfdocument_p.h \ - qquickpdflinkmodel_p.h \ - qquickpdfnavigationstack_p.h \ - qquickpdfsearchmodel_p.h \ - qquickpdfselection_p.h \ - qquicktableviewextra_p.h \ - -QT += pdf pdf-private gui core qml quick quick-private -include($${OUT_PWD}/../$$getConfigDir()/QtPdf_static_dep.pri) -load(qml_plugin) diff --git a/src/pdf/quick/resources.qrc b/src/pdf/quick/resources.qrc deleted file mode 100644 index 8270a2028..000000000 --- a/src/pdf/quick/resources.qrc +++ /dev/null @@ -1,10 +0,0 @@ - - - qml/+material/PdfStyle.qml - qml/+universal/PdfStyle.qml - qml/PdfStyle.qml - qml/PdfMultiPageView.qml - qml/PdfPageView.qml - qml/PdfScrollablePageView.qml - - diff --git a/src/pdfwidgets/configure.json b/src/pdfwidgets/configure.json deleted file mode 100644 index b33f08555..000000000 --- a/src/pdfwidgets/configure.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "module": "pdfwidgets", - "condition": "module.pdf && features.pdf-widgets", - "depends": [ - "pdf-private" - ], - "commandline": { - "options": { - "pdf-widgets": "boolean" - } - }, - "features": { - "pdf-widgets": { - "label": "Support Qt PDF Widgets", - "purpose": "Provides Qt PDF Widgets support.", - "condition": "module.widgets", - "output": [ "privateFeature" ] - } - }, - "summary": [ - { - "section": "Qt PDF Widgets", - "entries": [ - "pdf-widgets" - ] - } - ] -} diff --git a/src/pdfwidgets/pdfwidgets.pro b/src/pdfwidgets/pdfwidgets.pro deleted file mode 100644 index 17772b886..000000000 --- a/src/pdfwidgets/pdfwidgets.pro +++ /dev/null @@ -1,13 +0,0 @@ -TARGET = QtPdfWidgets -QT = core gui widgets widgets-private pdf - -SOURCES += \ - qpdfview.cpp - -HEADERS += \ - qpdfview.h \ - qpdfview_p.h \ - qtpdfwidgetsglobal.h - -include($${OUT_PWD}/../pdf/$$getConfigDir()/QtPdf_static_dep.pri) -load(qt_module) diff --git a/src/plugins/imageformats/imageformats.pro b/src/plugins/imageformats/imageformats.pro deleted file mode 100644 index c3b9cb3a4..000000000 --- a/src/plugins/imageformats/imageformats.pro +++ /dev/null @@ -1,2 +0,0 @@ -TEMPLATE = subdirs -SUBDIRS += pdf diff --git a/src/plugins/imageformats/pdf/pdf.pro b/src/plugins/imageformats/pdf/pdf.pro deleted file mode 100644 index 1a11b8ef2..000000000 --- a/src/plugins/imageformats/pdf/pdf.pro +++ /dev/null @@ -1,13 +0,0 @@ -TARGET = qpdf -PLUGIN_TYPE = imageformats -PLUGIN_EXTENDS = pdf -PLUGIN_CLASS_NAME = QPdfPlugin - -HEADERS += qpdfiohandler_p.h -SOURCES += main.cpp \ - qpdfiohandler.cpp -QT += pdf - -include($${OUT_PWD}/../../../pdf/$$getConfigDir()/QtPdf_static_dep.pri) - -load(qt_plugin) diff --git a/src/plugins/plugins.pro b/src/plugins/plugins.pro deleted file mode 100644 index 50181aa19..000000000 --- a/src/plugins/plugins.pro +++ /dev/null @@ -1,3 +0,0 @@ -TEMPLATE = subdirs -qtHaveModule(webenginewidgets): qtHaveModule(designer): SUBDIRS += qwebengineview -qtHaveModule(pdf): qtConfig(imageformatplugin): SUBDIRS += imageformats diff --git a/src/plugins/qwebengineview/qwebengineview.pro b/src/plugins/qwebengineview/qwebengineview.pro deleted file mode 100644 index c18b6fe94..000000000 --- a/src/plugins/qwebengineview/qwebengineview.pro +++ /dev/null @@ -1,11 +0,0 @@ -TARGET = qwebengineview -QT += designer webenginewidgets - -PLUGIN_CLASS_NAME = QWebEngineViewPlugin -PLUGIN_TYPE = designer -CONFIG += tool_plugin -load(qt_plugin) - -SOURCES += qwebengineview_plugin.cpp -HEADERS += qwebengineview_plugin.h -RESOURCES += qwebengineview_plugin.qrc diff --git a/src/plugins/qwebengineview/qwebengineview_plugin.qrc b/src/plugins/qwebengineview/qwebengineview_plugin.qrc deleted file mode 100644 index 181625c48..000000000 --- a/src/plugins/qwebengineview/qwebengineview_plugin.qrc +++ /dev/null @@ -1,5 +0,0 @@ - - - images/qwebengineview.png - - diff --git a/src/process/process.pro b/src/process/process.pro deleted file mode 100644 index bd5752f7c..000000000 --- a/src/process/process.pro +++ /dev/null @@ -1,78 +0,0 @@ -TARGET = $$QTWEBENGINEPROCESS_NAME - -# Needed to set LSUIElement=1 -QMAKE_INFO_PLIST = Info_mac.plist - -QT_PRIVATE += core-private webenginecore-private - -INCLUDEPATH += ../core - -SOURCES = main.cpp - -CONFIG -= ltcg - -# On windows we need to statically link to the windows sandbox code -win32 { - # The Chromium headers we include are not clean - CONFIG -= warnings_are_errors - - # Look for linking information produced by GN - linking_pri = $$OUT_PWD/../core/$$getConfigDir()/qtwebengine_sandbox_win.pri - - !include($$linking_pri) { - error("Could not find the linking information that gn should have generated.") - } - isEmpty(NINJA_OBJECTS): error("//sandbox/win:sandbox linking changed, update process.pro") - isEmpty(NINJA_ARCHIVES): error("//sandbox/win:sandbox linking changed, update process.pro") - - LIBS_PRIVATE += $$NINJA_LIB_DIRS $$NINJA_LIBS $$NINJA_ARCHIVES $$NINJA_OBJECTS - QMAKE_LFLAGS += $$NINJA_LFLAGS - POST_TARGETDEPS += $$NINJA_TARGETDEPS - - CHROMIUM_SRC_DIR = $$QTWEBENGINE_ROOT/$$getChromiumSrcDir() - INCLUDEPATH += $$CHROMIUM_SRC_DIR \ - $$OUT_PWD/../core/$$getConfigDir()/gen - - SOURCES += \ - support_win.cpp - - msvc: QMAKE_LFLAGS += /MANIFESTINPUT:$$PWD/process.exe.manifest - VERSION = $${MODULE_VERSION}.0 -} else { - VERSION = $${MODULE_VERSION} -} - -TEMPLATE = app - -load(qt_build_paths) - -!build_pass:qtConfig(debug_and_release): CONFIG += release -CONFIG += relative_qt_rpath - -qtConfig(build_all): CONFIG += build_all - -qtConfig(framework) { - # Deploy the QtWebEngineProcess app bundle into the QtWebEngineCore framework. - DESTDIR = $$MODULE_BASE_OUTDIR/lib/QtWebEngineCore.framework/Versions/A/Helpers - - # Deploy the entitlements file so macdeployqt can use it. - entitlements.files = QtWebEngineProcess.entitlements - entitlements.path = Contents/Resources/ - QMAKE_BUNDLE_DATA += entitlements -} else { - CONFIG -= app_bundle - win32: DESTDIR = $$MODULE_BASE_OUTDIR/bin - else: DESTDIR = $$MODULE_BASE_OUTDIR/libexec -} -msvc: QMAKE_LFLAGS *= /LARGEADDRESSAWARE - -qtConfig(framework) { - target.path = $$[QT_INSTALL_LIBS]/QtWebEngineCore.framework/Versions/A/Helpers -} else { - target.path = $$[QT_INSTALL_LIBEXECS] -} - -load(qt_targets) -load(qt_common) - -INSTALLS += target diff --git a/src/src.pro b/src/src.pro deleted file mode 100644 index 3edec57ca..000000000 --- a/src/src.pro +++ /dev/null @@ -1,65 +0,0 @@ -load(functions) - -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/webenginequick/qtwebenginequick-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/webenginewidgets/qtwebenginewidgets-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/pdf/qtpdf-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/pdfwidgets/qtpdfwidgets-config.pri) - -QT_FOR_CONFIG += \ - buildtools-private \ - webenginecore \ - webenginecore-private \ - webenginequick \ - webenginequick-private \ - webenginewidgets \ - webenginewidgets-private \ - pdf-private \ - pdfwidgets-private - -TEMPLATE = subdirs - -qtConfig(build-qtwebengine-core):qtConfig(webengine-core-support) { - core.depends = buildtools - process.depends = core - webenginequick.depends = core - webenginewidgets.depends = core webenginequick - webenginequick_plugin.subdir = webenginequick/plugin - webenginequick_plugin.target = sub-webenginequick-plugin - webenginequick_plugin.depends = webenginequick - - SUBDIRS += buildtools core process - - qtConfig(webengine-spellchecker):!qtConfig(webengine-native-spellchecker):!cross_compile { - SUBDIRS += qwebengine_convert_dict - qwebengine_convert_dict.subdir = tools/qwebengine_convert_dict - qwebengine_convert_dict.depends = core - } - - qtConfig(webengine-quick) { - SUBDIRS += webenginequick - } - - qtConfig(webengine-widgets) { - SUBDIRS += plugins webenginewidgets - plugins.depends = webenginewidgets - } -} - -qtConfig(build-qtpdf):qtConfig(webengine-qtpdf-support) { - pdf.depends = buildtools - qtConfig(build-qtwebengine-core):qtConfig(webengine-core-support): pdf.depends += core - !contains(SUBDIRS, buildtools): SUBDIRS += buildtools - !contains(SUBDIRS, plugins): SUBDIRS += plugins - SUBDIRS += pdf - plugins.depends += pdf - qtConfig(pdf-widgets) { - pdfwidgets.depends = pdf - SUBDIRS += pdfwidgets - } -} - -# this needs to be last line for qmake -r -qtConfig(build-qtwebengine-core):!contains(SUBDIRS, core): SUBDIRS += core -qtConfig(build-qtpdf):!contains(SUBDIRS, pdf): SUBDIRS += pdf diff --git a/src/tools/qwebengine_convert_dict/qwebengine_convert_dict.pro b/src/tools/qwebengine_convert_dict/qwebengine_convert_dict.pro deleted file mode 100644 index 57f79f582..000000000 --- a/src/tools/qwebengine_convert_dict/qwebengine_convert_dict.pro +++ /dev/null @@ -1,55 +0,0 @@ -option(host_build) - -# Look for linking information produced by gyp for our target according to core_generated.gyp -linking_pri = $$OUT_PWD/../../core/$$getConfigDir()/convert_dict.pri - -!include($$linking_pri) { - error("Could not find the linking information that gn should have generated.") -} - -isEmpty(NINJA_OBJECTS): error("Missing object files from QtWebEngineCore linking pri.") -isEmpty(NINJA_LFLAGS): error("Missing linker flags from QtWebEngineCore linking pri") -isEmpty(NINJA_ARCHIVES): error("Missing archive files from QtWebEngineCore linking pri") -isEmpty(NINJA_LIBS): error("Missing library files from QtWebEngineCore linking pri") -OBJECTS = $$eval($$list($$NINJA_OBJECTS)) -linux { - LIBS_PRIVATE = -Wl,--start-group $$NINJA_ARCHIVES -Wl,--end-group -} else { - LIBS_PRIVATE = $$NINJA_ARCHIVES -} -LIBS_PRIVATE += $$NINJA_LIB_DIRS $$NINJA_LIBS -QMAKE_LFLAGS += $$NINJA_LFLAGS -POST_TARGETDEPS += $$NINJA_TARGETDEPS - -# Fixme: -Werror=unused-parameter in core -QMAKE_CXXFLAGS_WARN_ON = - -# Disable MSVC2015 warning C4577 ('noexcept' used with no exception handling mode specified) -win32: QMAKE_CXXFLAGS_WARN_ON = -wd4577 - -# Issue with some template compliation, smb smart should look at it -win32: DEFINES += NOMINMAX - -# To avoid conflict between windows.h and BoringSSL headers -win32: DEFINES += WIN32_LEAN_AND_MEAN - -CHROMIUM_SRC_DIR = $$QTWEBENGINE_ROOT/$$getChromiumSrcDir() -INCLUDEPATH += $$CHROMIUM_SRC_DIR \ - $$CHROMIUM_SRC_DIR/third_party/boringssl/src/include \ - $$OUT_PWD/../../core/$$getConfigDir()/gen - -SOURCES += \ - main.cpp - -QMAKE_TARGET_DESCRIPTION = "Qt WebEngine Dictionary Converter" - -CONFIG += c++14 - -# Support converting dictionaries in a prefix build, by supplying -# the path to the ICU data file located in the Qt build path, rather -# than the install path (which is not present at build time). -icu_data_dir.name = QT_WEBENGINE_ICU_DATA_DIR -icu_data_dir.value = $$OUT_PWD/../../../src/core/$$getConfigDir() -QT_TOOL_ENV = icu_data_dir -load(qt_tool) -QT_TOOL_ENV = diff --git a/src/webenginequick/configure.json b/src/webenginequick/configure.json deleted file mode 100644 index ce9421575..000000000 --- a/src/webenginequick/configure.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "module": "webenginequick", - "condition": "module.webenginecore && features.webengine-quick", - "depends": [ - "webenginecore-private" - ], - "commandline": { - "options": { - "webengine-quick": "boolean" - } - }, - "features": { - "webengine-quick": { - "label": "Support Qt WebEngineQuick", - "purpose": "Provides WebEngineQuick support.", - "output": [ "privateFeature" ] - }, - "webenginequick-ui-delegates": { - "label": "UI Delegates", - "section": "WebEngine", - "output": [ "privateFeature" ] - } - }, - "summary": [ - { - "section": "Qt WebEngineQuick", - "entries": [ - "webengine-quick", - "webenginequick-ui-delegates" - ] - } - ] -} - diff --git a/src/webenginequick/module.pro b/src/webenginequick/module.pro deleted file mode 100644 index 2c10aaa73..000000000 --- a/src/webenginequick/module.pro +++ /dev/null @@ -1,78 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/webenginequick/qtwebenginequick-config.pri) -QT_FOR_CONFIG += webenginequick-private webenginecore-private - -TARGET = QtWebEngineQuick -MODULE = webenginequick - -# For our export macros -DEFINES += QT_BUILD_WEBENGINE_LIB - -QT += qml quick webenginecore -QT_PRIVATE += quick-private gui-private core-private webenginecore-private - -QMAKE_DOCS = $$PWD/doc/qtwebengine.qdocconf - -INCLUDEPATH += $$PWD api ../core ../core/api - -SOURCES = \ - api/qquickwebengineaction.cpp \ - api/qquickwebengineclientcertificateselection.cpp \ - api/qquickwebenginedialogrequests.cpp \ - api/qquickwebenginehistory.cpp \ - api/qquickwebenginefaviconprovider.cpp \ - api/qquickwebenginenavigationrequest.cpp \ - api/qquickwebenginenewviewrequest.cpp \ - api/qquickwebengineprofile.cpp \ - api/qquickwebenginesettings.cpp \ - api/qquickwebenginesingleton.cpp \ - api/qquickwebenginetouchhandleprovider.cpp \ - api/qquickwebengineview.cpp \ - api/qtwebengineglobal.cpp \ - api/qquickwebenginescriptcollection.cpp \ - render_widget_host_view_qt_delegate_quick.cpp \ - render_widget_host_view_qt_delegate_quickwindow.cpp \ - ui_delegates_manager.cpp - -HEADERS = \ - api/qtwebengineglobal.h \ - api/qtwebengineglobal_p.h \ - api/qquickwebengineaction_p.h \ - api/qquickwebengineaction_p_p.h \ - api/qquickwebengineclientcertificateselection_p.h \ - api/qquickwebenginedialogrequests_p.h \ - api/qquickwebenginehistory_p.h \ - api/qquickwebenginefaviconprovider_p_p.h \ - api/qquickwebenginenavigationrequest_p.h \ - api/qquickwebenginenewviewrequest_p.h \ - api/qquickwebengineprofile.h \ - api/qquickwebengineprofile_p.h \ - api/qquickwebenginesettings_p.h \ - api/qquickwebenginesingleton_p.h \ - api/qquickwebenginetouchhandleprovider_p_p.h \ - api/qquickwebengineview_p.h \ - api/qquickwebengineview_p_p.h \ - api/qquickwebenginescriptcollection.h \ - render_widget_host_view_qt_delegate_quick.h \ - render_widget_host_view_qt_delegate_quickwindow.h \ - ui_delegates_manager.h - -!build_pass { - python = $$pythonPathForShell() - chromium_attributions.commands = \ - cd $$shell_quote($$shell_path($$PWD/../3rdparty)) && \ - $$python chromium/tools/licenses.py \ - --file-template ../../tools/about_credits.tmpl \ - --entry-template ../../tools/about_credits_entry.tmpl credits \ - $$shell_quote($$shell_path($$OUT_PWD/chromium_attributions.qdoc)) - chromium_attributions.CONFIG += phony - - QMAKE_EXTRA_TARGETS += chromium_attributions - - prepare_docs { - prepare_docs.depends += chromium_attributions - } else { - html_docs.depends += chromium_attributions - } -} - -load(qt_module) diff --git a/src/webenginequick/ui/ui.pro b/src/webenginequick/ui/ui.pro deleted file mode 100644 index 01754666a..000000000 --- a/src/webenginequick/ui/ui.pro +++ /dev/null @@ -1,20 +0,0 @@ -TARGETPATH = QtWebEngine/ControlsDelegates - -QML_FILES += \ - # Authentication Dialog - AuthenticationDialog.qml \ - # JS Dialogs - AlertDialog.qml \ - ColorDialog.qml \ - ConfirmDialog.qml \ - FilePicker.qml \ - PromptDialog.qml \ - # Menus. Based on Qt Quick Controls - Menu.qml \ - MenuItem.qml \ - MenuSeparator.qml \ - ToolTip.qml \ - information.png \ - question.png - -load(qml_module) diff --git a/src/webenginequick/webenginequick.pro b/src/webenginequick/webenginequick.pro deleted file mode 100644 index d7271a220..000000000 --- a/src/webenginequick/webenginequick.pro +++ /dev/null @@ -1,12 +0,0 @@ -TEMPLATE = subdirs - -qml_module.file = module.pro -qml_plugin.file = plugin/plugin.pro - -qml_plugin.depends = qml_module - -SUBDIRS += qml_module qml_plugin - -qtConfig(webenginequick-ui-delegates) { - SUBDIRS += ui -} diff --git a/src/webenginewidgets/configure.json b/src/webenginewidgets/configure.json deleted file mode 100644 index a27faf78d..000000000 --- a/src/webenginewidgets/configure.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "module": "webenginewidgets", - "condition": "module.webenginecore && features.webengine-widgets", - "depends": [ - "webenginecore-private" - ], - "commandline": { - "options": { - "webengine-widgets": "boolean" - } - }, - "features": { - "webengine-widgets": { - "label": "Support Qt WebEngine Widgets", - "purpose": "Provides WebEngine Widgets support.", - "condition": "module.widgets", - "output": [ "privateFeature" ] - } - }, - "summary": [ - { - "section": "Qt WebEngineWidgets", - "entries": [ - "webengine-widgets" - ] - } - ] -} diff --git a/src/webenginewidgets/webenginewidgets.pro b/src/webenginewidgets/webenginewidgets.pro deleted file mode 100644 index d4c3a25bb..000000000 --- a/src/webenginewidgets/webenginewidgets.pro +++ /dev/null @@ -1,26 +0,0 @@ -include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) -QT_FOR_CONFIG += webenginecore-private - -TARGET = QtWebEngineWidgets - -# For our export macros -DEFINES += QT_BUILD_WEBENGINEWIDGETS_LIB - -QT += webenginecore widgets network quick -QT_PRIVATE += quick-private gui-private core-private widgets-private quickwidgets webenginecore-private - -INCLUDEPATH += $$PWD api ../core ../core/api ../webenginequick/api - -SOURCES = \ - api/qwebenginenotificationpresenter.cpp \ - api/qwebengineview.cpp \ - render_widget_host_view_qt_delegate_widget.cpp - -HEADERS = \ - api/qtwebenginewidgetsglobal.h \ - api/qwebenginenotificationpresenter_p.h \ - api/qwebengineview.h \ - api/qwebengineview_p.h \ - render_widget_host_view_qt_delegate_widget.h - -load(qt_module) -- cgit v1.2.3