summaryrefslogtreecommitdiffstats
path: root/package/qt5
diff options
context:
space:
mode:
Diffstat (limited to 'package/qt5')
-rw-r--r--package/qt5/qt5base/5.11.1/0003-Fix-qmake-build-with-glibc-2.28.patch74
-rw-r--r--package/qt5/qt5wayland/0001-fix-compilation-without-QtQuick.patch69
-rw-r--r--package/qt5/qt5wayland/Config.in3
-rw-r--r--package/qt5/qt5wayland/qt5wayland.mk6
4 files changed, 148 insertions, 4 deletions
diff --git a/package/qt5/qt5base/5.11.1/0003-Fix-qmake-build-with-glibc-2.28.patch b/package/qt5/qt5base/5.11.1/0003-Fix-qmake-build-with-glibc-2.28.patch
new file mode 100644
index 0000000000..6d8bb28992
--- /dev/null
+++ b/package/qt5/qt5base/5.11.1/0003-Fix-qmake-build-with-glibc-2.28.patch
@@ -0,0 +1,74 @@
+From 25feee4e061b99edab79503d81f5bd045c6c8e3d Mon Sep 17 00:00:00 2001
+From: Thiago Macieira <thiago.macieira@intel.com>
+Date: Tue, 7 Aug 2018 09:38:42 -0700
+Subject: [PATCH] Fix qmake build with glibc 2.28
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+We haven't yet run the configure checks to see if statx and renameat2
+are present in glibc, so this fails when we redefine the structures and
+functions.
+
+linux/stat.h:56:8: error: redefinition of 'struct statx_timestamp'
+bits/statx.h:25:8: note: previous definition of 'struct statx_timestamp'
+qfilesystemengine_unix.cpp:110:12: error: 'int renameat2(int, const char*, int, const char*, unsigned int)' was declared 'extern' and later 'static' [-fpermissive]
+
+Change-Id: Ia741b559c24d46c78fb2fffd1548a792d22e3368
+Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
+Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
+
+Downloaded from upstream commit
+http://code.qt.io/cgit/qt/qtbase.git/commit/?id=25feee4e061b99edab79503d81f5bd045c6c8e3d
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ src/corelib/global/qconfig-bootstrapped.h | 12 ++++++++++--
+ src/corelib/io/qfilesystemengine_unix.cpp | 2 +-
+ 2 files changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h
+index 3469ebe5e6..c5585ea32a 100644
+--- a/src/corelib/global/qconfig-bootstrapped.h
++++ b/src/corelib/global/qconfig-bootstrapped.h
+@@ -98,10 +98,18 @@
+ #define QT_NO_QOBJECT
+ #define QT_FEATURE_process -1
+ #define QT_FEATURE_regularexpression -1
+-#define QT_FEATURE_renameat2 -1
++#ifdef __GLIBC_PREREQ
++# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1)
++#else
++# define QT_FEATURE_renameat2 -1
++#endif
+ #define QT_FEATURE_sharedmemory -1
+ #define QT_FEATURE_slog2 -1
+-#define QT_FEATURE_statx -1
++#ifdef __GLIBC_PREREQ
++# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1)
++#else
++# define QT_FEATURE_statx -1
++#endif
+ #define QT_FEATURE_syslog -1
+ #define QT_NO_SYSTEMLOCALE
+ #define QT_FEATURE_systemsemaphore -1
+diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp
+index 0c9cdb8667..deb4a9f220 100644
+--- a/src/corelib/io/qfilesystemengine_unix.cpp
++++ b/src/corelib/io/qfilesystemengine_unix.cpp
+@@ -91,7 +91,6 @@ extern "C" NSString *NSTemporaryDirectory();
+ # include <sys/syscall.h>
+ # include <sys/sendfile.h>
+ # include <linux/fs.h>
+-# include <linux/stat.h>
+
+ // in case linux/fs.h is too old and doesn't define it:
+ #ifndef FICLONE
+@@ -112,6 +111,7 @@ static int renameat2(int oldfd, const char *oldpath, int newfd, const char *newp
+ # endif
+
+ # if !QT_CONFIG(statx) && defined(SYS_statx)
++# include <linux/stat.h>
+ static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf)
+ { return syscall(SYS_statx, dirfd, pathname, flag, mask, statxbuf); }
+ # elif !QT_CONFIG(statx) && !defined(SYS_statx)
diff --git a/package/qt5/qt5wayland/0001-fix-compilation-without-QtQuick.patch b/package/qt5/qt5wayland/0001-fix-compilation-without-QtQuick.patch
new file mode 100644
index 0000000000..fe5d323db0
--- /dev/null
+++ b/package/qt5/qt5wayland/0001-fix-compilation-without-QtQuick.patch
@@ -0,0 +1,69 @@
+From 2c48ee65e8c3b894caec214641723d0777fc60b8 Mon Sep 17 00:00:00 2001
+From: Alexander Schlarb <alexander@ninetailed.ninja>
+Date: Sun, 29 Jul 2018 21:27:28 +0200
+Subject: Fix compilation of QtWayland without QtQuick
+
+Change-Id: I0baf542f89274f48bf7d02121a07d64f0f3a001b
+Reviewed-by: Johan Helsing <johan.helsing@qt.io>
+Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
+---
+ src/compositor/compositor_api/compositor_api.pri | 10 +++++-----
+ .../hardware_integration/qwlhardwarelayerintegration_p.h | 1 -
+ 2 files changed, 5 insertions(+), 6 deletions(-)
+
+diff --git a/src/compositor/compositor_api/compositor_api.pri b/src/compositor/compositor_api/compositor_api.pri
+index e5df0f1f..4a0c0aa6 100644
+--- a/src/compositor/compositor_api/compositor_api.pri
++++ b/src/compositor/compositor_api/compositor_api.pri
+@@ -27,7 +27,6 @@ HEADERS += \
+ compositor_api/qwaylandresource.h \
+ compositor_api/qwaylandsurfacegrabber.h \
+ compositor_api/qwaylandoutputmode_p.h \
+- compositor_api/qwaylandquickhardwarelayer_p.h \
+
+ SOURCES += \
+ compositor_api/qwaylandcompositor.cpp \
+@@ -44,8 +43,7 @@ SOURCES += \
+ compositor_api/qwaylanddestroylistener.cpp \
+ compositor_api/qwaylandview.cpp \
+ compositor_api/qwaylandresource.cpp \
+- compositor_api/qwaylandsurfacegrabber.cpp \
+- compositor_api/qwaylandquickhardwarelayer.cpp
++ compositor_api/qwaylandsurfacegrabber.cpp
+
+ qtConfig(im) {
+ HEADERS += \
+@@ -71,14 +69,16 @@ qtHaveModule(quick):qtConfig(opengl) {
+ compositor_api/qwaylandquickcompositor.cpp \
+ compositor_api/qwaylandquicksurface.cpp \
+ compositor_api/qwaylandquickoutput.cpp \
+- compositor_api/qwaylandquickitem.cpp
++ compositor_api/qwaylandquickitem.cpp \
++ compositor_api/qwaylandquickhardwarelayer.cpp
+
+ HEADERS += \
+ compositor_api/qwaylandquickcompositor.h \
+ compositor_api/qwaylandquicksurface.h \
+ compositor_api/qwaylandquickoutput.h \
+ compositor_api/qwaylandquickitem.h \
+- compositor_api/qwaylandquickitem_p.h
++ compositor_api/qwaylandquickitem_p.h \
++ compositor_api/qwaylandquickhardwarelayer_p.h
+
+ QT += qml qml-private quick quick-private
+ }
+diff --git a/src/compositor/hardware_integration/qwlhardwarelayerintegration_p.h b/src/compositor/hardware_integration/qwlhardwarelayerintegration_p.h
+index 02de8e8b..1e5fb1a1 100644
+--- a/src/compositor/hardware_integration/qwlhardwarelayerintegration_p.h
++++ b/src/compositor/hardware_integration/qwlhardwarelayerintegration_p.h
+@@ -54,7 +54,6 @@
+ #include <QtWaylandCompositor/qtwaylandcompositorglobal.h>
+
+ #include <QObject>
+-#include <QQmlParserStatus>
+
+ QT_BEGIN_NAMESPACE
+
+--
+cgit v1.1-6-g87c4
+
diff --git a/package/qt5/qt5wayland/Config.in b/package/qt5/qt5wayland/Config.in
index 0182d3ca56..0d5a108912 100644
--- a/package/qt5/qt5wayland/Config.in
+++ b/package/qt5/qt5wayland/Config.in
@@ -1,12 +1,9 @@
comment "qt5wayland needs an OpenGL-capable backend"
- depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE
depends on !BR2_PACKAGE_QT5_GL_AVAILABLE
config BR2_PACKAGE_QT5WAYLAND
bool "qt5wayland"
depends on BR2_PACKAGE_QT5_GL_AVAILABLE
- depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE # qt5declarative
- select BR2_PACKAGE_QT5DECLARATIVE
select BR2_PACKAGE_WAYLAND
help
Qt is a cross-platform application and UI framework for
diff --git a/package/qt5/qt5wayland/qt5wayland.mk b/package/qt5/qt5wayland/qt5wayland.mk
index 98e592f03d..d6fb6e1888 100644
--- a/package/qt5/qt5wayland/qt5wayland.mk
+++ b/package/qt5/qt5wayland/qt5wayland.mk
@@ -7,9 +7,13 @@
QT5WAYLAND_VERSION = $(QT5_VERSION)
QT5WAYLAND_SITE = $(QT5_SITE)
QT5WAYLAND_SOURCE = qtwayland-$(QT5_SOURCE_TARBALL_PREFIX)-$(QT5WAYLAND_VERSION).tar.xz
-QT5WAYLAND_DEPENDENCIES = qt5base qt5declarative wayland
+QT5WAYLAND_DEPENDENCIES = qt5base wayland
QT5WAYLAND_INSTALL_STAGING = YES
+ifeq ($(BR2_PACKAGE_QT5DECLARATIVE_QUICK),y)
+QT5WAYLAND_DEPENDENCIES += qt5declarative
+endif
+
ifeq ($(BR2_PACKAGE_LIBXKBCOMMON),y)
QT5WAYLAND_DEPENDENCIES += libxkbcommon
endif
OpenPOWER on IntegriCloud