summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'kde-plasma/kwin')
-rw-r--r--kde-plasma/kwin/Manifest1
-rw-r--r--kde-plasma/kwin/files/kwin-5.3.1-gles2.patch47
-rw-r--r--kde-plasma/kwin/kwin-5.3.2-r1.ebuild87
-rw-r--r--kde-plasma/kwin/metadata.xml8
4 files changed, 143 insertions, 0 deletions
diff --git a/kde-plasma/kwin/Manifest b/kde-plasma/kwin/Manifest
new file mode 100644
index 000000000000..18077e929554
--- /dev/null
+++ b/kde-plasma/kwin/Manifest
@@ -0,0 +1 @@
+DIST kwin-5.3.2.tar.xz 3828548 SHA256 7f77420455a1bb5887f586aa2a31eaeab919240757f47b1ca1c0ff849571575c SHA512 e347de68a47c78e691e0f17afe079a64f05854c1b7539483a7d5bf91de4c08d7851096df6a9252fbaa771231a7b824d4feb38a111cd355cd80c926c2972ff5b4 WHIRLPOOL 002d669907976120ee19a4d4eaeccd9e58fcb4e5b9ce6c101294bf2d39b49d6026363d37764650feba80478c674fa0ff3221a05ccf79d5cf8e924235a00e480c
diff --git a/kde-plasma/kwin/files/kwin-5.3.1-gles2.patch b/kde-plasma/kwin/files/kwin-5.3.1-gles2.patch
new file mode 100644
index 000000000000..cf4d859fe4ef
--- /dev/null
+++ b/kde-plasma/kwin/files/kwin-5.3.1-gles2.patch
@@ -0,0 +1,47 @@
+commit 713c6b25dce2fc60184ddc7b618b0b1195ab9870
+Author: Martin Gräßlin <mgraesslin@kde.org>
+Date: Fri May 8 08:53:34 2015 +0200
+
+ [kwinglutils] Init glVersion on gles
+
+ The glVersion was not set at all for gles causing any code doing a
+ hasGLVersion check to fail which means that the compositor doesn't
+ start at all, because it has a hasGLVersion(2, 0) check.
+
+ The complete ifdef is no longer needed. The used additional glGetStringi
+ is also available in gles 3.0, thus epoxy can handle it quite well
+ without a need for ifdef.
+
+ Unfortunately the version string can be "strange" on GLES. On desktop
+ it looks like: "3.0 some driver foo", on GLES it could also be:
+ "OpenGL ES 3.0 some driver bar". Thus to make the logic work we are
+ first removing any leading "OpenGL ES " and hope that then the version
+ is encoded just like on GL.
+
+diff --git a/libkwineffects/kwinglutils.cpp b/libkwineffects/kwinglutils.cpp
+index 8830c44..fd2e217 100644
+--- a/libkwineffects/kwinglutils.cpp
++++ b/libkwineffects/kwinglutils.cpp
+@@ -106,11 +106,12 @@ void initGL(OpenGLPlatformInterface platformInterface)
+ {
+ // Get OpenGL version
+ QString glversionstring = QString::fromUtf8((const char*)glGetString(GL_VERSION));
++ if (glversionstring.startsWith(QLatin1String("OpenGL ES "))) {
++ glversionstring = glversionstring.mid(10);
++ }
+ QStringList glversioninfo = glversionstring.left(glversionstring.indexOf(QStringLiteral(" "))).split(QStringLiteral("."));
+ while (glversioninfo.count() < 3)
+ glversioninfo << QStringLiteral("0");
+-
+-#ifndef KWIN_HAVE_OPENGLES
+ glVersion = MAKE_GL_VERSION(glversioninfo[0].toInt(), glversioninfo[1].toInt(), glversioninfo[2].toInt());
+
+ // Get list of supported OpenGL extensions
+@@ -123,7 +124,6 @@ void initGL(OpenGLPlatformInterface platformInterface)
+ glExtensions << name;
+ }
+ } else
+-#endif
+ glExtensions = QByteArray((const char*)glGetString(GL_EXTENSIONS)).split(' ');
+
+ // handle OpenGL extensions functions
diff --git a/kde-plasma/kwin/kwin-5.3.2-r1.ebuild b/kde-plasma/kwin/kwin-5.3.2-r1.ebuild
new file mode 100644
index 000000000000..bc5624c83cb4
--- /dev/null
+++ b/kde-plasma/kwin/kwin-5.3.2-r1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+KDE_HANDBOOK="true"
+KDE_TEST="true"
+VIRTUALX_REQUIRED="test"
+inherit kde5
+
+DESCRIPTION="KDE window manager"
+LICENSE="GPL-2+"
+KEYWORDS="~amd64"
+IUSE="gles2 wayland"
+
+COMMON_DEPEND="
+ $(add_frameworks_dep kactivities)
+ $(add_frameworks_dep kauth)
+ $(add_frameworks_dep kcmutils)
+ $(add_frameworks_dep kcompletion)
+ $(add_frameworks_dep kconfig)
+ $(add_frameworks_dep kconfigwidgets)
+ $(add_frameworks_dep kcoreaddons)
+ $(add_frameworks_dep kcrash)
+ $(add_frameworks_dep kdeclarative)
+ $(add_frameworks_dep kglobalaccel)
+ $(add_frameworks_dep ki18n)
+ $(add_frameworks_dep kiconthemes)
+ $(add_frameworks_dep kinit)
+ $(add_frameworks_dep kio)
+ $(add_frameworks_dep knewstuff)
+ $(add_frameworks_dep knotifications)
+ $(add_frameworks_dep kservice)
+ $(add_frameworks_dep kwidgetsaddons)
+ $(add_frameworks_dep kwindowsystem X)
+ $(add_frameworks_dep kxmlgui)
+ $(add_frameworks_dep plasma)
+ $(add_plasma_dep kdecoration)
+ dev-qt/qtdbus:5
+ dev-qt/qtdeclarative:5
+ dev-qt/qtgui:5[gles2=,opengl(+)]
+ dev-qt/qtmultimedia:5[qml]
+ dev-qt/qtscript:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras
+ media-libs/libepoxy
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ >=x11-libs/libxcb-1.10
+ x11-libs/xcb-util-cursor
+ x11-libs/xcb-util-image
+ x11-libs/xcb-util-keysyms
+ wayland? (
+ $(add_plasma_dep kwayland)
+ >=dev-libs/libinput-0.10
+ >=dev-libs/wayland-1.2
+ virtual/libudev:=
+ >=x11-libs/libxkbcommon-0.4.1
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ $(add_plasma_dep kde-cli-tools)
+ !kde-base/kwin
+ !kde-base/systemsettings
+"
+DEPEND="${COMMON_DEPEND}
+ dev-qt/designer:5
+ dev-qt/qtconcurrent:5
+ media-libs/mesa[egl,gles2?]
+ x11-proto/xproto
+ test? ( x11-libs/xcb-util-wm )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-5.3.1-gles2.patch" )
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake-utils_use_find_package wayland)
+ $(cmake-utils_use_find_package wayland KF5Wayland)
+ $(cmake-utils_use_find_package wayland Libinput)
+ $(cmake-utils_use_find_package wayland UDev)
+ )
+
+ kde5_src_configure
+}
diff --git a/kde-plasma/kwin/metadata.xml b/kde-plasma/kwin/metadata.xml
new file mode 100644
index 000000000000..9a1ee920379c
--- /dev/null
+++ b/kde-plasma/kwin/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>kde</herd>
+ <use>
+ <flag name="gles2">Use OpenGL ES 2 instead of full GL</flag>
+ </use>
+</pkgmetadata>