Skip to content

Commit f6850d5

Browse files
committed
Merge pull request #6471
060b3d3 fixup: qt 5.5 snuck in another module that needs path hand-holding (Cory Fields) ecd6a89 depends: make more qt flags explicit (Cory Fields) ab67dd7 depends: bump to qt 5.5 (Cory Fields) 5189fe3 depends: split qt config options to separate lines (Jacob Welsh) fe997df build: fix building against qt5.4/5.5 (Cory Fields)
2 parents bfd807f + 060b3d3 commit f6850d5

File tree

8 files changed

+203
-120
lines changed

8 files changed

+203
-120
lines changed

build-aux/m4/bitcoin_qt.m4

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,24 +106,40 @@ AC_DEFUN([BITCOIN_QT_CONFIGURE],[
106106
dnl results to QT_LIBS.
107107
BITCOIN_QT_CHECK([
108108
TEMP_CPPFLAGS=$CPPFLAGS
109-
CPPFLAGS=$QT_INCLUDES
109+
CPPFLAGS="$QT_INCLUDES $CPPFLAGS"
110110
if test x$bitcoin_qt_got_major_vers = x5; then
111111
_BITCOIN_QT_IS_STATIC
112112
if test x$bitcoin_cv_static_qt = xyes; then
113113
AC_DEFINE(QT_STATICPLUGIN, 1, [Define this symbol if qt plugins are static])
114114
if test x$qt_plugin_path != x; then
115-
QT_LIBS="$QT_LIBS -L$qt_plugin_path/accessible"
116115
QT_LIBS="$QT_LIBS -L$qt_plugin_path/platforms"
117116
fi
118117
if test x$use_pkgconfig = xyes; then
119118
PKG_CHECK_MODULES([QTPLATFORM], [Qt5PlatformSupport], [QT_LIBS="$QTPLATFORM_LIBS $QT_LIBS"])
120119
fi
121-
_BITCOIN_QT_CHECK_STATIC_PLUGINS([Q_IMPORT_PLUGIN(AccessibleFactory)], [-lqtaccessiblewidgets])
120+
AC_CACHE_CHECK(for Qt < 5.4, bitcoin_cv_need_acc_widget,[AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
121+
[[#include <QtCore>]],[[
122+
#if QT_VERSION >= 0x050400
123+
choke;
124+
#endif
125+
]])],
126+
[bitcoin_cv_need_acc_widget=yes],
127+
[bitcoin_cv_need_acc_widget=no])
128+
])
129+
if test "x$bitcoin_cv_need_acc_widget" = "xyes"; then
130+
if test x$qt_plugin_path != x; then
131+
QT_LIBS="$QT_LIBS -L$qt_plugin_path/accessible"
132+
fi
133+
_BITCOIN_QT_CHECK_STATIC_PLUGINS([Q_IMPORT_PLUGIN(AccessibleFactory)], [-lqtaccessiblewidgets])
134+
fi
122135
if test x$TARGET_OS = xwindows; then
123136
_BITCOIN_QT_CHECK_STATIC_PLUGINS([Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin)],[-lqwindows])
124137
AC_DEFINE(QT_QPA_PLATFORM_WINDOWS, 1, [Define this symbol if the qt platform is windows])
125138
elif test x$TARGET_OS = xlinux; then
126139
PKG_CHECK_MODULES([X11XCB], [x11-xcb], [QT_LIBS="$X11XCB_LIBS $QT_LIBS"])
140+
if ${PKG_CONFIG} --exists "Qt5Core >= 5.5" 2>/dev/null; then
141+
PKG_CHECK_MODULES([QTXCBQPA], [Qt5XcbQpa], [QT_LIBS="$QTXCBQPA_LIBS $QT_LIBS"])
142+
fi
127143
_BITCOIN_QT_CHECK_STATIC_PLUGINS([Q_IMPORT_PLUGIN(QXcbIntegrationPlugin)],[-lqxcb -lxcb-static])
128144
AC_DEFINE(QT_QPA_PLATFORM_XCB, 1, [Define this symbol if the qt platform is xcb])
129145
elif test x$TARGET_OS = xdarwin; then
@@ -382,7 +398,8 @@ AC_DEFUN([_BITCOIN_QT_FIND_LIBS_WITHOUT_PKGCONFIG],[
382398
BITCOIN_QT_CHECK(AC_CHECK_LIB([z] ,[main],,AC_MSG_WARN([zlib not found. Assuming qt has it built-in])))
383399
BITCOIN_QT_CHECK(AC_CHECK_LIB([png] ,[main],,AC_MSG_WARN([libpng not found. Assuming qt has it built-in])))
384400
BITCOIN_QT_CHECK(AC_CHECK_LIB([jpeg] ,[main],,AC_MSG_WARN([libjpeg not found. Assuming qt has it built-in])))
385-
BITCOIN_QT_CHECK(AC_CHECK_LIB([pcre16] ,[main],,AC_MSG_WARN([libpcre16 not found. Assuming qt has it built-in])))
401+
BITCOIN_QT_CHECK(AC_SEARCH_LIBS([pcre16_exec], [qtpcre pcre16],,AC_MSG_WARN([libpcre16 not found. Assuming qt has it built-in])))
402+
BITCOIN_QT_CHECK(AC_SEARCH_LIBS([hb_ot_tags_from_script] ,[qtharfbuzzng harfbuzz],,AC_MSG_WARN([libharfbuzz not found. Assuming qt has it built-in or support is disabled])))
386403
BITCOIN_QT_CHECK(AC_CHECK_LIB([${QT_LIB_PREFIX}Core] ,[main],,BITCOIN_QT_FAIL(lib$QT_LIB_PREFIXCore not found)))
387404
BITCOIN_QT_CHECK(AC_CHECK_LIB([${QT_LIB_PREFIX}Gui] ,[main],,BITCOIN_QT_FAIL(lib$QT_LIB_PREFIXGui not found)))
388405
BITCOIN_QT_CHECK(AC_CHECK_LIB([${QT_LIB_PREFIX}Network],[main],,BITCOIN_QT_FAIL(lib$QT_LIB_PREFIXNetwork not found)))

depends/packages/qt.mk

Lines changed: 109 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,139 @@
11
PACKAGE=qt
2-
$(package)_version=5.2.1
3-
$(package)_download_path=http://download.qt-project.org/official_releases/qt/5.2/$($(package)_version)/single
4-
$(package)_file_name=$(package)-everywhere-opensource-src-$($(package)_version).tar.gz
5-
$(package)_sha256_hash=84e924181d4ad6db00239d87250cc89868484a14841f77fb85ab1f1dbdcd7da1
2+
$(package)_version=5.5.0
3+
$(package)_download_path=http://download.qt.io/official_releases/qt/5.5/$($(package)_version)/submodules
4+
$(package)_suffix=opensource-src-$($(package)_version).tar.gz
5+
$(package)_file_name=qtbase-$($(package)_suffix)
6+
$(package)_sha256_hash=7e82b1318f88e56a2a9376e069aa608d4fd96b48cb0e1b880ae658b0a1af0561
67
$(package)_dependencies=openssl
78
$(package)_linux_dependencies=freetype fontconfig dbus libxcb libX11 xproto libXext
89
$(package)_build_subdir=qtbase
910
$(package)_qt_libs=corelib network widgets gui plugins testlib
10-
$(package)_patches=mac-qmake.conf fix-xcb-include-order.patch qt5-tablet-osx.patch qt5-yosemite.patch
11+
$(package)_patches=mac-qmake.conf fix-xcb-include-order.patch mingw-uuidof.patch
12+
13+
$(package)_qttranslations_file_name=qttranslations-$($(package)_suffix)
14+
$(package)_qttranslations_sha256_hash=c4bd6db6e426965c6f8824c54e81f68bbd61e2bae1bcadc328c6e81c45902a0d
15+
16+
$(package)_qttools_file_name=qttools-$($(package)_suffix)
17+
$(package)_qttools_sha256_hash=d9e06bd19ecc86afba5e95d45a906d1bc1ad579aa70001e36143c1aaf695bdd6
18+
19+
$(package)_extra_sources = $($(package)_qttranslations_file_name)
20+
$(package)_extra_sources += $($(package)_qttools_file_name)
1121

1222
define $(package)_set_vars
1323
$(package)_config_opts_release = -release
1424
$(package)_config_opts_debug = -debug
15-
$(package)_config_opts += -opensource -confirm-license -no-audio-backend -no-sql-tds -no-glib -no-icu
16-
$(package)_config_opts += -no-cups -no-iconv -no-gif -no-audio-backend -no-freetype
17-
$(package)_config_opts += -no-sql-sqlite -no-nis -no-cups -no-iconv -no-pch
18-
$(package)_config_opts += -no-gif -no-feature-style-plastique
19-
$(package)_config_opts += -no-qml-debug -no-pch -no-nis -nomake examples -nomake tests
20-
$(package)_config_opts += -no-feature-style-cde -no-feature-style-s60 -no-feature-style-motif
21-
$(package)_config_opts += -no-feature-style-windowsmobile -no-feature-style-windowsce
22-
$(package)_config_opts += -no-feature-style-cleanlooks
23-
$(package)_config_opts += -no-sql-db2 -no-sql-ibase -no-sql-oci -no-sql-tds -no-sql-mysql
24-
$(package)_config_opts += -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2
25-
$(package)_config_opts += -skip qtsvg -skip qtwebkit -skip qtwebkit-examples -skip qtserialport
26-
$(package)_config_opts += -skip qtdeclarative -skip qtmultimedia -skip qtimageformats -skip qtx11extras
27-
$(package)_config_opts += -skip qtlocation -skip qtsensors -skip qtquick1 -skip qtxmlpatterns
28-
$(package)_config_opts += -skip qtquickcontrols -skip qtactiveqt -skip qtconnectivity -skip qtmacextras
29-
$(package)_config_opts += -skip qtwinextras -skip qtxmlpatterns -skip qtscript -skip qtdoc
30-
31-
$(package)_config_opts += -prefix $(host_prefix) -bindir $(build_prefix)/bin
32-
$(package)_config_opts += -no-c++11 -openssl-linked -v -static -silent -pkg-config
33-
$(package)_config_opts += -qt-libpng -qt-libjpeg -qt-zlib -qt-pcre
25+
$(package)_config_opts += -opensource -confirm-license
26+
$(package)_config_opts += -no-audio-backend
27+
$(package)_config_opts += -no-glib
28+
$(package)_config_opts += -no-icu
29+
$(package)_config_opts += -no-cups
30+
$(package)_config_opts += -no-iconv
31+
$(package)_config_opts += -no-gif
32+
$(package)_config_opts += -no-freetype
33+
$(package)_config_opts += -no-nis
34+
$(package)_config_opts += -no-pch
35+
$(package)_config_opts += -no-qml-debug
36+
$(package)_config_opts += -nomake examples
37+
$(package)_config_opts += -nomake tests
38+
$(package)_config_opts += -no-feature-style-windowsmobile
39+
$(package)_config_opts += -no-feature-style-windowsce
40+
$(package)_config_opts += -no-sql-db2
41+
$(package)_config_opts += -no-sql-ibase
42+
$(package)_config_opts += -no-sql-oci
43+
$(package)_config_opts += -no-sql-tds
44+
$(package)_config_opts += -no-sql-mysql
45+
$(package)_config_opts += -no-sql-odbc
46+
$(package)_config_opts += -no-sql-psql
47+
$(package)_config_opts += -no-sql-sqlite
48+
$(package)_config_opts += -no-sql-sqlite2
49+
$(package)_config_opts += -prefix $(host_prefix)
50+
$(package)_config_opts += -hostprefix $(build_prefix)
51+
$(package)_config_opts += -bindir $(build_prefix)/bin
52+
$(package)_config_opts += -no-c++11
53+
$(package)_config_opts += -openssl-linked
54+
$(package)_config_opts += -v
55+
$(package)_config_opts += -static
56+
$(package)_config_opts += -silent
57+
$(package)_config_opts += -pkg-config
58+
$(package)_config_opts += -qt-libpng
59+
$(package)_config_opts += -qt-libjpeg
60+
$(package)_config_opts += -qt-zlib
61+
$(package)_config_opts += -qt-pcre
62+
$(package)_config_opts += -no-pulseaudio
63+
$(package)_config_opts += -no-openvg
64+
$(package)_config_opts += -no-xrender
65+
$(package)_config_opts += -no-alsa
66+
$(package)_config_opts += -no-mtdev
67+
$(package)_config_opts += -no-gstreamer
68+
$(package)_config_opts += -no-mitshm
69+
$(package)_config_opts += -no-kms
70+
$(package)_config_opts += -no-reduce-relocations
71+
$(package)_config_opts += -no-egl
72+
$(package)_config_opts += -no-eglfs
73+
$(package)_config_opts += -no-linuxfb
74+
$(package)_config_opts += -no-xinput2
75+
$(package)_config_opts += -no-libudev
76+
$(package)_config_opts += -no-use-gold-linker
77+
$(package)_config_opts += -reduce-exports
78+
$(package)_config_opts += -optimized-qmake
3479

3580
ifneq ($(build_os),darwin)
36-
$(package)_config_opts_darwin = -xplatform macx-clang-linux -device-option MAC_SDK_PATH=$(OSX_SDK) -device-option CROSS_COMPILE="$(host)-"
37-
$(package)_config_opts_darwin += -device-option MAC_MIN_VERSION=$(OSX_MIN_VERSION) -device-option MAC_TARGET=$(host) -device-option MAC_LD64_VERSION=$(LD64_VERSION)
81+
$(package)_config_opts_darwin = -xplatform macx-clang-linux
82+
$(package)_config_opts_darwin += -device-option MAC_SDK_PATH=$(OSX_SDK)
83+
$(package)_config_opts_darwin += -device-option MAC_SDK_VERSION=$(OSX_SDK_VERSION)
84+
$(package)_config_opts_darwin += -device-option CROSS_COMPILE="$(host)-"
85+
$(package)_config_opts_darwin += -device-option MAC_MIN_VERSION=$(OSX_MIN_VERSION)
86+
$(package)_config_opts_darwin += -device-option MAC_TARGET=$(host)
87+
$(package)_config_opts_darwin += -device-option MAC_LD64_VERSION=$(LD64_VERSION)
3888
endif
3989

40-
$(package)_config_opts_linux = -qt-xkbcommon -qt-xcb -no-eglfs -no-linuxfb -system-freetype -no-sm -fontconfig -no-xinput2 -no-libudev -no-egl -no-opengl
90+
$(package)_config_opts_linux = -qt-xkbcommon
91+
$(package)_config_opts_linux += -qt-xcb
92+
$(package)_config_opts_linux += -system-freetype
93+
$(package)_config_opts_linux += -no-sm
94+
$(package)_config_opts_linux += -fontconfig
95+
$(package)_config_opts_linux += -no-opengl
4196
$(package)_config_opts_arm_linux = -platform linux-g++ -xplatform $(host)
4297
$(package)_config_opts_i686_linux = -xplatform linux-g++-32
4398
$(package)_config_opts_mingw32 = -no-opengl -xplatform win32-g++ -device-option CROSS_COMPILE="$(host)-"
4499
$(package)_build_env = QT_RCC_TEST=1
45100
endef
46101

102+
define $(package)_fetch_cmds
103+
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_download_file),$($(package)_file_name),$($(package)_sha256_hash)) && \
104+
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttranslations_file_name),$($(package)_qttranslations_file_name),$($(package)_qttranslations_sha256_hash)) && \
105+
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttools_file_name),$($(package)_qttools_file_name),$($(package)_qttools_sha256_hash))
106+
endef
107+
108+
define $(package)_extract_cmds
109+
mkdir -p $($(package)_extract_dir) && \
110+
echo "$($(package)_sha256_hash) $($(package)_source)" > $($(package)_extract_dir)/.$($(package)_file_name).hash && \
111+
echo "$($(package)_qttranslations_sha256_hash) $($(package)_source_dir)/$($(package)_qttranslations_file_name)" > $($(package)_extract_dir)/.$($(package)_file_name).hash && \
112+
echo "$($(package)_qttools_sha256_hash) $($(package)_source_dir)/$($(package)_qttools_file_name)" > $($(package)_extract_dir)/.$($(package)_file_name).hash && \
113+
$(build_SHA256SUM) -c $($(package)_extract_dir)/.$($(package)_file_name).hash && \
114+
mkdir qtbase && \
115+
tar --strip-components=1 -xf $($(package)_source) -C qtbase && \
116+
mkdir qttranslations && \
117+
tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qttranslations_file_name) -C qttranslations && \
118+
mkdir qttools && \
119+
tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qttools_file_name) -C qttools
120+
endef
121+
47122
define $(package)_preprocess_cmds
48123
sed -i.old "s|updateqm.commands = \$$$$\$$$$LRELEASE|updateqm.commands = $($(package)_extract_dir)/qttools/bin/lrelease|" qttranslations/translations/translations.pro && \
49124
sed -i.old "s/src_plugins.depends = src_sql src_xml src_network/src_plugins.depends = src_xml src_network/" qtbase/src/src.pro && \
50-
sed -i.old "/XIproto.h/d" qtbase/src/plugins/platforms/xcb/qxcbxsettings.cpp && \
125+
sed -i.old "s/PIDLIST_ABSOLUTE/ITEMIDLIST */" qtbase/src/plugins/platforms/windows/qwindowscontext.h &&\
126+
sed -i.old "s/PIDLIST_ABSOLUTE/ITEMIDLIST */" qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp &&\
127+
sed -i.old "s/PCIDLIST_ABSOLUTE/const ITEMIDLIST */" qtbase/src/plugins/platforms/windows/qwindowscontext.h &&\
128+
sed -i.old "s|X11/extensions/XIproto.h|X11/X.h|" qtbase/src/plugins/platforms/xcb/qxcbxsettings.cpp && \
51129
sed -i.old 's/if \[ "$$$$XPLATFORM_MAC" = "yes" \]; then xspecvals=$$$$(macSDKify/if \[ "$$$$BUILD_ON_MAC" = "yes" \]; then xspecvals=$$$$(macSDKify/' qtbase/configure && \
52130
mkdir -p qtbase/mkspecs/macx-clang-linux &&\
53131
cp -f qtbase/mkspecs/macx-clang/Info.plist.lib qtbase/mkspecs/macx-clang-linux/ &&\
54132
cp -f qtbase/mkspecs/macx-clang/Info.plist.app qtbase/mkspecs/macx-clang-linux/ &&\
55133
cp -f qtbase/mkspecs/macx-clang/qplatformdefs.h qtbase/mkspecs/macx-clang-linux/ &&\
56134
cp -f $($(package)_patch_dir)/mac-qmake.conf qtbase/mkspecs/macx-clang-linux/qmake.conf && \
57135
patch -p1 < $($(package)_patch_dir)/fix-xcb-include-order.patch && \
58-
patch -p1 < $($(package)_patch_dir)/qt5-tablet-osx.patch && \
59-
patch -d qtbase -p1 < $($(package)_patch_dir)/qt5-yosemite.patch && \
136+
patch -p1 < $($(package)_patch_dir)/mingw-uuidof.patch && \
60137
echo "QMAKE_CFLAGS += $($(package)_cflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
61138
echo "QMAKE_CXXFLAGS += $($(package)_cxxflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
62139
echo "QMAKE_LFLAGS += $($(package)_ldflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
@@ -69,7 +146,6 @@ define $(package)_config_cmds
69146
export PKG_CONFIG_SYSROOT_DIR=/ && \
70147
export PKG_CONFIG_LIBDIR=$(host_prefix)/lib/pkgconfig && \
71148
export PKG_CONFIG_PATH=$(host_prefix)/share/pkgconfig && \
72-
export CPATH=$(host_prefix)/include && \
73149
./configure $($(package)_config_opts) && \
74150
$(MAKE) sub-src-clean && \
75151
cd ../qttranslations && ../qtbase/bin/qmake qttranslations.pro -o Makefile && \
@@ -78,7 +154,6 @@ define $(package)_config_cmds
78154
endef
79155
80156
define $(package)_build_cmds
81-
export CPATH=$(host_prefix)/include && \
82157
$(MAKE) -C src $(addprefix sub-,$($(package)_qt_libs)) && \
83158
$(MAKE) -C ../qttools/src/linguist/lrelease && \
84159
$(MAKE) -C ../qttranslations
@@ -94,6 +169,6 @@ define $(package)_stage_cmds
94169
endef
95170
96171
define $(package)_postprocess_cmds
97-
rm -rf mkspecs/ lib/cmake/ && \
98-
rm lib/libQt5Bootstrap.a lib/lib*.la lib/*.prl plugins/*/*.prl
172+
rm -rf native/mkspecs/ native/lib/ lib/cmake/ && \
173+
rm -f lib/lib*.la lib/*.prl plugins/*/*.prl
99174
endef
Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
1-
--- old/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2015-03-17 02:06:42.705930685 +0000
2-
+++ new/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2015-03-17 02:08:41.281926351 +0000
3-
@@ -103,7 +103,6 @@
1+
--- old/qtbase/src/plugins/platforms/xcb/xcb_qpa_lib.pro 2015-03-17 02:06:42.705930685 +0000
2+
+++ new/qtbase/src/plugins/platforms/xcb/xcb_qpa_lib.pro 2015-03-17 02:08:41.281926351 +0000
3+
@@ -94,8 +94,6 @@
44

55
DEFINES += $$QMAKE_DEFINES_XCB
66
LIBS += $$QMAKE_LIBS_XCB
77
-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XCB
8+
-QMAKE_CFLAGS += $$QMAKE_CFLAGS_XCB
89

910
CONFIG += qpa/genericunixfontdatabase
1011

11-
@@ -118,7 +117,8 @@
12+
@@ -104,7 +102,8 @@
1213
contains(QT_CONFIG, xcb-qt) {
1314
DEFINES += XCB_USE_RENDER
1415
XCB_DIR = ../../../3rdparty/xcb
@@ -17,15 +18,28 @@
1718
+ QMAKE_CXXFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
1819
LIBS += -lxcb -L$$OUT_PWD/xcb-static -lxcb-static
1920
} else {
20-
LIBS += -lxcb -lxcb-image -lxcb-icccm -lxcb-sync -lxcb-xfixes -lxcb-shm -lxcb-randr
21+
LIBS += -lxcb -lxcb-image -lxcb-icccm -lxcb-sync -lxcb-xfixes -lxcb-shm -lxcb-randr -lxcb-shape -lxcb-keysyms
2122
--- old/qtbase/src/plugins/platforms/xcb/xcb-static/xcb-static.pro 2015-03-17 02:07:04.641929383 +0000
2223
+++ new/qtbase/src/plugins/platforms/xcb/xcb-static/xcb-static.pro 2015-03-17 02:10:15.485922059 +0000
23-
@@ -8,7 +8,7 @@
24+
@@ -8,7 +8,8 @@
2425

2526
XCB_DIR = ../../../../3rdparty/xcb
2627

2728
-INCLUDEPATH += $$XCB_DIR/include $$XCB_DIR/include/xcb $$XCB_DIR/sysinclude
28-
+QMAKE_CFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/include/xcb -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
29+
+QMAKE_CFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/include/xcb -I$$XCB_DIR/sysinclude
30+
+QMAKE_CXXFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/include/xcb -I$$XCB_DIR/sysinclude
2931

30-
# ignore compiler warnings in 3rdparty code
31-
QMAKE_CFLAGS_STATIC_LIB+=-w
32+
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XCB
33+
QMAKE_CFLAGS += $$QMAKE_CFLAGS_XCB
34+
--- old/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2015-07-24 16:02:59.530038830 -0400
35+
+++ new/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2015-07-24 16:01:22.106037459 -0400
36+
@@ -11,3 +11,9 @@
37+
qxcbmain.cpp
38+
OTHER_FILES += xcb.json README
39+
40+
+contains(QT_CONFIG, xcb-qt) {
41+
+ DEFINES += XCB_USE_RENDER
42+
+ XCB_DIR = ../../../3rdparty/xcb
43+
+ QMAKE_CFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
44+
+ QMAKE_CXXFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
45+
+}

depends/patches/qt/mac-qmake.conf

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
MAKEFILE_GENERATOR = UNIX
22
CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname absolute_library_soname
3+
DEFINES += QT_NO_PRINTER QT_NO_PRINTDIALOG
34
QMAKE_INCREMENTAL_STYLE = sublib
45
include(../common/macx.conf)
56
include(../common/gcc-base-mac.conf)
@@ -10,8 +11,10 @@ QMAKE_XCODE_VERSION=4.3
1011
QMAKE_XCODE_DEVELOPER_PATH=/Developer
1112
QMAKE_MACOSX_DEPLOYMENT_TARGET = $${MAC_MIN_VERSION}
1213
QMAKE_MAC_SDK=macosx
13-
QMAKE_MAC_SDK.macosx.path = $$QMAKE_MAC_SDK_PATH
14+
QMAKE_MAC_SDK.macosx.path = $${MAC_SDK_PATH}
1415
QMAKE_MAC_SDK.macosx.platform_name = macosx
16+
QMAKE_MAC_SDK.macosx.version = $${MAC_SDK_VERSION}
17+
QMAKE_MAC_SDK.macosx.platform_path = /phony
1518
QMAKE_CFLAGS += -target $${MAC_TARGET}
1619
QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_CFLAGS
1720
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS

depends/patches/qt/mingw-uuidof.patch

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
--- old/qtbase/src/plugins/platforms/windows/qwindowscontext.cpp 2015-06-20 17:40:20.956781548 -0400
2+
+++ new/qtbase/src/plugins/platforms/windows/qwindowscontext.cpp 2015-06-20 17:29:32.052772416 -0400
3+
@@ -69,7 +69,7 @@
4+
#include <stdlib.h>
5+
#include <stdio.h>
6+
#include <windowsx.h>
7+
-#ifndef Q_OS_WINCE
8+
+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
9+
# include <comdef.h>
10+
#endif
11+
12+
@@ -762,7 +762,7 @@
13+
HWND_MESSAGE, NULL, (HINSTANCE)GetModuleHandle(0), NULL);
14+
}
15+
16+
-#ifndef Q_OS_WINCE
17+
+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
18+
// Re-engineered from the inline function _com_error::ErrorMessage().
19+
// We cannot use it directly since it uses swprintf_s(), which is not
20+
// present in the MSVCRT.DLL found on Windows XP (QTBUG-35617).
21+
@@ -781,7 +781,7 @@
22+
return QStringLiteral("IDispatch error #") + QString::number(wCode);
23+
return QStringLiteral("Unknown error 0x0") + QString::number(comError.Error(), 16);
24+
}
25+
-#endif // !Q_OS_WINCE
26+
+#endif // !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
27+
28+
/*!
29+
\brief Common COM error strings.
30+
@@ -846,12 +846,12 @@
31+
default:
32+
break;
33+
}
34+
-#ifndef Q_OS_WINCE
35+
+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
36+
_com_error error(hr);
37+
result += QByteArrayLiteral(" (");
38+
result += errorMessageFromComError(error);
39+
result += ')';
40+
-#endif // !Q_OS_WINCE
41+
+#endif // !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
42+
return result;
43+
}
44+

0 commit comments

Comments
 (0)