summaryrefslogtreecommitdiffstats
path: root/recipes-qt/qt5/qtwebengine
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@qt.io>2019-06-04 10:34:12 +0300
committerSamuli Piippo <samuli.piippo@qt.io>2019-06-05 07:05:50 +0000
commit3afea0f29ece40966b431786c2100a62819e22f6 (patch)
treee6746ecbdc4026abd2ea07a16fe90fbabd92dc0c /recipes-qt/qt5/qtwebengine
parent0106f58f31df6b426dca2bb810fed5009d4cb28f (diff)
downloadmeta-qt5-3afea0f29ece40966b431786c2100a62819e22f6.tar.gz
qt5: update submodules
Latest revisions from dev branch. Patches needed from 5.13.0 branches that are not yet merged in dev. Change-Id: Ia9a215b2136f8c491af971b32d8464fe3e92def0 Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
Diffstat (limited to 'recipes-qt/qt5/qtwebengine')
-rw-r--r--recipes-qt/qt5/qtwebengine/0004-Fix-linker-too-long-argument-list.patch46
-rw-r--r--recipes-qt/qt5/qtwebengine/0005-Make-linker-call-look-great-again.patch115
2 files changed, 161 insertions, 0 deletions
diff --git a/recipes-qt/qt5/qtwebengine/0004-Fix-linker-too-long-argument-list.patch b/recipes-qt/qt5/qtwebengine/0004-Fix-linker-too-long-argument-list.patch
new file mode 100644
index 00000000..f42a1d19
--- /dev/null
+++ b/recipes-qt/qt5/qtwebengine/0004-Fix-linker-too-long-argument-list.patch
@@ -0,0 +1,46 @@
1From deb9d4818d5206314f290f22330ed3b7fc33d338 Mon Sep 17 00:00:00 2001
2From: Michal Klocek <michal.klocek@qt.io>
3Date: Thu, 16 May 2019 21:58:06 +0200
4Subject: [PATCH] Fix linker too long argument list
5
6For yocto builds linker can get quite long path
7since all archives are listed as absolute paths.
8This can end up as "execvp: /bin/sh: Argument list too long"
9
10Use rsp files also for archives.
11
12Change-Id: I096e2f35ed72b68261bf465e84baddd1f78cd917
13Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
14---
15 src/core/core_module.pro | 17 ++++++++++-------
16 1 file changed, 10 insertions(+), 7 deletions(-)
17
18diff --git a/src/core/core_module.pro b/src/core/core_module.pro
19index e2fa3494..10169a49 100644
20--- a/src/core/core_module.pro
21+++ b/src/core/core_module.pro
22@@ -25,14 +25,17 @@ isEmpty(NINJA_LIBS): error("Missing library files from QtWebEngineCore linking p
23 NINJA_OBJECTS = $$eval($$list($$NINJA_OBJECTS))
24 # Do manual response file linking for macOS and Linux
25
26-RSP_FILE = $$OUT_PWD/$$getConfigDir()/$${TARGET}.rsp
27-for(object, NINJA_OBJECTS): RSP_CONTENT += $$object
28-write_file($$RSP_FILE, RSP_CONTENT)
29-macos:LIBS_PRIVATE += -Wl,-filelist,$$shell_quote($$RSP_FILE)
30-linux:LIBS_PRIVATE += @$$RSP_FILE
31+RSP_OBJECT_FILE = $$OUT_PWD/$$getConfigDir()/$${TARGET}_o.rsp
32+for(object, NINJA_OBJECTS): RSP_O_CONTENT += $$object
33+write_file($$RSP_OBJECT_FILE, RSP_O_CONTENT)
34+RSP_ARCHIVE_FILE = $$OUT_PWD/$$getConfigDir()/$${TARGET}_a.rsp
35+for(archive, NINJA_ARCHIVES): RSP_A_CONTENT += $$archive
36+write_file($$RSP_ARCHIVE_FILE, RSP_A_CONTENT)
37+macos:LIBS_PRIVATE += -Wl,-filelist,$$shell_quote($$RSP_OBJECT_FILE)
38+linux:LIBS_PRIVATE += @$${RSP_OBJECT_FILE}
39 # QTBUG-58710 add main rsp file on windows
40-win32:QMAKE_LFLAGS += @$$RSP_FILE
41-linux: LIBS_PRIVATE += -Wl,--start-group $$NINJA_ARCHIVES -Wl,--end-group
42+win32:QMAKE_LFLAGS += @$${RSP_OBJECT_FILE}
43+linux: LIBS_PRIVATE += -Wl,--start-group @$${RSP_ARCHIVE_FILE} -Wl,--end-group
44 else: LIBS_PRIVATE += $$NINJA_ARCHIVES
45 LIBS_PRIVATE += $$NINJA_LIB_DIRS $$NINJA_LIBS
46 # GN's LFLAGS doesn't always work across all the Linux configurations we support.
diff --git a/recipes-qt/qt5/qtwebengine/0005-Make-linker-call-look-great-again.patch b/recipes-qt/qt5/qtwebengine/0005-Make-linker-call-look-great-again.patch
new file mode 100644
index 00000000..74afaac1
--- /dev/null
+++ b/recipes-qt/qt5/qtwebengine/0005-Make-linker-call-look-great-again.patch
@@ -0,0 +1,115 @@
1From 9ef91351545ef5543b469ef24282334b3d068a2b Mon Sep 17 00:00:00 2001
2From: Michal Klocek <michal.klocek@qt.io>
3Date: Fri, 17 May 2019 15:49:23 +0200
4Subject: [PATCH] Make linker call look great again
5
6Fix issues with messed up linker path:
7
8 * do not use LIBS_PRIVATE on linux at least for passing object
9 and archive responses files.
10 * do not use QT and QT_PRIVATE with same libs, it simply
11 includes libs in LIB and LIB_PRIVATE so doubles linker libs.
12 * remove bogus dependency for gui and core for webengineheaders pseudo module.
13 * remove unused egl config flag
14
15Fixes: QTBUG-75832
16Task-number: QTBUG-75357
17Change-Id: I1720394e636e3f89d546f372b10932dd4ad395fe
18Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
19---
20 src/core/core_chromium.pri | 2 --
21 src/core/core_common.pri | 4 ++--
22 src/core/core_headers.pro | 1 +
23 src/core/core_module.pro | 13 ++++++-------
24 4 files changed, 9 insertions(+), 11 deletions(-)
25
26diff --git a/src/core/core_chromium.pri b/src/core/core_chromium.pri
27index 4d8db0d1..d8ef25d8 100644
28--- a/src/core/core_chromium.pri
29+++ b/src/core/core_chromium.pri
30@@ -33,8 +33,6 @@ RCC_DIR = $$OUT_PWD/$$getConfigDir()/.rcc
31 # whenever we are cross compiling.
32 qtConfig(webengine-embedded-build): DEFINES += QTWEBENGINE_EMBEDDED_SWITCHES
33
34-qtConfig(egl): CONFIG += egl
35-
36 INCLUDEPATH += $$PWD $$PWD/api
37
38 clang_cl {
39diff --git a/src/core/core_common.pri b/src/core/core_common.pri
40index 8375d89e..51f5e21b 100644
41--- a/src/core/core_common.pri
42+++ b/src/core/core_common.pri
43@@ -2,8 +2,8 @@
44 # gyp/ninja will take care of the compilation, qmake/make will finish with linking and install.
45
46 TARGET = QtWebEngineCore
47-QT += qml quick
48-QT_PRIVATE += quick-private gui-private core-private webenginecoreheaders-private
49+QT += qml-private quick-private gui-private core-private
50+QT_PRIVATE += webenginecoreheaders-private
51
52 qtConfig(webengine-geolocation): QT += positioning
53 qtConfig(webengine-webchannel): QT += webchannel
54diff --git a/src/core/core_headers.pro b/src/core/core_headers.pro
55index 21b5d58c..cd5352eb 100644
56--- a/src/core/core_headers.pro
57+++ b/src/core/core_headers.pro
58@@ -1,5 +1,6 @@
59 TARGET = QtWebEngineCore
60 CONFIG += no_private_module header_module internal_module no_plist
61+QT -= core gui
62 MODULE = webenginecoreheaders
63 MODULE_CFG_FILE = qtwebenginecore-config
64 load(qt_module)
65diff --git a/src/core/core_module.pro b/src/core/core_module.pro
66index 10169a49..2bfbc65b 100644
67--- a/src/core/core_module.pro
68+++ b/src/core/core_module.pro
69@@ -10,8 +10,6 @@ linking_pri = $$OUT_PWD/$$getConfigDir()/$${TARGET}.pri
70 error("Could not find the linking information that gn should have generated.")
71 }
72
73-load(qt_module)
74-
75 api_library_name = qtwebenginecoreapi$$qtPlatformTargetSuffix()
76 api_library_path = $$OUT_PWD/api/$$getConfigDir()
77
78@@ -32,10 +30,10 @@ RSP_ARCHIVE_FILE = $$OUT_PWD/$$getConfigDir()/$${TARGET}_a.rsp
79 for(archive, NINJA_ARCHIVES): RSP_A_CONTENT += $$archive
80 write_file($$RSP_ARCHIVE_FILE, RSP_A_CONTENT)
81 macos:LIBS_PRIVATE += -Wl,-filelist,$$shell_quote($$RSP_OBJECT_FILE)
82-linux:LIBS_PRIVATE += @$${RSP_OBJECT_FILE}
83+linux:QMAKE_LFLAGS += @$${RSP_OBJECT_FILE}
84 # QTBUG-58710 add main rsp file on windows
85 win32:QMAKE_LFLAGS += @$${RSP_OBJECT_FILE}
86-linux: LIBS_PRIVATE += -Wl,--start-group @$${RSP_ARCHIVE_FILE} -Wl,--end-group
87+linux:QMAKE_LFLAGS += -Wl,--start-group @$${RSP_ARCHIVE_FILE} -Wl,--end-group
88 else: LIBS_PRIVATE += $$NINJA_ARCHIVES
89 LIBS_PRIVATE += $$NINJA_LIB_DIRS $$NINJA_LIBS
90 # GN's LFLAGS doesn't always work across all the Linux configurations we support.
91@@ -74,7 +72,7 @@ osx {
92 # API library as response file to the linker.
93 QMAKE_LFLAGS += @$${api_library_path}$${QMAKE_DIR_SEP}$${api_library_name}.lib.objects
94 } else {
95- LIBS_PRIVATE += -Wl,-whole-archive -l$$api_library_name -Wl,-no-whole-archive
96+ QMAKE_LFLAGS += -Wl,-whole-archive -l$$api_library_name -Wl,-no-whole-archive
97 }
98
99 win32 {
100@@ -87,8 +85,6 @@ win32 {
101 # and doesn't let Chromium get access to libc symbols through dlsym.
102 CONFIG -= bsymbolic_functions
103
104-qtConfig(egl): CONFIG += egl
105-
106 linux:qtConfig(separate_debug_info): QMAKE_POST_LINK="cd $(DESTDIR) && $(STRIP) --strip-unneeded $(TARGET)"
107
108 REPACK_DIR = $$OUT_PWD/$$getConfigDir()
109@@ -157,3 +153,6 @@ OTHER_FILES = \
110 $$files(../3rdparty/chromium/*.gypi, true) \
111 $$files(../3rdparty/chromium/*.gn, true) \
112 $$files(../3rdparty/chromium/*.gni, true)
113+
114+load(qt_module)
115+