greenisland: update to 0.7.90+

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
This commit is contained in:
Andreas Müller
2016-04-08 01:37:48 +02:00
parent de534dfaed
commit bba70ec000
9 changed files with 314 additions and 45 deletions

View File

@@ -0,0 +1,13 @@
require greenisland.inc
FILESEXTRAPATHS =. "${FILE_DIRNAME}/${PN}:"
inherit native
DEPENDS += " \
qtbase-native \
"
SRC_URI += " \
file://0001-reduce-build-to-waylandscanner-for-native-build.patch \
"

View File

@@ -0,0 +1,64 @@
From 60bf186466bf236582eef59f3822719cb531ed09 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 11 Mar 2016 18:55:42 +0100
Subject: [PATCH] reduce build to waylandscanner for native build
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
CMakeLists.txt | 19 +++----------------
tools/CMakeLists.txt | 1 -
2 files changed, 3 insertions(+), 17 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 895ff5e..1dc5935 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -72,8 +72,9 @@ endif()
# Find Qt5
set(REQUIRED_QT_VERSION 5.6.0)
-find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core DBus Gui Qml Quick)
+find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core)
+if(False)
# OpenGL
find_package(OpenGL)
set_package_properties(OpenGL PROPERTIES
@@ -151,23 +152,9 @@ add_feature_info("systemd" systemd_FOUND "Required for systemd integration")
# xkbcommon
pkg_check_modules(xkbcommon xkbcommon REQUIRED)
add_feature_info("xkbcommon" xkbcommon_FOUND "Required for keymap support")
+endif()
-# Subdirectories
-if(ENABLE_ONLY_EGLDEVICEINTEGRATION)
- add_subdirectory(plugins)
-else()
- add_subdirectory(compositor)
- add_subdirectory(data)
- add_subdirectory(declarative)
- add_subdirectory(headers)
- add_subdirectory(launcher)
- add_subdirectory(plugins)
- add_subdirectory(qpa)
- add_subdirectory(shells)
- add_subdirectory(src)
- add_subdirectory(tests)
add_subdirectory(tools)
-endif()
# Display featute summary
feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index f8b167c..3bdf127 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -1,2 +1 @@
-add_subdirectory(screencaster)
add_subdirectory(waylandscanner)
--
2.5.5

View File

@@ -0,0 +1,55 @@
require greenisland.inc
inherit cmake-lib cmake-auto-align-paths
DEPENDS += " \
${BPN}-native \
${@base_contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
wayland \
qtwayland \
libkscreen \
virtual/egl \
libinput \
"
SRC_URI = " \
git://github.com/greenisland/${BPN}.git;protocol=git;branch=master \
file://0001-find-native-greenisland-wayland-scanner.patch \
file://0002-qwlsurfacebuffer.cpp-include-qwlclientbufferintegrat.patch \
file://0003-waylandcompositor-remove-property-useHardwareIntegra.patch \
file://0004-hardwareintegration-glx-compositor-does-not-build-in.patch \
"
# we don't have wayland-protocols yet - revisit
EXTRA_OECMAKE += "-DUSE_LOCAL_WAYLAND_PROTOCOLS=ON"
do_compile_append() {
for f in `find ${B} -name 'GreenIsland*.cmake'` ; do
sed -i 's:${STAGING_INCDIR}:${includedir}:g' "$f"
sed -i 's:${STAGING_LIBDIR}:${libdir}:g' "$f"
done
}
PACKAGECONFIG ??= " \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "xwayland", "",d)} \
"
PACKAGECONFIG[xwayland] = "-DENABLE_XWAYLAND=ON,-DENABLE_XWAYLAND=OFF,libxcb"
# cross libs / headers
CMAKE_ALIGN_SYSROOT[1] = "GreenIsland, -S${libdir}/lib, -S${STAGING_LIBDIR}/lib"
CMAKE_ALIGN_SYSROOT[2] = "GreenIsland, -S${includedir}, -S${STAGING_INCDIR}"
FILES_${PN} += " \
${OE_QMAKE_PATH_PLUGINS} \
${OE_QMAKE_PATH_QML}/GreenIsland \
"
FILES_${PN}-dbg += " \
${OE_QMAKE_PATH_PLUGINS}/.debug \
${OE_QMAKE_PATH_QML}/GreenIsland/.debug \
"
FILES_${PN}-dev += " \
${libdir}/cmake \
${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs \
"

View File

@@ -0,0 +1,19 @@
SUMMARY = "Support library to make Qt-based Wayland compositors development easier"
LICENSE = "LGPLv3 | GPLv2 | GPLv3"
LIC_FILES_CHKSUM = " \
file://LICENSE.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://LICENSE.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
file://LICENSE.LGPLv2.1;md5=4fbd65380cdd255951079008b364516c \
file://LICENSE.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
"
inherit hawaii pythonnative pkgconfig
SRC_URI = " \
git://github.com/greenisland/${BPN}.git;protocol=git;branch=master \
"
SRCREV = "c39760ad84b8d7d872b23d97a6f7aa5be236dacd"
PV = "0.7.90+git${SRCPV}"
S = "${WORKDIR}/git"

View File

@@ -0,0 +1,25 @@
From 2af2ca532ade54a610f3fab506894f68f8ca6388 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 11 Mar 2016 21:10:34 +0100
Subject: [PATCH] find native greenisland-wayland-scanner
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
src/GreenIslandConfigExtrasLocal.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/server/GreenIslandServerConfigExtrasLocal.cmake b/src/server/GreenIslandServerConfigExtrasLocal.cmake
index 321be30..b1f4da6 100644
--- a/src/server/GreenIslandServerConfigExtrasLocal.cmake
+++ b/src/server/GreenIslandServerConfigExtrasLocal.cmake
@@ -1,3 +1,3 @@
# GreenIslandConfigExtras.cmake copy that uses the local target
-set(GreenIsland_WAYLAND_SCANNER_EXECUTABLE GreenIsland::greenisland-wayland-scanner)
+set(GreenIsland_WAYLAND_SCANNER_EXECUTABLE greenisland-wayland-scanner)
--
2.5.0

View File

@@ -0,0 +1,35 @@
From be70976f2bbbe9e7ff6826e9a4b5863a2dd5b70e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Thu, 7 Apr 2016 23:48:18 +0200
Subject: [PATCH] qwlsurfacebuffer.cpp: include qwlclientbufferintegration_p.h
unconditionoally
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
In GLESv2 environment I get:
<...>/src/waylandcompositor/wayland_wrapper/qwlsurfacebuffer.cpp:104:22: error: invalid use of incomplete type 'class QtWayland::ClientBufferIntegration'
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
src/waylandcompositor/wayland_wrapper/qwlsurfacebuffer.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/waylandcompositor/wayland_wrapper/qwlsurfacebuffer.cpp b/src/waylandcompositor/wayland_wrapper/qwlsurfacebuffer.cpp
index cf0c566..42591c3 100644
--- a/src/waylandcompositor/wayland_wrapper/qwlsurfacebuffer.cpp
+++ b/src/waylandcompositor/wayland_wrapper/qwlsurfacebuffer.cpp
@@ -36,8 +36,8 @@
#include "qwlsurfacebuffer_p.h"
-#ifdef QT_COMPOSITOR_WAYLAND_GL
#include "hardware_integration/qwlclientbufferintegration_p.h"
+#ifdef QT_COMPOSITOR_WAYLAND_GL
#include <qpa/qplatformopenglcontext.h>
#endif
--
2.5.5

View File

@@ -0,0 +1,73 @@
From 79a00446364852a51c58835b2c778a8be99ff911 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Thu, 7 Apr 2016 23:01:29 +0200
Subject: [PATCH] waylandcompositor: remove property
useHardwareIntegrationExtension for non GL (GLES) builds
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
/home/superandy/tmp/oe-core-glibc/work/cortexa7t2hf-neon-vfpv4-angstrom-linux-gnueabi/greenisland/0.7.90+gitAUTOINC+c39760ad84-r0/git/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp:817:15: error: 'const class QWaylandCompositorPrivate' has no member named 'use_hw_integration_extension'
return d->use_hw_integration_extension;
^
/home/superandy/tmp/oe-core-glibc/work/cortexa7t2hf-neon-vfpv4-angstrom-linux-gnueabi/greenisland/0.7.90+gitAUTOINC+c39760ad84-r0/git/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp: In member function 'void QWaylandCompositor::setUseHardwareIntegrationExtension(bool)':
/home/superandy/tmp/oe-core-glibc/work/cortexa7t2hf-neon-vfpv4-angstrom-linux-gnueabi/greenisland/0.7.90+gitAUTOINC+c39760ad84-r0/git/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp:823:19: error: 'class QWaylandCompositorPrivate' has no member named 'use_hw_integration_extension'
if (use == d->use_hw_integration_extension)
^
/home/superandy/tmp/oe-core-glibc/work/cortexa7t2hf-neon-vfpv4-angstrom-linux-gnueabi/greenisland/0.7.90+gitAUTOINC+c39760ad84-r0/git/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp:829:8: error: 'class QWaylandCompositorPrivate' has no member named 'use_hw_integration_extension'
d->use_hw_integration_extension = use;
^
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
src/waylandcompositor/compositor_api/qwaylandcompositor.cpp | 2 ++
src/waylandcompositor/compositor_api/qwaylandcompositor.h | 4 ++++
2 files changed, 6 insertions(+)
diff --git a/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp b/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp
index ab789c3..dee85f7 100644
--- a/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp
+++ b/src/waylandcompositor/compositor_api/qwaylandcompositor.cpp
@@ -794,6 +794,7 @@ QWaylandInputDevice *QWaylandCompositor::inputDeviceFor(QInputEvent *inputEvent)
return dev;
}
+#ifdef QT_COMPOSITOR_WAYLAND_GL
/*!
* \qmlproperty bool QtWaylandCompositor::WaylandCompositor::useHardwareIntegrationExtension
*
@@ -829,5 +830,6 @@ void QWaylandCompositor::setUseHardwareIntegrationExtension(bool use)
d->use_hw_integration_extension = use;
useHardwareIntegrationExtensionChanged();
}
+#endif
QT_END_NAMESPACE
diff --git a/src/waylandcompositor/compositor_api/qwaylandcompositor.h b/src/waylandcompositor/compositor_api/qwaylandcompositor.h
index 5eae20e..3d305fb 100644
--- a/src/waylandcompositor/compositor_api/qwaylandcompositor.h
+++ b/src/waylandcompositor/compositor_api/qwaylandcompositor.h
@@ -74,7 +74,9 @@ class Q_WAYLAND_COMPOSITOR_EXPORT QWaylandCompositor : public QWaylandObject
Q_PROPERTY(QByteArray socketName READ socketName WRITE setSocketName)
Q_PROPERTY(bool retainedSelection READ retainedSelectionEnabled WRITE setRetainedSelectionEnabled)
Q_PROPERTY(QWaylandOutput *defaultOutput READ defaultOutput WRITE setDefaultOutput NOTIFY defaultOutputChanged)
+#ifdef QT_COMPOSITOR_WAYLAND_GL
Q_PROPERTY(bool useHardwareIntegrationExtension READ useHardwareIntegrationExtension WRITE setUseHardwareIntegrationExtension NOTIFY useHardwareIntegrationExtensionChanged)
+#endif
Q_PROPERTY(QWaylandInputDevice *defaultInputDevice READ defaultInputDevice NOTIFY defaultInputDeviceChanged)
public:
@@ -115,8 +117,10 @@ public:
QWaylandInputDevice *inputDeviceFor(QInputEvent *inputEvent);
+#ifdef QT_COMPOSITOR_WAYLAND_GL
bool useHardwareIntegrationExtension() const;
void setUseHardwareIntegrationExtension(bool use);
+#endif
public Q_SLOTS:
void processWaylandEvents();
--
2.5.5

View File

@@ -0,0 +1,30 @@
From a9c1fc97b0b8e0586b799955e8909937e88e81c1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 8 Apr 2016 00:45:05 +0200
Subject: [PATCH] hardwareintegration: glx compositor does not build in GLES
environments
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
src/hardwareintegration/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hardwareintegration/CMakeLists.txt b/src/hardwareintegration/CMakeLists.txt
index a10419c..6de68e8 100644
--- a/src/hardwareintegration/CMakeLists.txt
+++ b/src/hardwareintegration/CMakeLists.txt
@@ -9,7 +9,7 @@ if(X11_FOUND AND X11_Xcomposite_FOUND)
if(EGL_FOUND)
add_subdirectory(xcomposite-egl)
endif()
- if(OPENGL_FOUND)
+ if(${Qt5Gui_OPENGL_IMPLEMENTATION} STREQUAL "GL")
add_subdirectory(xcomposite-glx)
endif()
endif()
--
2.5.5

View File

@@ -1,45 +0,0 @@
SUMMARY = "Support library to make Qt-based Wayland compositors development easier"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=4fbd65380cdd255951079008b364516c"
inherit hawaii cmake-lib pythonnative pkgconfig
DEPENDS += " \
${@base_contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
wayland \
qtwayland \
libkscreen \
virtual/egl \
"
SRC_URI = " \
git://github.com/greenisland/${BPN}.git;protocol=git;branch=master \
"
SRCREV = "9c3ce026da4249346c4e85ff9215eab66522444d"
PV = "0.6.0"
S = "${WORKDIR}/git"
# make it find qtwaylandscanner
EXTRA_OECMAKE += " \
-DCMAKE_PROGRAM_PATH=${STAGING_DIR_NATIVE}/$bindir/qt5 \
"
PACKAGECONFIG ??= " \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "xwayland", "",d)} \
"
PACKAGECONFIG[xawayland] = "-DENABLE_XWAYLAND=ON,-DENABLE_XWAYLAND=OFF,libxcb"
# cross libs / headers
CMAKE_ALIGN_SYSROOT[1] = "GreenIsland, -S${libdir}/lib, -S${STAGING_LIBDIR}/lib"
CMAKE_ALIGN_SYSROOT[2] = "GreenIsland, -S${includedir}, -S${STAGING_INCDIR}"
FILES_${PN} += " \
${OE_QMAKE_PATH_QML}/GreenIsland \
${libdir}/plugins/greenisland \
"
FILES_${PN}-dbg += " \
${OE_QMAKE_PATH_QML}/GreenIsland/.debug \
${libdir}/plugins/greenisland/.debug \
"
FILES_${PN}-dev += "${libdir}/cmake"