diff options
Diffstat (limited to 'src/buildtools/config')
-rw-r--r-- | src/buildtools/config/common.pri | 110 | ||||
-rw-r--r-- | src/buildtools/config/functions.pri | 8 | ||||
-rw-r--r-- | src/buildtools/config/linking.pri | 77 | ||||
-rw-r--r-- | src/buildtools/config/linux.pri | 178 | ||||
-rw-r--r-- | src/buildtools/config/mac_osx.pri | 38 | ||||
-rw-r--r-- | src/buildtools/config/support.pri | 247 | ||||
-rw-r--r-- | src/buildtools/config/windows.pri | 92 |
7 files changed, 0 insertions, 750 deletions
diff --git a/src/buildtools/config/common.pri b/src/buildtools/config/common.pri deleted file mode 100644 index 85781d251..000000000 --- a/src/buildtools/config/common.pri +++ /dev/null @@ -1,110 +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_whitelist_generation=false \ - enable_swiftshader=false \ - angle_enable_swiftshader=false \ - enable_web_auth=true \ - enable_web_speech=false \ - enable_widevine=true \ - forbid_non_component_debug_builds=false \ - has_native_accessibility=false \ - safe_browsing_mode=0 \ - toolkit_views=false \ - treat_warnings_as_errors=false \ - use_allocator_shim=false \ - use_allocator=\"none\" \ - use_custom_libcxx=false - -# No closure compile supported at this time -gn_args += \ - closure_compile=false \ - optimize_webui=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 e76f6ef10..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 56c18bdb5..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 \ - linux_use_bundled_binutils=false \ - use_udev=true \ - use_bundled_fontconfig=false \ - use_sysroot=false \ - enable_session_service=false \ - is_cfi=false \ - use_ozone=true \ - 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 e192f8777..000000000 --- a/src/buildtools/config/support.pri +++ /dev/null @@ -1,247 +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_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_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 bd236e1a5..000000000 --- a/src/buildtools/config/windows.pri +++ /dev/null @@ -1,92 +0,0 @@ -include(common.pri) - -gn_args += \ - use_sysroot=false \ - enable_session_service=false \ - ninja_use_custom_environment_files=false \ - is_multi_dll_chrome=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.") -} |