summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>2020-10-02 13:25:57 +0200
committerEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>2020-10-05 09:13:18 +0200
commit9c8e59a7a6b0cfaa7caf899bdb577270c83b9a12 (patch)
treea30bfc3480a022c3163a3bca1d3aaef357a6219a
parent6a7c6eedbaf00b1f2102247810987b6d9246f34e (diff)
downloadqtwayland-9c8e59a7a6b0cfaa7caf899bdb577270c83b9a12.tar.gz
Build with -no-opengl
Fix build when Qt is built with -no-opengl: 1. Certain includes have to be conditional on QT_CONFIG(opengl), just like the code that uses them. 2. After 585f20dce37c398d8b2e6367008e3329dac79e24, the ClientBufferIntegration is used even with a software-raster compositor, so we need to include this class in the build. 3. The wayland-scanner-generated header files are unconditionally installed through sync.profile and there is no way to exclude it there based on Qt configuration, which causes errors when doing make install. The easy fix for this is to generate the headers even though they will not be used anywhere. Fixes: QTBUG-86291 Change-Id: I671b6345cbc7138309e20fe62e09513f191cd3fe Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io> (cherry picked from commit cab51443ed9246c14255dcb295764f4d15cffaa1) Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
-rw-r--r--src/compositor/compositor_api/qwaylandquickcompositor.cpp8
-rw-r--r--src/compositor/compositor_api/qwaylandquickitem.cpp7
-rw-r--r--src/compositor/compositor_api/qwaylandquicksurface.cpp1
-rw-r--r--src/compositor/extensions/extensions.pri4
-rw-r--r--src/compositor/hardware_integration/hardware_integration.pri19
5 files changed, 23 insertions, 16 deletions
diff --git a/src/compositor/compositor_api/qwaylandquickcompositor.cpp b/src/compositor/compositor_api/qwaylandquickcompositor.cpp
index 2b025848..49f0860e 100644
--- a/src/compositor/compositor_api/qwaylandquickcompositor.cpp
+++ b/src/compositor/compositor_api/qwaylandquickcompositor.cpp
@@ -30,9 +30,11 @@
#include <QtQml/QQmlEngine>
#include <QQuickWindow>
-#include <QOpenGLTextureBlitter>
-#include <QOpenGLTexture>
-#include <QOpenGLFramebufferObject>
+#if QT_CONFIG(opengl)
+# include <QOpenGLTextureBlitter>
+# include <QOpenGLTexture>
+# include <QOpenGLFramebufferObject>
+#endif
#include <QMatrix4x4>
#include <QRunnable>
diff --git a/src/compositor/compositor_api/qwaylandquickitem.cpp b/src/compositor/compositor_api/qwaylandquickitem.cpp
index c9a2e9fc..15f0195c 100644
--- a/src/compositor/compositor_api/qwaylandquickitem.cpp
+++ b/src/compositor/compositor_api/qwaylandquickitem.cpp
@@ -42,11 +42,14 @@
#include <QtWaylandCompositor/private/qwlclientbufferintegration_p.h>
#include <QtWaylandCompositor/private/qwaylandsurface_p.h>
+#if QT_CONFIG(opengl)
+# include <QtGui/QOpenGLTexture>
+# include <QtGui/QOpenGLFunctions>
+#endif
+
#include <QtGui/QKeyEvent>
#include <QtGui/QGuiApplication>
#include <QtGui/QScreen>
-#include <QtGui/QOpenGLFunctions>
-#include <QtGui/QOpenGLTexture>
#include <QtQuick/QSGSimpleTextureNode>
#include <QtQuick/QQuickWindow>
diff --git a/src/compositor/compositor_api/qwaylandquicksurface.cpp b/src/compositor/compositor_api/qwaylandquicksurface.cpp
index 8b2f13a3..8808b6a4 100644
--- a/src/compositor/compositor_api/qwaylandquicksurface.cpp
+++ b/src/compositor/compositor_api/qwaylandquicksurface.cpp
@@ -28,7 +28,6 @@
****************************************************************************/
#include <QSGTexture>
-#include <QOpenGLTexture>
#include <QQuickWindow>
#include <QDebug>
diff --git a/src/compositor/extensions/extensions.pri b/src/compositor/extensions/extensions.pri
index 64b1439b..e52bbfd6 100644
--- a/src/compositor/extensions/extensions.pri
+++ b/src/compositor/extensions/extensions.pri
@@ -17,6 +17,7 @@ WAYLANDSERVERSOURCES += \
../3rdparty/protocol/xdg-output-unstable-v1.xml \
../3rdparty/protocol/ivi-application.xml \
../3rdparty/protocol/idle-inhibit-unstable-v1.xml \
+ ../extensions/qt-texture-sharing-unstable-v1.xml \
HEADERS += \
extensions/qwlqttouch_p.h \
@@ -98,9 +99,6 @@ qtHaveModule(quick) {
extensions/qwaylandxdgshellintegration.cpp \
qtConfig(opengl) {
- WAYLANDSERVERSOURCES += \
- ../extensions/qt-texture-sharing-unstable-v1.xml
-
HEADERS += \
extensions/qwltexturesharingextension_p.h
diff --git a/src/compositor/hardware_integration/hardware_integration.pri b/src/compositor/hardware_integration/hardware_integration.pri
index 6bf7a75b..bb21e3d8 100644
--- a/src/compositor/hardware_integration/hardware_integration.pri
+++ b/src/compositor/hardware_integration/hardware_integration.pri
@@ -1,11 +1,17 @@
-qtConfig(opengl) {
- CONFIG += wayland-scanner
- WAYLANDSERVERSOURCES += \
- ../extensions/server-buffer-extension.xml \
- ../extensions/hardware-integration.xml \
+CONFIG += wayland-scanner
+WAYLANDSERVERSOURCES += \
+ ../extensions/server-buffer-extension.xml \
+ ../extensions/hardware-integration.xml \
+
+HEADERS += \
+ hardware_integration/qwlclientbufferintegration_p.h \
+
+SOURCES += \
+ hardware_integration/qwlclientbufferintegration.cpp \
+
+qtConfig(opengl) {
HEADERS += \
- hardware_integration/qwlclientbufferintegration_p.h \
hardware_integration/qwlclientbufferintegrationfactory_p.h \
hardware_integration/qwlclientbufferintegrationplugin_p.h \
hardware_integration/qwlserverbufferintegration_p.h \
@@ -17,7 +23,6 @@ qtConfig(opengl) {
hardware_integration/qwlhardwarelayerintegrationplugin_p.h \
SOURCES += \
- hardware_integration/qwlclientbufferintegration.cpp \
hardware_integration/qwlclientbufferintegrationfactory.cpp \
hardware_integration/qwlclientbufferintegrationplugin.cpp \
hardware_integration/qwlserverbufferintegration.cpp \