diff options
author | Michal Klocek <michal.klocek@qt.io> | 2022-04-26 21:18:44 +0200 |
---|---|---|
committer | Michal Klocek <michal.klocek@qt.io> | 2022-05-05 10:03:34 +0200 |
commit | 06fc47309609b9be735817da4f3bdf2e30e0b99c (patch) | |
tree | c5b798ff3bc07a3c631b7aa66bea9d088cb73c5b /mkspecs | |
parent | 8a52dee5ab480eef88b95361cf4db2ce36374c69 (diff) |
Add support for universal builds for qtwebengine and qtpdf
As 5.15 is in maintenance mode add basic support for
universal build without doing major refactors.
The popper implementation should unify build layout instead
of adding "isUniversal()" hacks.
Add intermediate build files per architecture for Chromium build part
and lipo them before final module linking.
Task-number: QTBUG-85279
Change-Id: Iebfd7a277b23c1b10c8719041c5959fd9d5e2f06
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/features/functions.prf | 5 | ||||
-rw-r--r-- | mkspecs/features/gn_generator.prf | 9 |
2 files changed, 10 insertions, 4 deletions
diff --git a/mkspecs/features/functions.prf b/mkspecs/features/functions.prf index 2750d7071..7f630588a 100644 --- a/mkspecs/features/functions.prf +++ b/mkspecs/features/functions.prf @@ -5,6 +5,11 @@ defineReplace(getConfigDir) { return("debug") } +defineTest(isUniversal) { + macos:count(QT_ARCHS, 1, >):return(true) + return(false) +} + 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) diff --git a/mkspecs/features/gn_generator.prf b/mkspecs/features/gn_generator.prf index a83b59847..306e58db1 100644 --- a/mkspecs/features/gn_generator.prf +++ b/mkspecs/features/gn_generator.prf @@ -27,7 +27,7 @@ defineReplace(filter_flag_values) { return($$value_to_check) } -isEmpty(GN_FILE): GN_FILE = $$system_path($$_PRO_FILE_PWD_/BUILD.gn) +isEmpty(GN_FILES): GN_FILES = $$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" @@ -260,12 +260,13 @@ GN_CONTENTS += "}" for (inc, GN_INCLUDES): GN_CONTENTS += $$cat($$inc,lines) } -build_pass|!debug_and_release: write_file($$GN_FILE, GN_CONTENTS) - +build_pass|!debug_and_release { + for(gnFile, GN_FILES): write_file($$gnFile, 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 +QMAKE_DISTCLEAN += $$GN_FILES |