summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2022-04-26 21:18:44 +0200
committerMichal Klocek <michal.klocek@qt.io>2022-05-05 10:03:34 +0200
commit06fc47309609b9be735817da4f3bdf2e30e0b99c (patch)
treec5b798ff3bc07a3c631b7aa66bea9d088cb73c5b /mkspecs
parent8a52dee5ab480eef88b95361cf4db2ce36374c69 (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.prf5
-rw-r--r--mkspecs/features/gn_generator.prf9
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