Mercurial > mxe-octave
comparison src/qtbase-1-fixes.patch @ 4735:4cea16af20b4
qt5: update to v5.11.0, add support pcre2
* src/qtbase.mk: update version, checksum
* src/qtimageformats.mk: update checksum
* src/qtisvg.mk: update checksum
* src/qttools.mk: update checksum
* src/qtbase-1-fixes.patch, src/qttools-1.patch: update patch from mxe.cc
* src/pcre2.mk: new file
* index.html: add pcre2
* src/sqlite.mk: enable column metadata
author | John Donoghue |
---|---|
date | Fri, 22 Jun 2018 08:28:05 -0400 |
parents | 2c34ec679fb3 |
children | 206f76f1b59c |
comparison
equal
deleted
inserted
replaced
4732:a492f79fd69a | 4735:4cea16af20b4 |
---|---|
1 This file is part of MXE. See LICENSE.md for licensing information. | 1 This file is part of MXE. See LICENSE.md for licensing information. |
2 | 2 |
3 From 62efa18a61560a7757acffbd4ac6ca7b153155cc Mon Sep 17 00:00:00 2001 | 3 Contains ad hoc patches for cross building. |
4 From: Mark Brand <mabrand@mabrand.nl> | 4 |
5 Date: Thu, 6 Aug 2015 23:35:08 +0200 | 5 From ec06a0993dd7ceae8002852646dc1826111a1882 Mon Sep 17 00:00:00 2001 |
6 Subject: [PATCH 1/8] fix qwindows plugin linking with system-freetype (MXE | |
7 specific) | |
8 | |
9 Change-Id: I8783e3ab2d19011b083dd3c471107298a17293c4 | |
10 | |
11 diff --git a/src/3rdparty/freetype_dependency.pri b/src/3rdparty/freetype_dependency.pri | |
12 index 39280de..e152b0d 100644 | |
13 --- a/src/3rdparty/freetype_dependency.pri | |
14 +++ b/src/3rdparty/freetype_dependency.pri | |
15 @@ -4,4 +4,5 @@ contains(QT_CONFIG, freetype) { | |
16 } else:contains(QT_CONFIG, system-freetype) { | |
17 # pull in the proper freetype2 include directory | |
18 include($$QT_SOURCE_TREE/config.tests/unix/freetype/freetype.pri) | |
19 + win32:shared:LIBS_PRIVATE += -lfreetype | |
20 } | |
21 -- | |
22 2.9.3 | |
23 | |
24 | |
25 From 5a15e0374758b7786204d98b66f49b4fd3daea79 Mon Sep 17 00:00:00 2001 | |
26 From: Mark Brand <mabrand@mabrand.nl> | |
27 Date: Sat, 21 Jun 2014 13:12:49 +0200 | |
28 Subject: [PATCH 2/8] use pkg-config for harfbuzz (MXE specific) | |
29 | |
30 Change-Id: Id4e4c37d68b63c9f480d72a561d95d4d2a5ded50 | |
31 | |
32 diff --git a/config.tests/unix/harfbuzz/harfbuzz.pro b/config.tests/unix/harfbuzz/harfbuzz.pro | |
33 index 32edd6e..a7f2c28 100644 | |
34 --- a/config.tests/unix/harfbuzz/harfbuzz.pro | |
35 +++ b/config.tests/unix/harfbuzz/harfbuzz.pro | |
36 @@ -1,3 +1,4 @@ | |
37 SOURCES = harfbuzz.cpp | |
38 CONFIG -= qt dylib | |
39 -LIBS += -lharfbuzz | |
40 +CONFIG += link_pkgconfig | |
41 +PKGCONFIG += harfbuzz | |
42 diff --git a/src/3rdparty/harfbuzz_dependency.pri b/src/3rdparty/harfbuzz_dependency.pri | |
43 index 7443368..c24e684 100644 | |
44 --- a/src/3rdparty/harfbuzz_dependency.pri | |
45 +++ b/src/3rdparty/harfbuzz_dependency.pri | |
46 @@ -2,5 +2,6 @@ contains(QT_CONFIG, harfbuzz) { | |
47 INCLUDEPATH += $$PWD/harfbuzz-ng/include | |
48 LIBS_PRIVATE += -L$$QT_BUILD_TREE/lib -lqtharfbuzzng$$qtPlatformTargetSuffix() | |
49 } else:contains(QT_CONFIG, system-harfbuzz) { | |
50 - LIBS_PRIVATE += -lharfbuzz | |
51 + CONFIG += link_pkgconfig | |
52 + PKGCONFIG += harfbuzz | |
53 } | |
54 -- | |
55 2.9.3 | |
56 | |
57 | |
58 From bc002ee2a8418c7afcba362d155ba1a591bc3d1a Mon Sep 17 00:00:00 2001 | |
59 From: Mark Brand <mabrand@mabrand.nl> | |
60 Date: Mon, 8 Dec 2014 14:15:12 +0100 | |
61 Subject: [PATCH 3/8] fix oci config test on windows | |
62 | |
63 Change-Id: If1ce2241682259ca495b0ba68bf18410f8548922 | |
64 | |
65 diff --git a/config.tests/unix/oci/oci.pro b/config.tests/unix/oci/oci.pro | |
66 index 3ffda1d..39b6f3759 100644 | |
67 --- a/config.tests/unix/oci/oci.pro | |
68 +++ b/config.tests/unix/oci/oci.pro | |
69 @@ -1,3 +1,3 @@ | |
70 SOURCES = oci.cpp | |
71 CONFIG -= qt dylib | |
72 -LIBS += -lclntsh | |
73 +!win32:LIBS += -lclntsh | |
74 -- | |
75 2.9.3 | |
76 | |
77 | |
78 From 92d2ae7b6eb175b4f15e5f0f231a9c29824d6f57 Mon Sep 17 00:00:00 2001 | |
79 From: Mark Brand <mabrand@mabrand.nl> | |
80 Date: Thu, 6 Aug 2015 13:24:56 +0200 | |
81 Subject: [PATCH 4/8] configure: don't set QT_NO_SYSTEMSEMAPHORE for Windows | |
82 | |
83 Change-Id: I53c110ef40e3d14cc49fa23aa5d294611cac2ffa | |
84 | |
85 diff --git a/configure b/configure | |
86 index ba94d08..50e6dfb 100755 | |
87 --- a/configure | |
88 +++ b/configure | |
89 @@ -4677,7 +4677,7 @@ fi | |
90 [ "$XPLATFORM_ANDROID" != "no" ] && QMakeVar add styles "android" | |
91 | |
92 # check IPC support | |
93 -if ! compileTest unix/ipc_sysv "ipc_sysv" ; then | |
94 +if [ "$XPLATFORM_MINGW" = "no" ] && ! compileTest unix/ipc_sysv "ipc_sysv" ; then | |
95 # SYSV IPC is not supported - check POSIX IPC | |
96 if compileTest unix/ipc_posix "ipc_posix" ; then | |
97 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_POSIX_IPC" | |
98 -- | |
99 2.9.3 | |
100 | |
101 | |
102 From f0054e940467a64dffc0c3cc070233fdf2848d43 Mon Sep 17 00:00:00 2001 | |
103 From: Mark Brand <mabrand@mabrand.nl> | |
104 Date: Tue, 6 Oct 2015 09:53:20 +0200 | |
105 Subject: [PATCH 5/8] fix building mysql driver under mingw | |
106 | |
107 Change-Id: I9c4e821d5b3a6919566c6b684cb4916827feb6a9 | |
108 | |
109 diff --git a/src/sql/drivers/mysql/qsql_mysql.pri b/src/sql/drivers/mysql/qsql_mysql.pri | |
110 index 3cfb614..8b7063f 100644 | |
111 --- a/src/sql/drivers/mysql/qsql_mysql.pri | |
112 +++ b/src/sql/drivers/mysql/qsql_mysql.pri | |
113 @@ -4,7 +4,7 @@ SOURCES += $$PWD/qsql_mysql.cpp | |
114 QMAKE_CXXFLAGS *= $$QT_CFLAGS_MYSQL | |
115 LIBS += $$QT_LFLAGS_MYSQL | |
116 | |
117 -unix { | |
118 +if (unix|mingw) { | |
119 isEmpty(QT_LFLAGS_MYSQL) { | |
120 !contains(LIBS, .*mysqlclient.*):!contains(LIBS, .*mysqld.*) { | |
121 use_libmysqlclient_r:LIBS += -lmysqlclient_r | |
122 -- | |
123 2.9.3 | |
124 | |
125 | |
126 From 26229596fbb711bc222c831eca3a9e5b62c7acc6 Mon Sep 17 00:00:00 2001 | |
127 From: Ray Donnelly <mingw.android@gmail.com> | 6 From: Ray Donnelly <mingw.android@gmail.com> |
128 Date: Wed, 26 Aug 2015 12:45:43 +0100 | 7 Date: Wed, 26 Aug 2015 12:45:43 +0100 |
129 Subject: [PATCH 6/8] cmake: Rearrange STATIC vs INTERFACE targets | 8 Subject: [PATCH 1/8] cmake: Rearrange STATIC vs INTERFACE targets |
130 | 9 |
131 Otherwise we attempt to add_library(Qt5::UiPlugin STATIC IMPORTED) | 10 Otherwise we attempt to add_library(Qt5::UiPlugin STATIC IMPORTED) |
132 for header-only modules when building Qt5 statically. | 11 for header-only modules when building Qt5 statically. |
133 | 12 |
134 Source: https://git.io/vzWJz | 13 Source: https://git.io/vzWJz |
135 See also: https://github.com/mxe/mxe/issues/1185 | 14 See also: https://github.com/mxe/mxe/issues/1185 |
136 | 15 |
137 diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 16 diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in |
138 index d2358ca..6b1dc95 100644 | 17 index 27f4c277d6..84ff9ae0ef 100644 |
139 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 18 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in |
140 +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 19 +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in |
141 @@ -222,13 +222,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) | 20 @@ -214,12 +214,12 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) |
142 endif() | 21 list(APPEND _Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES \"$${CMAKE_INTERFACE_QT5_MODULE_DEPS}\") |
143 !!ENDIF | 22 !!ENDIF |
144 | 23 |
145 +!!IF equals(TEMPLATE, aux) | 24 +!!IF equals(TEMPLATE, aux) |
146 + add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) | 25 + add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) |
147 +!!ELSE | 26 +!!ELSE |
148 !!IF !isEmpty(CMAKE_STATIC_TYPE) | 27 !!IF !isEmpty(CMAKE_STATIC_TYPE) |
149 add_library(Qt5::$${CMAKE_MODULE_NAME} STATIC IMPORTED) | 28 add_library(Qt5::$${CMAKE_MODULE_NAME} STATIC IMPORTED) |
150 set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CXX") | 29 set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CXX") |
151 !!ELSE | 30 -!!ELSE |
152 -!!IF equals(TEMPLATE, aux) | 31 -!!IF equals(TEMPLATE, aux) |
153 - add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) | 32 - add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) |
154 -!!ELSE | 33 !!ELSE |
155 add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) | 34 add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) |
156 !!ENDIF | 35 !!ENDIF |
157 !!ENDIF | 36 -- |
158 -- | 37 2.17.0 |
159 2.9.3 | 38 |
160 | 39 |
161 | 40 From dad81660aaf6e7bd011b3541e9ab9a0a27120973 Mon Sep 17 00:00:00 2001 |
162 From 59fd7fdff5bf0cda3c7a11982ee96f50d8eddec1 Mon Sep 17 00:00:00 2001 | |
163 From: Tony Theodore <tonyt@logyst.com> | 41 From: Tony Theodore <tonyt@logyst.com> |
164 Date: Sat, 16 Jul 2016 20:31:07 +1000 | 42 Date: Sat, 16 Jul 2016 20:31:07 +1000 |
165 Subject: [PATCH 7/8] Fix pkgconfig file and library naming | 43 Subject: [PATCH 2/8] Fix pkgconfig file and library naming |
166 | 44 |
167 See: https://codereview.qt-project.org/#/c/165394/ | 45 See: https://codereview.qt-project.org/#/c/165394/ |
168 https://bugreports.qt.io/browse/QTBUG-30898 | 46 https://bugreports.qt.io/browse/QTBUG-30898 |
169 | 47 |
170 Currently, *.pc files are generated with debug suffix `d` in `-release` | 48 Currently, *.pc files are generated with debug suffix `d` in `-release` |
185 | 63 |
186 Task-number: 30898 | 64 Task-number: 30898 |
187 Change-Id: If75336ec7d21a7ec0cb6d245fe87c64afcb5a644 | 65 Change-Id: If75336ec7d21a7ec0cb6d245fe87c64afcb5a644 |
188 | 66 |
189 diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf | 67 diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf |
190 index d9011f5..1993a7f 100644 | 68 index f8729de947..e7f6e3651d 100644 |
191 --- a/mkspecs/features/qt_module.prf | 69 --- a/mkspecs/features/qt_module.prf |
192 +++ b/mkspecs/features/qt_module.prf | 70 +++ b/mkspecs/features/qt_module.prf |
193 @@ -244,6 +244,10 @@ load(qt_installs) | 71 @@ -264,6 +264,10 @@ load(qt_installs) |
194 | 72 |
195 load(qt_targets) | 73 load(qt_targets) |
196 | 74 |
197 +# Set TARGET towards the end but before pkgconfig setup to keep naming | 75 +# Set TARGET towards the end but before pkgconfig setup to keep naming |
198 +# conventions consistent with *prl files | 76 +# conventions consistent with *prl files |
199 +TARGET = $$qt5LibraryTarget($$TARGET$$QT_LIBINFIX) | 77 +TARGET = $$qt5LibraryTarget($$TARGET$$QT_LIBINFIX) |
200 + | 78 + |
201 # this builds on top of qt_common | 79 # this builds on top of qt_common |
202 !internal_module:!lib_bundle:if(unix|mingw) { | 80 !internal_module:!lib_bundle:if(unix|mingw) { |
203 CONFIG += create_pc | 81 CONFIG += create_pc |
204 @@ -254,12 +258,12 @@ load(qt_targets) | 82 @@ -274,12 +278,12 @@ load(qt_targets) |
205 QMAKE_PKGCONFIG_LIBDIR = $$[QT_INSTALL_LIBS/raw] | 83 QMAKE_PKGCONFIG_LIBDIR = $$[QT_INSTALL_LIBS/raw] |
206 QMAKE_PKGCONFIG_INCDIR = $$[QT_INSTALL_HEADERS/raw] | 84 QMAKE_PKGCONFIG_INCDIR = $$[QT_INSTALL_HEADERS/raw] |
207 QMAKE_PKGCONFIG_CFLAGS = -I${includedir}/$$MODULE_INCNAME | 85 QMAKE_PKGCONFIG_CFLAGS = -D$$MODULE_DEFINE -I${includedir}/$$MODULE_INCNAME |
208 - QMAKE_PKGCONFIG_NAME = $$replace(TARGET, ^Qt, "Qt$$QT_MAJOR_VERSION ") | 86 - QMAKE_PKGCONFIG_NAME = $$replace(TARGET, ^Qt, "Qt$$QT_MAJOR_VERSION ") |
209 - QMAKE_PKGCONFIG_FILE = $$replace(TARGET, ^Qt, Qt$$QT_MAJOR_VERSION) | 87 - QMAKE_PKGCONFIG_FILE = $$replace(TARGET, ^Qt, Qt$$QT_MAJOR_VERSION) |
210 + QMAKE_PKGCONFIG_NAME = $$replace(TARGET, ^Qt$$QT_MAJOR_VERSION, "Qt$$QT_MAJOR_VERSION ") | 88 + QMAKE_PKGCONFIG_NAME = $$replace(TARGET, ^Qt$$QT_MAJOR_VERSION, "Qt$$QT_MAJOR_VERSION ") |
211 + QMAKE_PKGCONFIG_FILE = $$TARGET | 89 + QMAKE_PKGCONFIG_FILE = $$TARGET |
212 for(i, MODULE_DEPENDS): \ | 90 for(i, MODULE_DEPENDS): \ |
213 - QMAKE_PKGCONFIG_REQUIRES += $$replace(QT.$${i}.name, ^Qt, Qt$$eval(QT.$${i}.MAJOR_VERSION)) | 91 - QMAKE_PKGCONFIG_REQUIRES += $$replace(QT.$${i}.name, ^Qt, Qt$$section(QT.$${i}.VERSION, ., 0, 0)) |
214 + QMAKE_PKGCONFIG_REQUIRES += $$replace(QT.$${i}.name, ^Qt, Qt$$eval(QT.$${i}.MAJOR_VERSION))$$qtPlatformTargetSuffix() | 92 + QMAKE_PKGCONFIG_REQUIRES += $$replace(QT.$${i}.name, ^Qt, Qt$$section(QT.$${i}.VERSION, ., 0, 0))$$qtPlatformTargetSuffix() |
215 isEmpty(QMAKE_PKGCONFIG_DESCRIPTION): \ | 93 isEmpty(QMAKE_PKGCONFIG_DESCRIPTION): \ |
216 - QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt, "Qt ") module | 94 - QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt, "Qt ") module |
217 + QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt$$QT_MAJOR_VERSION, "Qt ") module | 95 + QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt$$QT_MAJOR_VERSION, "Qt ") module |
218 pclib_replace.match = $$lib_replace.match | 96 pclib_replace.match = $$lib_replace.match |
219 !isEmpty(lib_replace.replace): \ | 97 !isEmpty(lib_replace.replace): \ |
220 pclib_replace.replace = $$QMAKE_PKGCONFIG_LIBDIR | 98 pclib_replace.replace = $$QMAKE_PKGCONFIG_LIBDIR |
221 @@ -293,5 +297,3 @@ win32 { | 99 @@ -313,5 +317,3 @@ win32 { |
222 # On other platforms, Qt's own compilation goes needs to compile the Qt 5.0 API | 100 # On other platforms, Qt's own compilation goes needs to compile the Qt 5.0 API |
223 DEFINES *= QT_DISABLE_DEPRECATED_BEFORE=0x050000 | 101 DEFINES *= QT_DISABLE_DEPRECATED_BEFORE=0x050000 |
224 } | 102 } |
225 - | 103 - |
226 -TARGET = $$qt5LibraryTarget($$TARGET$$QT_LIBINFIX) # Do this towards the end | 104 -TARGET = $$qt5LibraryTarget($$TARGET$$QT_LIBINFIX) # Do this towards the end |
227 -- | 105 -- |
228 2.9.3 | 106 2.17.0 |
229 | 107 |
230 | 108 |
231 From a2ed2c9fe74b549cb163f89a56df6eec3af553fa Mon Sep 17 00:00:00 2001 | 109 From 69740750f7905baa5c66e48bad22e39b5e07ca72 Mon Sep 17 00:00:00 2001 |
232 From: Mark Brand <mabrand@mabrand.nl> | 110 From: Mark Brand <mabrand@mabrand.nl> |
233 Date: Thu, 15 Dec 2016 17:20:56 +0100 | 111 Date: Sun, 29 Jan 2017 13:02:16 +0100 |
234 Subject: [PATCH 8/8] fix mysql config test | 112 Subject: [PATCH 3/8] reenable fontconfig for win32 (MXE-specific) |
235 | 113 |
236 The config test already gets link flags which should include | 114 Change-Id: I05b036366bd402e43309742412bcf8ca91fe125f |
237 the library. Blindly adding it to the end of the list can break | 115 |
238 static linking. | 116 diff --git a/src/gui/configure.json b/src/gui/configure.json |
239 | 117 index 219385a108..eee90b5b20 100644 |
240 Change-Id: Ief71c4ad64cbbb1b141b0ef5549f42a36bbd125b | 118 --- a/src/gui/configure.json |
241 | 119 +++ b/src/gui/configure.json |
242 diff --git a/config.tests/unix/mysql/mysql.pro b/config.tests/unix/mysql/mysql.pro | 120 @@ -973,7 +973,7 @@ |
243 index 06d1880..ca6d6aa 100644 | 121 "fontconfig": { |
244 --- a/config.tests/unix/mysql/mysql.pro | 122 "label": "Fontconfig", |
245 +++ b/config.tests/unix/mysql/mysql.pro | 123 "autoDetect": "!config.darwin", |
246 @@ -1,3 +1,3 @@ | 124 - "condition": "!config.win32 && features.system-freetype && libs.fontconfig", |
247 SOURCES = mysql.cpp | 125 + "condition": "features.system-freetype && libs.fontconfig", |
248 CONFIG -= qt dylib | 126 "output": [ "privateFeature", "feature" ] |
249 -LIBS += -lmysqlclient | 127 }, |
250 +LIBS *= -lmysqlclient | 128 "gbm": { |
251 -- | 129 diff --git a/src/plugins/platforms/minimal/qminimalintegration.cpp b/src/plugins/platforms/minimal/qminimalintegration.cpp |
252 2.9.3 | 130 index 0c04608fca..a26e02fbf3 100644 |
253 | 131 --- a/src/plugins/platforms/minimal/qminimalintegration.cpp |
132 +++ b/src/plugins/platforms/minimal/qminimalintegration.cpp | |
133 @@ -161,7 +161,11 @@ QPlatformFontDatabase *QMinimalIntegration::fontDatabase() const | |
134 | |
135 if (!m_fontDatabase) { | |
136 #if QT_CONFIG(fontconfig) | |
137 - m_fontDatabase = new QGenericUnixFontDatabase; | |
138 +#ifdef Q_OS_WIN | |
139 + m_fontDatabase = new QFreeTypeFontDatabase; | |
140 +#else | |
141 + m_fontDatabase = new QGenericUnixFontDatabase; | |
142 +#endif | |
143 #else | |
144 m_fontDatabase = QPlatformIntegration::fontDatabase(); | |
145 #endif | |
146 -- | |
147 2.17.0 | |
148 | |
149 | |
150 From e28fcb374385d6dfb29a6c99bea283a4fbc894a7 Mon Sep 17 00:00:00 2001 | |
151 From: Mark Brand <mabrand@mabrand.nl> | |
152 Date: Sun, 29 Jan 2017 16:22:03 +0100 | |
153 Subject: [PATCH 4/8] fix treatment of SYBASE_LIBS | |
154 | |
155 Change-Id: I4c9914cf7ef9d91feb0718a57f2551c1eeed47e0 | |
156 | |
157 diff --git a/src/plugins/sqldrivers/configure.pri b/src/plugins/sqldrivers/configure.pri | |
158 index b69b51b679..d37423adbd 100644 | |
159 --- a/src/plugins/sqldrivers/configure.pri | |
160 +++ b/src/plugins/sqldrivers/configure.pri | |
161 @@ -92,7 +92,7 @@ defineTest(qtConfLibrary_sybaseEnv) { | |
162 libs += "-L$${sybase}/lib" | |
163 libs += $$getenv(SYBASE_LIBS) | |
164 !isEmpty(libs) { | |
165 - $${1}.libs = "$$val_escape(libs)" | |
166 + $${1}.libs = $$libs | |
167 export($${1}.libs) | |
168 } | |
169 return(true) | |
170 -- | |
171 2.17.0 | |
172 | |
173 | |
174 From ef350f7199772d5846a1f6f9214e8d562183f393 Mon Sep 17 00:00:00 2001 | |
175 From: Mark Brand <mabrand@mabrand.nl> | |
176 Date: Sun, 11 Jun 2017 00:27:41 +0200 | |
177 Subject: [PATCH 5/8] use pkg-config for harfbuzz | |
178 | |
179 Change-Id: Ia65cbb90fd180f1bc10ce077a9a8323a48e51421 | |
180 | |
181 diff --git a/src/gui/configure.json b/src/gui/configure.json | |
182 index eee90b5b20..6c6745b1dd 100644 | |
183 --- a/src/gui/configure.json | |
184 +++ b/src/gui/configure.json | |
185 @@ -215,7 +215,8 @@ | |
186 ] | |
187 }, | |
188 "sources": [ | |
189 - "-lharfbuzz" | |
190 + { "type": "pkgConfig", "args": "harfbuzz" }, | |
191 + "-lharfbuzz" | |
192 ] | |
193 }, | |
194 "imf": { | |
195 -- | |
196 2.17.0 | |
197 | |
198 | |
199 From 65353949d9a7f6bbdcd5ddabf09ac3e5357eac1d Mon Sep 17 00:00:00 2001 | |
200 From: Mark Brand <mabrand@mabrand.nl> | |
201 Date: Thu, 23 Nov 2017 11:28:47 +0200 | |
202 Subject: [PATCH 6/8] disable qt_random_cpu for i686-w64-mingw32 | |
203 | |
204 Workaround for gcc internal error compiling for mingw32: | |
205 global/qrandom.cpp: In function 'qsizetype qt_random_cpu(void*, qsizetype)': | |
206 global/qrandom.cpp:123:1: internal compiler error: in | |
207 ix86_compute_frame_layout, at config/i386/i386.c:10145 | |
208 } | |
209 ^ | |
210 | |
211 global/qrandom.cpp:123:1: internal compiler error: Segmentation fault | |
212 i686-w64-mingw32.static-g++: internal compiler error: Segmentation fault | |
213 (program cc1plus) | |
214 | |
215 Based on https://codereview.qt-project.org/#/c/212360/ | |
216 | |
217 Change-Id: Ia1c902e7b147bdda2b8d7904b40a3b968b8d0369 | |
218 | |
219 diff --git a/src/corelib/global/qrandom.cpp b/src/corelib/global/qrandom.cpp | |
220 index ebf9864b15..9a31933975 100644 | |
221 --- a/src/corelib/global/qrandom.cpp | |
222 +++ b/src/corelib/global/qrandom.cpp | |
223 @@ -90,7 +90,7 @@ DECLSPEC_IMPORT BOOLEAN WINAPI SystemFunction036(PVOID RandomBuffer, ULONG Rando | |
224 | |
225 QT_BEGIN_NAMESPACE | |
226 | |
227 -#if defined(Q_PROCESSOR_X86) && QT_COMPILER_SUPPORTS_HERE(RDRND) | |
228 +#if defined(Q_PROCESSOR_X86) && !defined(Q_PROCESSOR_X86_32) && QT_COMPILER_SUPPORTS_HERE(RDRND) | |
229 static qsizetype qt_random_cpu(void *buffer, qsizetype count) Q_DECL_NOTHROW; | |
230 | |
231 # ifdef Q_PROCESSOR_X86_64 | |
232 -- | |
233 2.17.0 | |
234 | |
235 | |
236 From 84cf457b4bc814fb82b08e0917b09397bbf9ec1a Mon Sep 17 00:00:00 2001 | |
237 From: Thiago Macieira <thiago.macieira@intel.com> | |
238 Date: Tue, 8 May 2018 21:57:07 -0700 | |
239 Subject: [PATCH 7/8] Fix build with GCC 8: memset/memcpy/memmove of | |
240 non-trivials | |
241 MIME-Version: 1.0 | |
242 Content-Type: text/plain; charset=UTF-8 | |
243 Content-Transfer-Encoding: 8bit | |
244 | |
245 qarraydataops.h:73:17: error: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type | |
246 ‘struct TCBPoint’; use assignment or value-initialization instead [-Werror=class-memaccess] | |
247 | |
248 Change-Id: I5d0ee9389a794d80983efffd152ce10eb557341f | |
249 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> | |
250 | |
251 diff --git a/src/corelib/tools/qarraydataops.h b/src/corelib/tools/qarraydataops.h | |
252 index d0f83d2b6a..7e1b43f9b1 100644 | |
253 --- a/src/corelib/tools/qarraydataops.h | |
254 +++ b/src/corelib/tools/qarraydataops.h | |
255 @@ -65,7 +65,7 @@ struct QPodArrayOps | |
256 Q_ASSERT(newSize > uint(this->size)); | |
257 Q_ASSERT(newSize <= this->alloc); | |
258 | |
259 - ::memset(this->end(), 0, (newSize - this->size) * sizeof(T)); | |
260 + ::memset(static_cast<void *>(this->end()), 0, (newSize - this->size) * sizeof(T)); | |
261 this->size = int(newSize); | |
262 } | |
263 | |
264 @@ -121,8 +121,9 @@ struct QPodArrayOps | |
265 Q_ASSERT(e <= where || b > this->end()); // No overlap | |
266 Q_ASSERT(size_t(e - b) <= this->alloc - uint(this->size)); | |
267 | |
268 - ::memmove(where + (e - b), where, (static_cast<const T*>(this->end()) - where) * sizeof(T)); | |
269 - ::memcpy(where, b, (e - b) * sizeof(T)); | |
270 + ::memmove(static_cast<void *>(where + (e - b)), static_cast<void *>(where), | |
271 + (static_cast<const T*>(this->end()) - where) * sizeof(T)); | |
272 + ::memcpy(static_cast<void *>(where), static_cast<const void *>(b), (e - b) * sizeof(T)); | |
273 this->size += (e - b); | |
274 } | |
275 | |
276 @@ -133,7 +134,8 @@ struct QPodArrayOps | |
277 Q_ASSERT(b >= this->begin() && b < this->end()); | |
278 Q_ASSERT(e > this->begin() && e < this->end()); | |
279 | |
280 - ::memmove(b, e, (static_cast<T *>(this->end()) - e) * sizeof(T)); | |
281 + ::memmove(static_cast<void *>(b), static_cast<void *>(e), | |
282 + (static_cast<T *>(this->end()) - e) * sizeof(T)); | |
283 this->size -= (e - b); | |
284 } | |
285 }; | |
286 -- | |
287 2.17.0 | |
288 | |
289 | |
290 From 77082d00f719fc72daa85ad2a59f3f395201ba6a Mon Sep 17 00:00:00 2001 | |
291 From: Oswald Buddenhagen <oswald.buddenhagen@qt.io> | |
292 Date: Mon, 9 Apr 2018 18:34:18 +0200 | |
293 Subject: [PATCH 8/8] qmake: fix look-up of relative files from .depend_command | |
294 in shadow builds | |
295 | |
296 the dependency paths are fixified against the output directory, so we | |
297 must resolve them accordingly. | |
298 | |
299 Change-Id: Id92750aad358153bd2db5daca3194c54eda58dbb | |
300 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> | |
301 (cherry picked from commit 75587c8030ff8057b90200cb20cff1e4549c00b5) | |
302 | |
303 diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp | |
304 index 82573347b6..99aecdd8ce 100644 | |
305 --- a/qmake/generators/makefile.cpp | |
306 +++ b/qmake/generators/makefile.cpp | |
307 @@ -1953,11 +1953,12 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) | |
308 } | |
309 QT_PCLOSE(proc); | |
310 if(!indeps.isEmpty()) { | |
311 + QDir outDir(Option::output_dir); | |
312 // ### This is basically fubar. Add 'lines' flag to CONFIG? | |
313 QStringList dep_cmd_deps = indeps.replace('\n', ' ').simplified().split(' '); | |
314 for(int i = 0; i < dep_cmd_deps.count(); ++i) { | |
315 QString &file = dep_cmd_deps[i]; | |
316 - QString absFile = QDir(Option::output_dir).absoluteFilePath(file); | |
317 + QString absFile = outDir.absoluteFilePath(file); | |
318 if (exists(absFile)) { | |
319 file = absFile; | |
320 } else { | |
321 @@ -1965,8 +1966,9 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) | |
322 QList<QMakeLocalFileName> depdirs = QMakeSourceFileInfo::dependencyPaths(); | |
323 for (QList<QMakeLocalFileName>::Iterator dit = depdirs.begin(); | |
324 dit != depdirs.end(); ++dit) { | |
325 - if (exists((*dit).local() + '/' + file)) { | |
326 - localFile = (*dit).local() + '/' + file; | |
327 + QString lf = outDir.absoluteFilePath((*dit).local() + '/' + file); | |
328 + if (exists(lf)) { | |
329 + localFile = lf; | |
330 break; | |
331 } | |
332 } | |
333 @@ -2045,11 +2047,12 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) | |
334 } | |
335 QT_PCLOSE(proc); | |
336 if(!indeps.isEmpty()) { | |
337 + QDir outDir(Option::output_dir); | |
338 // ### This is basically fubar. Add 'lines' flag to CONFIG? | |
339 QStringList dep_cmd_deps = indeps.replace('\n', ' ').simplified().split(' '); | |
340 for(int i = 0; i < dep_cmd_deps.count(); ++i) { | |
341 QString &file = dep_cmd_deps[i]; | |
342 - QString absFile = QDir(Option::output_dir).absoluteFilePath(file); | |
343 + QString absFile = outDir.absoluteFilePath(file); | |
344 if (exists(absFile)) { | |
345 file = absFile; | |
346 } else { | |
347 @@ -2057,8 +2060,9 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) | |
348 QList<QMakeLocalFileName> depdirs = QMakeSourceFileInfo::dependencyPaths(); | |
349 for (QList<QMakeLocalFileName>::Iterator dit = depdirs.begin(); | |
350 dit != depdirs.end(); ++dit) { | |
351 - if (exists((*dit).local() + '/' + file)) { | |
352 - localFile = (*dit).local() + '/' + file; | |
353 + QString lf = outDir.absoluteFilePath((*dit).local() + '/' + file); | |
354 + if (exists(lf)) { | |
355 + localFile = lf; | |
356 break; | |
357 } | |
358 } | |
359 -- | |
360 2.17.0 | |
361 | |
362 diff -ur qtbase-everywhere-src-5.11.0.orig/mkspecs/common/gcc-base.conf qtbase-everywhere-src-5.11.0/mkspecs/common/gcc-base.conf | |
363 --- qtbase-everywhere-src-5.11.0.orig/mkspecs/common/gcc-base.conf 2018-06-12 07:47:54.488874295 -0400 | |
364 +++ qtbase-everywhere-src-5.11.0/mkspecs/common/gcc-base.conf 2018-06-12 07:48:46.550096817 -0400 | |
365 @@ -46,7 +46,7 @@ | |
366 QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC | |
367 QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC | |
368 QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC | |
369 -QMAKE_CFLAGS_ISYSTEM = -isystem | |
370 +QMAKE_CFLAGS_ISYSTEM = -I | |
371 QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses | |
372 QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden | |
373 QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions |