diff options
Diffstat (limited to 'user/kwin')
-rw-r--r-- | user/kwin/APKBUILD | 17 | ||||
-rw-r--r-- | user/kwin/kwin-5.8-respect-uint.patch | 29 | ||||
-rw-r--r-- | user/kwin/kwin-5.8-stop-depending-on-qt5-internals.patch | 479 | ||||
-rw-r--r-- | user/kwin/kwin-backport-gallium-version-detection.patch | 191 |
4 files changed, 6 insertions, 710 deletions
diff --git a/user/kwin/APKBUILD b/user/kwin/APKBUILD index cc9a1cf80..41ec2ecce 100644 --- a/user/kwin/APKBUILD +++ b/user/kwin/APKBUILD @@ -1,8 +1,8 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kwin -pkgver=5.8.7 -pkgrel=1 +pkgver=5.12.2 +pkgrel=0 pkgdesc="Modern, stylish window manager (requires OpenGL)" url="https://www.kde.org/" arch="all" @@ -18,14 +18,12 @@ depends_dev="qt5-qtbase-dev qt5-qtdeclarative-dev qt5-qtscript-dev kcrash-dev kdecoration-dev kscreenlocker-dev wayland-dev mesa-dev libepoxy-dev eudev-dev libdrm-dev libx11-dev libxcb-dev xcb-util-cursor-dev xcb-util-image-dev xcb-util-wm-dev libxkbcommon-dev libinput-dev - freetype-dev fontconfig-dev qt5-qtmultimedia-dev breeze-dev" + freetype-dev fontconfig-dev qt5-qtmultimedia-dev breeze-dev + qt5-qtsensors-dev" makedepends="$depends_dev cmake extra-cmake-modules qt5-qttools-dev python3" install="" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -source="http://download.kde.org/stable/plasma/$pkgver/kwin-$pkgver.tar.xz - kwin-5.8-stop-depending-on-qt5-internals.patch - kwin-5.8-respect-uint.patch - kwin-backport-gallium-version-detection.patch" +source="http://download.kde.org/stable/plasma/$pkgver/kwin-$pkgver.tar.xz" builddir="$srcdir/kwin-$pkgver" build() { @@ -54,7 +52,4 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f1f3b01f85378e663385887add8dd5b2f40076cfc57f7cf638e83e2424fedb576b4b431b14151422ea43c535677131e61b8d9e7fe60e5a5f4ea06520c895bd1e kwin-5.8.7.tar.xz -7186dd317204612ba26f11315238f527949424d08f32dc0dab8c1391d642529433cfd7091dc2a057fe849976dee70eed7aab3c8be55b20b8c0655da57976b48e kwin-5.8-stop-depending-on-qt5-internals.patch -aaefa9951ec1475adf00784b202d0ca9f92a60634a869387432411e8b7928d9f10b46968998a4ada47228834e8c7f6c9bf1c8dd988673b22619e8e1295e086c7 kwin-5.8-respect-uint.patch -9c8cdb884defc3e16444b41de0c53e10774cef6d8d0a461376ba64cc3457dfe19579e13ce45df721e32643dddf518df7d787ee36bcba840ef1bf2b7009d9b1ab kwin-backport-gallium-version-detection.patch" +sha512sums="8df904f86c50cc9a578122b88a5c768652c09564f6ae048ae6989a55c0e3e886da2f3080b9601885c27ffa3313a7fcc3389c63e61a7125ceb650a8aaa2af12c4 kwin-5.12.2.tar.xz" diff --git a/user/kwin/kwin-5.8-respect-uint.patch b/user/kwin/kwin-5.8-respect-uint.patch deleted file mode 100644 index 839d84d2e..000000000 --- a/user/kwin/kwin-5.8-respect-uint.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 404f2675f8ca5496a5e528825078b1ce27669cd7 Mon Sep 17 00:00:00 2001 -From: Marco Martin <notmart@gmail.com> -Date: Mon, 20 Mar 2017 17:01:39 +0100 -Subject: fix compilation on old gcc - -same as https://phabricator.kde.org/D5083, -gcc 4.8.5 (opensuse leap) fails building modeltest with -CMakeFiles/testHistoryModel.dir/modeltest.cpp.o: In function `ModelTest::data()': -modeltest.cpp:(.text+0x5a57): undefined reference to `bool QTest::qCompare<int, unsigned int>(int const&, unsigned int const&, char const*, char const*, char const*, int)' ---- - kcmkwin/kwincompositing/test/modeltest.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/kcmkwin/kwincompositing/test/modeltest.cpp b/kcmkwin/kwincompositing/test/modeltest.cpp -index d356b26..c077d9b 100644 ---- a/kcmkwin/kwincompositing/test/modeltest.cpp -+++ b/kcmkwin/kwincompositing/test/modeltest.cpp -@@ -453,7 +453,7 @@ void ModelTest::data() - // Check that the alignment is one we know about - QVariant textAlignmentVariant = model->data ( model->index ( 0, 0 ), Qt::TextAlignmentRole ); - if ( textAlignmentVariant.isValid() ) { -- int alignment = textAlignmentVariant.toInt(); -+ unsigned int alignment = textAlignmentVariant.toUInt(); - QCOMPARE( alignment, ( alignment & ( Qt::AlignHorizontal_Mask | Qt::AlignVertical_Mask ) ) ); - } - --- -cgit v0.11.2 - diff --git a/user/kwin/kwin-5.8-stop-depending-on-qt5-internals.patch b/user/kwin/kwin-5.8-stop-depending-on-qt5-internals.patch deleted file mode 100644 index 7b77e9c57..000000000 --- a/user/kwin/kwin-5.8-stop-depending-on-qt5-internals.patch +++ /dev/null @@ -1,479 +0,0 @@ -From 052fa2e4ee329810f62c29e546254fb45bf8a375 Mon Sep 17 00:00:00 2001 -From: Takahiro Hashimoto <kenya888@gmail.com> -Date: Thu, 27 Oct 2016 09:43:21 +0900 -Subject: [PATCH] [plugins/qpa] support use of modularized qtplatformsupport - from Qt 5.8 - -REVIEW: 129268 ---- - CMakeLists.txt | 9 +- - cmake/modules/FindQt5EventDispatcherSupport.cmake | 122 ++++++++++++++++++++++ - cmake/modules/FindQt5FontDatabaseSupport.cmake | 122 ++++++++++++++++++++++ - cmake/modules/FindQt5ThemeSupport.cmake | 122 ++++++++++++++++++++++ - plugins/qpa/CMakeLists.txt | 15 ++- - plugins/qpa/integration.cpp | 7 ++ - 6 files changed, 394 insertions(+), 3 deletions(-) - create mode 100644 cmake/modules/FindQt5EventDispatcherSupport.cmake - create mode 100644 cmake/modules/FindQt5FontDatabaseSupport.cmake - create mode 100644 cmake/modules/FindQt5ThemeSupport.cmake - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3d2883fea..bf90ab0f1 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -241,7 +241,14 @@ set_package_properties(X11_XCB PROPERTIES - TYPE OPTIONAL) - - # dependencies for QPA plugin --find_package(Qt5PlatformSupport REQUIRED) -+if(Qt5Core_VERSION VERSION_LESS "5.8.0") -+ find_package(Qt5PlatformSupport REQUIRED) -+else() -+ find_package(Qt5FontDatabaseSupport REQUIRED) -+ find_package(Qt5ThemeSupport REQUIRED) -+ find_package(Qt5EventDispatcherSupport REQUIRED) -+endif() -+ - find_package(Freetype REQUIRED) - set_package_properties(Freetype PROPERTIES DESCRIPTION "A font rendering engine" - URL "http://www.freetype.org" -diff --git a/cmake/modules/FindQt5EventDispatcherSupport.cmake b/cmake/modules/FindQt5EventDispatcherSupport.cmake -new file mode 100644 -index 000000000..948efe0d3 ---- /dev/null -+++ b/cmake/modules/FindQt5EventDispatcherSupport.cmake -@@ -0,0 +1,122 @@ -+#.rst: -+# FindQt5EventDispatcherSupport -+# ------- -+# -+# Try to find Qt5EventDispatcherSupport on a Unix system. -+# -+# This will define the following variables: -+# -+# ``Qt5EventDispatcherSupport_FOUND`` -+# True if (the requested version of) Qt5EventDispatcherSupport is available -+# ``Qt5EventDispatcherSupport_VERSION`` -+# The version of Qt5EventDispatcherSupport -+# ``Qt5EventDispatcherSupport_LIBRARIES`` -+# This can be passed to target_link_libraries() instead of the ``Qt5EventDispatcherSupport::Qt5EventDispatcherSupport`` -+# target -+# ``Qt5EventDispatcherSupport_INCLUDE_DIRS`` -+# This should be passed to target_include_directories() if the target is not -+# used for linking -+# ``Qt5EventDispatcherSupport_DEFINITIONS`` -+# This should be passed to target_compile_options() if the target is not -+# used for linking -+# -+# If ``Qt5EventDispatcherSupport_FOUND`` is TRUE, it will also define the following imported target: -+# -+# ``Qt5EventDispatcherSupport::Qt5EventDispatcherSupport`` -+# The Qt5EventDispatcherSupport library -+# -+# In general we recommend using the imported target, as it is easier to use. -+# Bear in mind, however, that if the target is in the link interface of an -+# exported library, it must be made available by the package config file. -+ -+#============================================================================= -+# Copyright 2014 Alex Merry <alex.merry@kde.org> -+# Copyright 2014 Martin Gräßlin <mgraesslin@kde.org> -+# Copyright 2016 Takahiro Hashimoto <kenya888@gmail.com> -+# -+# Redistribution and use in source and binary forms, with or without -+# modification, are permitted provided that the following conditions -+# are met: -+# -+# 1. Redistributions of source code must retain the copyright -+# notice, this list of conditions and the following disclaimer. -+# 2. Redistributions in binary form must reproduce the copyright -+# notice, this list of conditions and the following disclaimer in the -+# documentation and/or other materials provided with the distribution. -+# 3. The name of the author may not be used to endorse or promote products -+# derived from this software without specific prior written permission. -+# -+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+#============================================================================= -+ -+if(CMAKE_VERSION VERSION_LESS 2.8.12) -+ message(FATAL_ERROR "CMake 2.8.12 is required by FindQt5EventDispatcherSupport.cmake") -+endif() -+if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 2.8.12) -+ message(AUTHOR_WARNING "Your project should require at least CMake 2.8.12 to use FindQt5EventDispatcherSupport.cmake") -+endif() -+ -+# Use pkg-config to get the directories and then use these values -+# in the FIND_PATH() and FIND_LIBRARY() calls -+find_package(PkgConfig) -+pkg_check_modules(PKG_Qt5EventDispatcherSupport QUIET Qt5Gui) -+ -+set(Qt5EventDispatcherSupport_DEFINITIONS ${PKG_Qt5EventDispatcherSupport_CFLAGS_OTHER}) -+set(Qt5EventDispatcherSupport_VERSION ${PKG_Qt5EventDispatcherSupport_VERSION}) -+ -+find_path(Qt5EventDispatcherSupport_INCLUDE_DIR -+ NAMES -+ QtEventDispatcherSupport/private/qunixeventdispatcher_qpa_p.h -+ HINTS -+ ${PKG_Qt5EventDispatcherSupport_INCLUDEDIR}/QtEventDispatcherSupport/${PKG_Qt5EventDispatcherSupport_VERSION}/ -+) -+find_library(Qt5EventDispatcherSupport_LIBRARY -+ NAMES -+ Qt5EventDispatcherSupport -+ HINTS -+ ${PKG_Qt5EventDispatcherSupport_LIBRARY_DIRS} -+) -+ -+include(FindPackageHandleStandardArgs) -+find_package_handle_standard_args(Qt5EventDispatcherSupport -+ FOUND_VAR -+ Qt5EventDispatcherSupport_FOUND -+ REQUIRED_VARS -+ Qt5EventDispatcherSupport_LIBRARY -+ Qt5EventDispatcherSupport_INCLUDE_DIR -+ VERSION_VAR -+ Qt5EventDispatcherSupport_VERSION -+) -+ -+if(Qt5EventDispatcherSupport_FOUND AND NOT TARGET Qt5EventDispatcherSupport::Qt5EventDispatcherSupport) -+ add_library(Qt5EventDispatcherSupport::Qt5EventDispatcherSupport UNKNOWN IMPORTED) -+ set_target_properties(Qt5EventDispatcherSupport::Qt5EventDispatcherSupport PROPERTIES -+ IMPORTED_LOCATION "${Qt5EventDispatcherSupport_LIBRARY}" -+ INTERFACE_COMPILE_OPTIONS "${Qt5EventDispatcherSupport_DEFINITIONS}" -+ INTERFACE_INCLUDE_DIRECTORIES "${Qt5EventDispatcherSupport_INCLUDE_DIR}" -+ ) -+endif() -+ -+mark_as_advanced(Qt5EventDispatcherSupport_LIBRARY Qt5EventDispatcherSupport_INCLUDE_DIR) -+ -+# compatibility variables -+set(Qt5EventDispatcherSupport_LIBRARIES ${Qt5EventDispatcherSupport_LIBRARY}) -+set(Qt5EventDispatcherSupport_INCLUDE_DIRS ${Qt5EventDispatcherSupport_INCLUDE_DIR}) -+set(Qt5EventDispatcherSupport_VERSION_STRING ${Qt5EventDispatcherSupport_VERSION}) -+ -+ -+include(FeatureSummary) -+set_package_properties(Qt5EventDispatcherSupport PROPERTIES -+ URL "http://www.qt.io" -+ DESCRIPTION "Qt EventDispatcherSupport module." -+) -+ -diff --git a/cmake/modules/FindQt5FontDatabaseSupport.cmake b/cmake/modules/FindQt5FontDatabaseSupport.cmake -new file mode 100644 -index 000000000..d3e66cd30 ---- /dev/null -+++ b/cmake/modules/FindQt5FontDatabaseSupport.cmake -@@ -0,0 +1,122 @@ -+#.rst: -+# FindQt5FontDatabaseSupport -+# ------- -+# -+# Try to find Qt5FontDatabaseSupport on a Unix system. -+# -+# This will define the following variables: -+# -+# ``Qt5FontDatabaseSupport_FOUND`` -+# True if (the requested version of) Qt5FontDatabaseSupport is available -+# ``Qt5FontDatabaseSupport_VERSION`` -+# The version of Qt5FontDatabaseSupport -+# ``Qt5FontDatabaseSupport_LIBRARIES`` -+# This can be passed to target_link_libraries() instead of the ``Qt5FontDatabaseSupport::Qt5FontDatabaseSupport`` -+# target -+# ``Qt5FontDatabaseSupport_INCLUDE_DIRS`` -+# This should be passed to target_include_directories() if the target is not -+# used for linking -+# ``Qt5FontDatabaseSupport_DEFINITIONS`` -+# This should be passed to target_compile_options() if the target is not -+# used for linking -+# -+# If ``Qt5FontDatabaseSupport_FOUND`` is TRUE, it will also define the following imported target: -+# -+# ``Qt5FontDatabaseSupport::Qt5FontDatabaseSupport`` -+# The Qt5FontDatabaseSupport library -+# -+# In general we recommend using the imported target, as it is easier to use. -+# Bear in mind, however, that if the target is in the link interface of an -+# exported library, it must be made available by the package config file. -+ -+#============================================================================= -+# Copyright 2014 Alex Merry <alex.merry@kde.org> -+# Copyright 2014 Martin Gräßlin <mgraesslin@kde.org> -+# Copyright 2016 Takahiro Hashimoto <kenya888@gmail.com> -+# -+# Redistribution and use in source and binary forms, with or without -+# modification, are permitted provided that the following conditions -+# are met: -+# -+# 1. Redistributions of source code must retain the copyright -+# notice, this list of conditions and the following disclaimer. -+# 2. Redistributions in binary form must reproduce the copyright -+# notice, this list of conditions and the following disclaimer in the -+# documentation and/or other materials provided with the distribution. -+# 3. The name of the author may not be used to endorse or promote products -+# derived from this software without specific prior written permission. -+# -+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+#============================================================================= -+ -+if(CMAKE_VERSION VERSION_LESS 2.8.12) -+ message(FATAL_ERROR "CMake 2.8.12 is required by FindQt5FontDatabaseSupport.cmake") -+endif() -+if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 2.8.12) -+ message(AUTHOR_WARNING "Your project should require at least CMake 2.8.12 to use FindQt5FontDatabaseSupport.cmake") -+endif() -+ -+# Use pkg-config to get the directories and then use these values -+# in the FIND_PATH() and FIND_LIBRARY() calls -+find_package(PkgConfig) -+pkg_check_modules(PKG_Qt5FontDatabaseSupport QUIET Qt5Gui) -+ -+set(Qt5FontDatabaseSupport_DEFINITIONS ${PKG_Qt5FontDatabaseSupport_CFLAGS_OTHER}) -+set(Qt5FontDatabaseSupport_VERSION ${PKG_Qt5FontDatabaseSupport_VERSION}) -+ -+find_path(Qt5FontDatabaseSupport_INCLUDE_DIR -+ NAMES -+ QtFontDatabaseSupport/private/qfontconfigdatabase_p.h -+ HINTS -+ ${PKG_Qt5FontDatabaseSupport_INCLUDEDIR}/QtFontDatabaseSupport/${PKG_Qt5FontDatabaseSupport_VERSION}/ -+) -+find_library(Qt5FontDatabaseSupport_LIBRARY -+ NAMES -+ Qt5FontDatabaseSupport -+ HINTS -+ ${PKG_Qt5FontDatabaseSupport_LIBRARY_DIRS} -+) -+ -+include(FindPackageHandleStandardArgs) -+find_package_handle_standard_args(Qt5FontDatabaseSupport -+ FOUND_VAR -+ Qt5FontDatabaseSupport_FOUND -+ REQUIRED_VARS -+ Qt5FontDatabaseSupport_LIBRARY -+ Qt5FontDatabaseSupport_INCLUDE_DIR -+ VERSION_VAR -+ Qt5FontDatabaseSupport_VERSION -+) -+ -+if(Qt5FontDatabaseSupport_FOUND AND NOT TARGET Qt5FontDatabaseSupport::Qt5FontDatabaseSupport) -+ add_library(Qt5FontDatabaseSupport::Qt5FontDatabaseSupport UNKNOWN IMPORTED) -+ set_target_properties(Qt5FontDatabaseSupport::Qt5FontDatabaseSupport PROPERTIES -+ IMPORTED_LOCATION "${Qt5FontDatabaseSupport_LIBRARY}" -+ INTERFACE_COMPILE_OPTIONS "${Qt5FontDatabaseSupport_DEFINITIONS}" -+ INTERFACE_INCLUDE_DIRECTORIES "${Qt5FontDatabaseSupport_INCLUDE_DIR}" -+ ) -+endif() -+ -+mark_as_advanced(Qt5FontDatabaseSupport_LIBRARY Qt5FontDatabaseSupport_INCLUDE_DIR) -+ -+# compatibility variables -+set(Qt5FontDatabaseSupport_LIBRARIES ${Qt5FontDatabaseSupport_LIBRARY}) -+set(Qt5FontDatabaseSupport_INCLUDE_DIRS ${Qt5FontDatabaseSupport_INCLUDE_DIR}) -+set(Qt5FontDatabaseSupport_VERSION_STRING ${Qt5FontDatabaseSupport_VERSION}) -+ -+ -+include(FeatureSummary) -+set_package_properties(Qt5FontDatabaseSupport PROPERTIES -+ URL "http://www.qt.io" -+ DESCRIPTION "Qt FontDatabaseSupport module." -+) -+ -diff --git a/cmake/modules/FindQt5ThemeSupport.cmake b/cmake/modules/FindQt5ThemeSupport.cmake -new file mode 100644 -index 000000000..5588a7666 ---- /dev/null -+++ b/cmake/modules/FindQt5ThemeSupport.cmake -@@ -0,0 +1,122 @@ -+#.rst: -+# FindQt5ThemeSupport -+# ------- -+# -+# Try to find Qt5ThemeSupport on a Unix system. -+# -+# This will define the following variables: -+# -+# ``Qt5ThemeSupport_FOUND`` -+# True if (the requested version of) Qt5ThemeSupport is available -+# ``Qt5ThemeSupport_VERSION`` -+# The version of Qt5ThemeSupport -+# ``Qt5ThemeSupport_LIBRARIES`` -+# This can be passed to target_link_libraries() instead of the ``Qt5ThemeSupport::Qt5ThemeSupport`` -+# target -+# ``Qt5ThemeSupport_INCLUDE_DIRS`` -+# This should be passed to target_include_directories() if the target is not -+# used for linking -+# ``Qt5ThemeSupport_DEFINITIONS`` -+# This should be passed to target_compile_options() if the target is not -+# used for linking -+# -+# If ``Qt5ThemeSupport_FOUND`` is TRUE, it will also define the following imported target: -+# -+# ``Qt5ThemeSupport::Qt5ThemeSupport`` -+# The Qt5ThemeSupport library -+# -+# In general we recommend using the imported target, as it is easier to use. -+# Bear in mind, however, that if the target is in the link interface of an -+# exported library, it must be made available by the package config file. -+ -+#============================================================================= -+# Copyright 2014 Alex Merry <alex.merry@kde.org> -+# Copyright 2014 Martin Gräßlin <mgraesslin@kde.org> -+# Copyright 2016 Takahiro Hashimoto <kenya888@gmail.com> -+# -+# Redistribution and use in source and binary forms, with or without -+# modification, are permitted provided that the following conditions -+# are met: -+# -+# 1. Redistributions of source code must retain the copyright -+# notice, this list of conditions and the following disclaimer. -+# 2. Redistributions in binary form must reproduce the copyright -+# notice, this list of conditions and the following disclaimer in the -+# documentation and/or other materials provided with the distribution. -+# 3. The name of the author may not be used to endorse or promote products -+# derived from this software without specific prior written permission. -+# -+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+#============================================================================= -+ -+if(CMAKE_VERSION VERSION_LESS 2.8.12) -+ message(FATAL_ERROR "CMake 2.8.12 is required by FindQt5ThemeSupport.cmake") -+endif() -+if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 2.8.12) -+ message(AUTHOR_WARNING "Your project should require at least CMake 2.8.12 to use FindQt5ThemeSupport.cmake") -+endif() -+ -+# Use pkg-config to get the directories and then use these values -+# in the FIND_PATH() and FIND_LIBRARY() calls -+find_package(PkgConfig) -+pkg_check_modules(PKG_Qt5ThemeSupport QUIET Qt5Gui) -+ -+set(Qt5ThemeSupport_DEFINITIONS ${PKG_Qt5ThemeSupport_CFLAGS_OTHER}) -+set(Qt5ThemeSupport_VERSION ${PKG_Qt5ThemeSupport_VERSION}) -+ -+find_path(Qt5ThemeSupport_INCLUDE_DIR -+ NAMES -+ QtThemeSupport/private/qgenericunixthemes_p.h -+ HINTS -+ ${PKG_Qt5ThemeSupport_INCLUDEDIR}/QtThemeSupport/${PKG_Qt5ThemeSupport_VERSION}/ -+) -+find_library(Qt5ThemeSupport_LIBRARY -+ NAMES -+ Qt5ThemeSupport -+ HINTS -+ ${PKG_Qt5ThemeSupport_LIBRARY_DIRS} -+) -+ -+include(FindPackageHandleStandardArgs) -+find_package_handle_standard_args(Qt5ThemeSupport -+ FOUND_VAR -+ Qt5ThemeSupport_FOUND -+ REQUIRED_VARS -+ Qt5ThemeSupport_LIBRARY -+ Qt5ThemeSupport_INCLUDE_DIR -+ VERSION_VAR -+ Qt5ThemeSupport_VERSION -+) -+ -+if(Qt5ThemeSupport_FOUND AND NOT TARGET Qt5ThemeSupport::Qt5ThemeSupport) -+ add_library(Qt5ThemeSupport::Qt5ThemeSupport UNKNOWN IMPORTED) -+ set_target_properties(Qt5ThemeSupport::Qt5ThemeSupport PROPERTIES -+ IMPORTED_LOCATION "${Qt5ThemeSupport_LIBRARY}" -+ INTERFACE_COMPILE_OPTIONS "${Qt5ThemeSupport_DEFINITIONS}" -+ INTERFACE_INCLUDE_DIRECTORIES "${Qt5ThemeSupport_INCLUDE_DIR}" -+ ) -+endif() -+ -+mark_as_advanced(Qt5ThemeSupport_LIBRARY Qt5ThemeSupport_INCLUDE_DIR) -+ -+# compatibility variables -+set(Qt5ThemeSupport_LIBRARIES ${Qt5ThemeSupport_LIBRARY}) -+set(Qt5ThemeSupport_INCLUDE_DIRS ${Qt5ThemeSupport_INCLUDE_DIR}) -+set(Qt5ThemeSupport_VERSION_STRING ${Qt5ThemeSupport_VERSION}) -+ -+ -+include(FeatureSummary) -+set_package_properties(Qt5ThemeSupport PROPERTIES -+ URL "http://www.qt.io" -+ DESCRIPTION "Qt ThemeSupport module." -+) -+ -diff --git a/plugins/qpa/CMakeLists.txt b/plugins/qpa/CMakeLists.txt -index 1a91a0ff1..4094ae7d2 100644 ---- a/plugins/qpa/CMakeLists.txt -+++ b/plugins/qpa/CMakeLists.txt -@@ -1,6 +1,5 @@ - include_directories(${Qt5Core_PRIVATE_INCLUDE_DIRS}) - include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS}) --add_definitions(-DQ_FONTCONFIGDATABASE) - - set(QPA_SOURCES - abstractplatformcontext.cpp -@@ -19,10 +18,22 @@ include(ECMQtDeclareLoggingCategory) - ecm_qt_declare_logging_category(QPA_SOURCES HEADER logging.h IDENTIFIER KWIN_QPA CATEGORY_NAME kwin_qpa_plugin DEFAULT_SEVERITY Critical) - - add_library(KWinQpaPlugin MODULE ${QPA_SOURCES}) -+ -+if(Qt5Core_VERSION VERSION_LESS "5.8.0") -+ add_definitions(-DQ_FONTCONFIGDATABASE) -+ set(QT5PLATFORMSUPPORT_LIBS Qt5PlatformSupport::Qt5PlatformSupport) -+else() -+ set(QT5PLATFORMSUPPORT_LIBS -+ Qt5FontDatabaseSupport::Qt5FontDatabaseSupport -+ Qt5ThemeSupport::Qt5ThemeSupport -+ Qt5EventDispatcherSupport::Qt5EventDispatcherSupport -+) -+endif() -+ - target_link_libraries(KWinQpaPlugin - kwin - KF5::WaylandClient -- Qt5PlatformSupport::Qt5PlatformSupport -+ ${QT5PLATFORMSUPPORT_LIBS} - ${FONTCONFIG_LIBRARIES} - ${FREETYPE_LIBRARIES} - ) -diff --git a/plugins/qpa/integration.cpp b/plugins/qpa/integration.cpp -index 8913bf0a1..fcca48f79 100644 ---- a/plugins/qpa/integration.cpp -+++ b/plugins/qpa/integration.cpp -@@ -46,9 +46,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. - #include <qpa/qplatforminputcontextfactory_p.h> - #include <qpa/qwindowsysteminterface.h> - #include <QtCore/private/qeventdispatcher_unix_p.h> -+ -+#if QT_VERSION >= 0x050800 -+#include <QtFontDatabaseSupport/private/qgenericunixfontdatabase_p.h> -+#include <QtThemeSupport/private/qgenericunixthemes_p.h> -+#include <QtEventDispatcherSupport/private/qunixeventdispatcher_qpa_p.h> -+#else - #include <QtPlatformSupport/private/qgenericunixfontdatabase_p.h> - #include <QtPlatformSupport/private/qgenericunixthemes_p.h> - #include <QtPlatformSupport/private/qunixeventdispatcher_qpa_p.h> -+#endif - - namespace KWin - { diff --git a/user/kwin/kwin-backport-gallium-version-detection.patch b/user/kwin/kwin-backport-gallium-version-detection.patch deleted file mode 100644 index 8c021c4e6..000000000 --- a/user/kwin/kwin-backport-gallium-version-detection.patch +++ /dev/null @@ -1,191 +0,0 @@ -From e302f87598de6853147c872b631e9a1fe4864f42 Mon Sep 17 00:00:00 2001 -From: Fabian Vogt <fabian@ritter-vogt.de> -Date: Sat, 23 Dec 2017 23:30:07 +0100 -Subject: Properly detect Gallium drivers with newer Mesa - -Summary: -The renderer string does not contain "Gallium 0.4 on" anymore, -instead it directly contains the gallium driver's name. -So assume that every unknown renderer is a gallium driver. - -Test Plan: Added a testcase, it succeeds only with this patch. - -Reviewers: #plasma, graesslin - -Subscribers: kwin, plasma-devel, #kwin - -Tags: #kwin - -Differential Revision: https://phabricator.kde.org/D9495 ---- - .../libkwineffects/data/glplatform/llvmpipe-5.0 | 22 ++++ - libkwineffects/kwinglplatform.cpp | 114 +++++++++++---------- - 2 files changed, 82 insertions(+), 54 deletions(-) - create mode 100644 autotests/libkwineffects/data/glplatform/llvmpipe-5.0 - -diff --git a/autotests/libkwineffects/data/glplatform/llvmpipe-5.0 b/autotests/libkwineffects/data/glplatform/llvmpipe-5.0 -new file mode 100644 -index 0000000..56aa352 ---- /dev/null -+++ b/autotests/libkwineffects/data/glplatform/llvmpipe-5.0 -@@ -0,0 +1,22 @@ -+[Driver] -+Vendor=VMware, Inc. -+Renderer=llvmpipe (LLVM 5.0, 256 bits) -+Version=3.0 Mesa 17.2.6 -+ShadingLanguageVersion=1.30 -+ -+[Settings] -+LooseBinding=true -+GLSL=true -+TextureNPOT=true -+Mesa=true -+Gallium=true -+SoftwareEmulation=true -+GLVersion=3,0 -+GLSLVersion=1,30 -+MesaVersion=17,2,6 -+GalliumVersion=0,4 -+DriverVersion=17,2,6 -+Driver=12 -+ChipClass=99999 -+Compositor=9 -+ -diff --git a/libkwineffects/kwinglplatform.cpp b/libkwineffects/kwinglplatform.cpp -index 2b7b9a4..f5febc0 100644 ---- a/libkwineffects/kwinglplatform.cpp -+++ b/libkwineffects/kwinglplatform.cpp -@@ -702,14 +702,69 @@ void GLPlatform::detect(OpenGLPlatformInterface platformInterface) - m_chipClass = detectIntelClass(chipset); - } - -+ // Properietary drivers -+ // ==================================================== -+ else if (m_vendor == "ATI Technologies Inc.") { -+ m_chipClass = detectRadeonClass(m_renderer); -+ m_driver = Driver_Catalyst; -+ -+ if (versionTokens.count() > 1 && versionTokens.at(2)[0] == '(') -+ m_driverVersion = parseVersionString(versionTokens.at(1)); -+ else if (versionTokens.count() > 0) -+ m_driverVersion = parseVersionString(versionTokens.at(0)); -+ else -+ m_driverVersion = 0; -+ } -+ -+ else if (m_vendor == "NVIDIA Corporation") { -+ m_chipClass = detectNVidiaClass(m_renderer); -+ m_driver = Driver_NVidia; -+ -+ int index = versionTokens.indexOf("NVIDIA"); -+ if (versionTokens.count() > index) -+ m_driverVersion = parseVersionString(versionTokens.at(index + 1)); -+ else -+ m_driverVersion = 0; -+ } -+ -+ else if (m_vendor == "Qualcomm") { -+ m_driver = Driver_Qualcomm; -+ m_chipClass = detectQualcommClass(m_renderer); -+ } -+ -+ else if (m_renderer == "Software Rasterizer") { -+ m_driver = Driver_Swrast; -+ } -+ -+ // Virtual Hardware -+ // ==================================================== -+ else if (m_vendor == "Humper" && m_renderer == "Chromium") { -+ // Virtual Box -+ m_driver = Driver_VirtualBox; -+ -+ const int index = versionTokens.indexOf("Chromium"); -+ if (versionTokens.count() > index) -+ m_driverVersion = parseVersionString(versionTokens.at(index + 1)); -+ else -+ m_driverVersion = 0; -+ } -+ - // Gallium drivers - // ==================================================== -- else if (m_renderer.contains("Gallium")) { -- // Sample renderer string: Gallium 0.4 on AMD RV740 -+ else { - const QList<QByteArray> tokens = m_renderer.split(' '); -- m_galliumVersion = parseVersionString(tokens.at(1)); -- m_chipset = (tokens.at(3) == "AMD" || tokens.at(3) == "ATI") ? -- tokens.at(4) : tokens.at(3); -+ if (m_renderer.contains("Gallium")) { -+ // Sample renderer string: Gallium 0.4 on AMD RV740 -+ m_galliumVersion = parseVersionString(tokens.at(1)); -+ m_chipset = (tokens.at(3) == "AMD" || tokens.at(3) == "ATI") ? -+ tokens.at(4) : tokens.at(3); -+ } -+ else { -+ // The renderer string does not contain "Gallium" anymore. -+ m_chipset = tokens.at(0); -+ // We don't know the actual version anymore, but it's at least 0.4. -+ m_galliumVersion = kVersionNumber(0, 4, 0); -+ } - - // R300G - if (m_vendor == QByteArrayLiteral("X.Org R300 Project")) { -@@ -764,55 +819,6 @@ void GLPlatform::detect(OpenGLPlatformInterface platformInterface) - } - } - -- -- // Properietary drivers -- // ==================================================== -- else if (m_vendor == "ATI Technologies Inc.") { -- m_chipClass = detectRadeonClass(m_renderer); -- m_driver = Driver_Catalyst; -- -- if (versionTokens.count() > 1 && versionTokens.at(2)[0] == '(') -- m_driverVersion = parseVersionString(versionTokens.at(1)); -- else if (versionTokens.count() > 0) -- m_driverVersion = parseVersionString(versionTokens.at(0)); -- else -- m_driverVersion = 0; -- } -- -- else if (m_vendor == "NVIDIA Corporation") { -- m_chipClass = detectNVidiaClass(m_renderer); -- m_driver = Driver_NVidia; -- -- int index = versionTokens.indexOf("NVIDIA"); -- if (versionTokens.count() > index) -- m_driverVersion = parseVersionString(versionTokens.at(index + 1)); -- else -- m_driverVersion = 0; -- } -- -- else if (m_vendor == "Qualcomm") { -- m_driver = Driver_Qualcomm; -- m_chipClass = detectQualcommClass(m_renderer); -- } -- -- else if (m_renderer == "Software Rasterizer") { -- m_driver = Driver_Swrast; -- } -- -- // Virtual Hardware -- // ==================================================== -- else if (m_vendor == "Humper" && m_renderer == "Chromium") { -- // Virtual Box -- m_driver = Driver_VirtualBox; -- -- const int index = versionTokens.indexOf("Chromium"); -- if (versionTokens.count() > index) -- m_driverVersion = parseVersionString(versionTokens.at(index + 1)); -- else -- m_driverVersion = 0; -- } -- -- - // Driver/GPU specific features - // ==================================================== - if (isRadeon()) { --- -cgit v0.11.2 - |