Rebase patches against latest KDE commit and adapt them to glib2 now using pcre2.
179 lines
8.4 KiB
Diff
179 lines
8.4 KiB
Diff
From a391524fc205594e890bced50a9ce1c6af01dc0e Mon Sep 17 00:00:00 2001
|
|
From: Martchus <martchus@gmx.net>
|
|
Date: Wed, 25 Jan 2017 23:42:30 +0100
|
|
Subject: [PATCH 29/32] Hardcode linker flags for platform plugins
|
|
|
|
Otherwise incorrect order of libs leads to errors
|
|
when building libqminimal.dll, libqoffscreen.dll,
|
|
libqwindows.dll and libqdirect2d.dll. Unfortunately
|
|
this workaround leads to hardcoding include flags
|
|
as well.
|
|
|
|
Change-Id: I1863d184cff744d2c02e15875e1d108d32ea7861
|
|
---
|
|
src/plugins/platforms/direct2d/direct2d.pro | 39 +++++++++++++++---
|
|
src/plugins/platforms/minimal/minimal.pro | 17 +++++++-
|
|
src/plugins/platforms/offscreen/offscreen.pro | 16 +++++++-
|
|
src/plugins/platforms/windows/windows.pro | 40 ++++++++++++++-----
|
|
4 files changed, 93 insertions(+), 19 deletions(-)
|
|
|
|
diff --git a/src/plugins/platforms/direct2d/direct2d.pro b/src/plugins/platforms/direct2d/direct2d.pro
|
|
index 6e73bd14f9..8046e73d61 100644
|
|
--- a/src/plugins/platforms/direct2d/direct2d.pro
|
|
+++ b/src/plugins/platforms/direct2d/direct2d.pro
|
|
@@ -1,12 +1,41 @@
|
|
TARGET = qdirect2d
|
|
|
|
QT += \
|
|
- core-private gui-private \
|
|
- eventdispatcher_support-private \
|
|
- fontdatabase_support-private theme_support-private
|
|
+ core-private gui-private
|
|
|
|
-qtConfig(accessibility): QT += accessibility_support-private
|
|
-qtConfig(vulkan): QT += vulkan_support-private
|
|
+# Fix linker error when building libqdirect2d.dll by specifying linker flags for
|
|
+# required modules manually (otherwise order is messed)
|
|
+LIBS += \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5EventDispatcherSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5FontDatabaseSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5ThemeSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ -lfreetype -lole32 -lgdi32 -luuid
|
|
+# However, this workaround leads to the necessity of specifying include dirs manually
|
|
+INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION}/QtEventDispatcherSupport \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION} \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION}/QtFontDatabaseSupport \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION} \
|
|
+ $$QT_BUILD_TREE/include/QtThemeSupport/$${QT_VERSION}/QtThemeSupport \
|
|
+ $$QT_BUILD_TREE/include/QtThemeSupport/$${QT_VERSION}
|
|
+# Same for private support libs for accessibility and vulkan, if those are enabled
|
|
+qtConfig(accessibility) {
|
|
+ LIBS += $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5AccessibilitySupport.$${QMAKE_EXTENSION_STATICLIB}
|
|
+ INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtAccessibilitySupport/$${QT_VERSION}/Qt5AccessibilitySupport \
|
|
+ $$QT_BUILD_TREE/include/QtAccessibilitySupport/$${QT_VERSION}
|
|
+}
|
|
+qtConfig(vulkan) {
|
|
+ LIBS += $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5VulkanSupport.$${QMAKE_EXTENSION_STATICLIB}
|
|
+ INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtVulkanSupport/$${QT_VERSION}/Qt5VulkanSupport \
|
|
+ $$QT_BUILD_TREE/include/QtVulkanSupport/$${QT_VERSION}
|
|
+}
|
|
+# Also add Qt5WindowsUIAutomationSupport - it seems to link against it
|
|
+LIBS += $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5WindowsUIAutomationSupport.$${QMAKE_EXTENSION_STATICLIB}
|
|
+INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/Qt5WindowsUIAutomationSupport/$${QT_VERSION}/Qt5WindowsUIAutomationSupport \
|
|
+ $$QT_BUILD_TREE/include/Qt5WindowsUIAutomationSupport/$${QT_VERSION}
|
|
|
|
LIBS += -ldwmapi -lversion
|
|
QMAKE_USE_PRIVATE += gdi32 dwrite_1 d2d1_1 d3d11_1 dxgi1_2
|
|
diff --git a/src/plugins/platforms/minimal/minimal.pro b/src/plugins/platforms/minimal/minimal.pro
|
|
index a1a2da547b..9fd5c4fca2 100644
|
|
--- a/src/plugins/platforms/minimal/minimal.pro
|
|
+++ b/src/plugins/platforms/minimal/minimal.pro
|
|
@@ -1,8 +1,21 @@
|
|
TARGET = qminimal
|
|
|
|
QT += \
|
|
- core-private gui-private \
|
|
- eventdispatcher_support-private fontdatabase_support-private
|
|
+ core-private gui-private
|
|
+
|
|
+# Fix linker error when building libqminimal.dll by specifying linker flags for
|
|
+# required modules manually (otherwise order is messed)
|
|
+LIBS += \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5EventDispatcherSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5FontDatabaseSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ -lfreetype -lole32 -lgdi32 -luuid
|
|
+# However, this workaround leads to the necessity of specifying include dirs manually
|
|
+INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION}/QtEventDispatcherSupport \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION} \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION}/QtFontDatabaseSupport \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION}
|
|
+
|
|
|
|
DEFINES += QT_NO_FOREACH
|
|
|
|
diff --git a/src/plugins/platforms/offscreen/offscreen.pro b/src/plugins/platforms/offscreen/offscreen.pro
|
|
index f226132592..592fa7406f 100644
|
|
--- a/src/plugins/platforms/offscreen/offscreen.pro
|
|
+++ b/src/plugins/platforms/offscreen/offscreen.pro
|
|
@@ -1,8 +1,20 @@
|
|
TARGET = qoffscreen
|
|
|
|
QT += \
|
|
- core-private gui-private \
|
|
- eventdispatcher_support-private fontdatabase_support-private
|
|
+ core-private gui-private
|
|
+
|
|
+# Fix linker error when building libqoffscreen.dll by specifying linker flags for
|
|
+# required modules manually (otherwise order is messed)
|
|
+LIBS += \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5EventDispatcherSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5FontDatabaseSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ -lfreetype -lole32 -lgdi32 -luuid
|
|
+# However, this workaround leads to the necessity of specifying include dirs manually
|
|
+INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION}/QtEventDispatcherSupport \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION} \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION}/QtFontDatabaseSupport \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION}
|
|
|
|
DEFINES += QT_NO_FOREACH
|
|
|
|
diff --git a/src/plugins/platforms/windows/windows.pro b/src/plugins/platforms/windows/windows.pro
|
|
index 50a3bb41a9..02f74650a9 100644
|
|
--- a/src/plugins/platforms/windows/windows.pro
|
|
+++ b/src/plugins/platforms/windows/windows.pro
|
|
@@ -1,15 +1,35 @@
|
|
TARGET = qwindows
|
|
|
|
-QT += \
|
|
- core-private gui-private \
|
|
- eventdispatcher_support-private \
|
|
- fontdatabase_support-private theme_support-private
|
|
-
|
|
-qtConfig(accessibility): QT += accessibility_support-private
|
|
-qtConfig(vulkan): QT += vulkan_support-private
|
|
-
|
|
-LIBS += -ldwmapi
|
|
-QMAKE_USE_PRIVATE += gdi32
|
|
+QT += core-private gui-private
|
|
+
|
|
+# Fix linker error when building libqwindows.dll by specifying linker flags for
|
|
+# required modules manually (otherwise order is messed)
|
|
+LIBS += \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5EventDispatcherSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5FontDatabaseSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5ThemeSupport.$${QMAKE_EXTENSION_STATICLIB} \
|
|
+ -lfreetype -lole32 -lgdi32 -ldwmapi
|
|
+# However, this workaround leads to the necessity of specifying include dirs manually
|
|
+INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION}/QtEventDispatcherSupport \
|
|
+ $$QT_BUILD_TREE/include/QtEventDispatcherSupport/$${QT_VERSION} \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION}/QtFontDatabaseSupport \
|
|
+ $$QT_BUILD_TREE/include/QtFontDatabaseSupport/$${QT_VERSION} \
|
|
+ $$QT_BUILD_TREE/include/QtThemeSupport/$${QT_VERSION}/QtThemeSupport \
|
|
+ $$QT_BUILD_TREE/include/QtThemeSupport/$${QT_VERSION}
|
|
+# Same for private support libs for accessibility and vulkan, if those are enabled
|
|
+qtConfig(accessibility) {
|
|
+ LIBS += $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5AccessibilitySupport.$${QMAKE_EXTENSION_STATICLIB}
|
|
+ INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtAccessibilitySupport/$${QT_VERSION}/Qt5AccessibilitySupport \
|
|
+ $$QT_BUILD_TREE/include/QtAccessibilitySupport/$${QT_VERSION}
|
|
+}
|
|
+qtConfig(vulkan) {
|
|
+ LIBS += $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5VulkanSupport.$${QMAKE_EXTENSION_STATICLIB}
|
|
+ INCLUDEPATH += \
|
|
+ $$QT_BUILD_TREE/include/QtVulkanSupport/$${QT_VERSION}/Qt5VulkanSupport \
|
|
+ $$QT_BUILD_TREE/include/QtVulkanSupport/$${QT_VERSION}
|
|
+}
|
|
|
|
include(windows.pri)
|
|
|
|
--
|
|
2.37.3
|
|
|