@@ -0,0 +1,82 @@
|
||||
From f2b5981d848d700212fc30d719c30db6d57cd2e5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
|
||||
Date: Mon, 2 Feb 2015 14:28:10 +0100
|
||||
Subject: [PATCH] fix build for qtbase without session management
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
|
||||
---
|
||||
main.cpp | 8 +++++++-
|
||||
workspace.cpp | 11 ++++++++++-
|
||||
2 files changed, 17 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index 44d8c49..0cb9e44 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -360,7 +360,13 @@ void Application::createWorkspace()
|
||||
// critical startup section where x errors cause kwin to abort.
|
||||
|
||||
// create workspace.
|
||||
- (void) new Workspace(isSessionRestored());
|
||||
+ (void) new Workspace(
|
||||
+#ifndef QT_NO_SESSIONMANAGER
|
||||
+ isSessionRestored()
|
||||
+#else
|
||||
+ false
|
||||
+#endif
|
||||
+ );
|
||||
}
|
||||
|
||||
void Application::createAtoms()
|
||||
diff --git a/workspace.cpp b/workspace.cpp
|
||||
index 7cbe81e..66c603b 100644
|
||||
--- a/workspace.cpp
|
||||
+++ b/workspace.cpp
|
||||
@@ -277,8 +277,11 @@ void Workspace::init()
|
||||
// Extra NETRootInfo instance in Client mode is needed to get the values of the properties
|
||||
NETRootInfo client_info(connection(), NET::ActiveWindow | NET::CurrentDesktop);
|
||||
int initial_desktop;
|
||||
+#ifndef QT_NO_SESSIONMANAGER
|
||||
if (!qApp->isSessionRestored())
|
||||
+#endif // QT_NO_SESSIONMANAGER
|
||||
initial_desktop = client_info.currentDesktop();
|
||||
+#ifndef QT_NO_SESSIONMANAGER
|
||||
else {
|
||||
#if KWIN_QT5_PORTING
|
||||
KConfigGroup group(kapp->sessionConfig(), "Session");
|
||||
@@ -287,6 +290,7 @@ void Workspace::init()
|
||||
initial_desktop = 1;
|
||||
#endif
|
||||
}
|
||||
+#endif // QT_NO_SESSIONMANAGER
|
||||
if (!VirtualDesktopManager::self()->setCurrent(initial_desktop))
|
||||
VirtualDesktopManager::self()->setCurrent(1);
|
||||
|
||||
@@ -307,7 +311,9 @@ void Workspace::init()
|
||||
active_client = NULL;
|
||||
rootInfo->setActiveWindow(None);
|
||||
focusToNull();
|
||||
+#ifndef QT_NO_SESSIONMANAGER
|
||||
if (!qApp->isSessionRestored())
|
||||
+#endif // QT_NO_SESSIONMANAGER
|
||||
++block_focus; // Because it will be set below
|
||||
|
||||
{
|
||||
@@ -372,7 +378,10 @@ void Workspace::init()
|
||||
} // End updates blocker block
|
||||
|
||||
Client* new_active_client = NULL;
|
||||
- if (!qApp->isSessionRestored()) {
|
||||
+#ifndef QT_NO_SESSIONMANAGER
|
||||
+ if (!qApp->isSessionRestored())
|
||||
+#endif
|
||||
+ {
|
||||
--block_focus;
|
||||
new_active_client = findClient(Predicate::WindowMatch, client_info.activeWindow());
|
||||
}
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@@ -0,0 +1,148 @@
|
||||
From f72c60cb99105556969c06a1008c2708b9d07da3 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
|
||||
Date: Wed, 10 Dec 2014 17:04:24 +0100
|
||||
Subject: [PATCH] Add X11-less support for pure wayland environments
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
|
||||
---
|
||||
CMakeLists.txt | 82 ++++++++++++++++++++++++++++++++++------------------------
|
||||
1 file changed, 48 insertions(+), 34 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 4a3e547..288b072 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -25,7 +25,6 @@ find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
|
||||
Script
|
||||
UiTools
|
||||
Widgets
|
||||
- X11Extras
|
||||
)
|
||||
|
||||
find_package(Qt5Test ${QT_MIN_VERSION} CONFIG QUIET)
|
||||
@@ -150,35 +149,40 @@ set_package_properties(XKB PROPERTIES
|
||||
find_package(X11)
|
||||
set_package_properties(X11 PROPERTIES DESCRIPTION "X11 libraries"
|
||||
URL "http://www.x.org"
|
||||
- TYPE REQUIRED
|
||||
+ TYPE OPTIONAL
|
||||
)
|
||||
|
||||
-# All the required XCB components
|
||||
-find_package(XCB
|
||||
- REQUIRED COMPONENTS
|
||||
- XCB
|
||||
- XFIXES
|
||||
- DAMAGE
|
||||
- COMPOSITE
|
||||
- SHAPE
|
||||
- SYNC
|
||||
- RENDER
|
||||
- RANDR
|
||||
- KEYSYMS
|
||||
- IMAGE
|
||||
- SHM
|
||||
- XTEST
|
||||
- GLX
|
||||
- OPTIONAL_COMPONENTS
|
||||
- ICCCM
|
||||
-)
|
||||
-set_package_properties(XCB PROPERTIES TYPE REQUIRED)
|
||||
+set(HAVE_X11 ${X11_FOUND})
|
||||
+
|
||||
+if(HAVE_X11)
|
||||
+ find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS X11Extras)
|
||||
+ # All the required XCB components
|
||||
+ find_package(XCB
|
||||
+ REQUIRED COMPONENTS
|
||||
+ XCB
|
||||
+ XFIXES
|
||||
+ DAMAGE
|
||||
+ COMPOSITE
|
||||
+ SHAPE
|
||||
+ SYNC
|
||||
+ RENDER
|
||||
+ RANDR
|
||||
+ KEYSYMS
|
||||
+ IMAGE
|
||||
+ SHM
|
||||
+ XTEST
|
||||
+ GLX
|
||||
+ OPTIONAL_COMPONENTS
|
||||
+ ICCCM
|
||||
+ )
|
||||
+ set_package_properties(XCB PROPERTIES TYPE REQUIRED)
|
||||
|
||||
-# and the optional XCB dependencies
|
||||
-if (XCB_ICCCM_VERSION VERSION_LESS "0.4")
|
||||
- set(XCB_ICCCM_FOUND FALSE)
|
||||
+ # and the optional XCB dependencies
|
||||
+ if (XCB_ICCCM_VERSION VERSION_LESS "0.4")
|
||||
+ set(XCB_ICCCM_FOUND FALSE)
|
||||
+ endif()
|
||||
+ add_feature_info("XCB-ICCCM" XCB_ICCCM_FOUND "Required for building test applications for KWin")
|
||||
endif()
|
||||
-add_feature_info("XCB-ICCCM" XCB_ICCCM_FOUND "Required for building test applications for KWin")
|
||||
|
||||
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
||||
|
||||
@@ -438,9 +442,12 @@ set(kwin_QT_LIBS
|
||||
Qt5::DBus
|
||||
Qt5::Quick
|
||||
Qt5::Script
|
||||
- Qt5::X11Extras
|
||||
)
|
||||
|
||||
+if(HAVE_X11)
|
||||
+ set(kwin_QT_LIBS Qt5::X11Extras)
|
||||
+endif()
|
||||
+
|
||||
set(kwin_KDE_LIBS
|
||||
KF5::ConfigCore
|
||||
KF5::CoreAddons
|
||||
@@ -504,10 +511,15 @@ set(kwinLibs
|
||||
${kwin_OWN_LIBS}
|
||||
${kwin_QT_LIBS}
|
||||
${kwin_KDE_LIBS}
|
||||
- ${kwin_XLIB_LIBS}
|
||||
- ${kwin_XCB_LIBS}
|
||||
)
|
||||
|
||||
+if(HAVE_X11)
|
||||
+ set(kwinLibs
|
||||
+ ${kwin_XLIB_LIBS}
|
||||
+ ${kwin_XCB_LIBS}
|
||||
+ )
|
||||
+endif()
|
||||
+
|
||||
if(HAVE_WAYLAND)
|
||||
set(kwinLibs ${kwinLibs} ${kwin_WAYLAND_LIBS})
|
||||
if(KWIN_HAVE_EGL AND Wayland_Egl_FOUND)
|
||||
@@ -537,12 +549,14 @@ elseif(KWIN_BUILD_OPENGLES)
|
||||
set_target_properties(kwin PROPERTIES COMPILE_FLAGS "-DKWIN_HAVE_OPENGLES")
|
||||
endif()
|
||||
|
||||
-kf5_add_kdeinit_executable(kwin_x11 main_x11.cpp)
|
||||
-target_link_libraries(kdeinit_kwin_x11 kwin)
|
||||
+if(HAVE_X11)
|
||||
+ kf5_add_kdeinit_executable(kwin_x11 main_x11.cpp)
|
||||
+ target_link_libraries(kdeinit_kwin_x11 kwin)
|
||||
|
||||
-install(TARGETS kwin ${INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP )
|
||||
-install(TARGETS kdeinit_kwin_x11 ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
-install(TARGETS kwin_x11 ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
+ install(TARGETS kwin ${INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP )
|
||||
+ install(TARGETS kdeinit_kwin_x11 ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
+ install(TARGETS kwin_x11 ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
+endif()
|
||||
|
||||
if(HAVE_WAYLAND)
|
||||
kf5_add_kdeinit_executable(kwin_wayland main_wayland.cpp)
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
91
recipes-kde/plasma/untier/kwin/kwin_5.2.0.1.bb
Normal file
91
recipes-kde/plasma/untier/kwin/kwin_5.2.0.1.bb
Normal file
@@ -0,0 +1,91 @@
|
||||
SUMMARY = "Support for bookmarks and the XBEL format"
|
||||
LICENSE = "LGPLv2.1 & GFDL-1.2"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=5c213a7de3f013310bd272cdb6eb7a24 \
|
||||
file://COPYING.DOC;md5=ad1419ecc56e060eccf8184a87c4285f \
|
||||
"
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
|
||||
inherit kde cmake-lib
|
||||
|
||||
DEPENDS += " \
|
||||
kconfig \
|
||||
kconfigwidgets \
|
||||
kcoreaddons \
|
||||
kcrash \
|
||||
kglobalaccel \
|
||||
ki18n \
|
||||
kinit \
|
||||
knotifications \
|
||||
kservice \
|
||||
plasma-framework \
|
||||
kwidgetsaddons \
|
||||
kwindowsystem \
|
||||
\
|
||||
kcompletion \
|
||||
kdeclarative \
|
||||
kcmutils \
|
||||
kio \
|
||||
knewstuff \
|
||||
kxmlgui \
|
||||
kdecoration \
|
||||
${@bb.utils.contains("DISTRO_FEATURES", "x11", "virtual/xserver qtx11extras libepoxy", "",d)} \
|
||||
"
|
||||
|
||||
# this condition matches always currently - it is kept in this way as a marker
|
||||
DEPENDS += " \
|
||||
${@bb.utils.contains("DISTRO_FEATURES", "x11", "virtual/xserver qtx11extras libepoxy", "",d)} \
|
||||
"
|
||||
|
||||
# REVISIT: PACKAGECONFIG for optionals
|
||||
DEPENDS += " \
|
||||
kwayland \
|
||||
kactivities \
|
||||
kdoctools \
|
||||
virtual/egl \
|
||||
"
|
||||
|
||||
SRCREV = "3b6ab89617fd8b94bc926055a13df772036b33d2"
|
||||
|
||||
SRC_URI += "file://0001-fix-build-for-qtbase-without-session-management.patch"
|
||||
|
||||
# REVISIT: this should be fixed in meta-fsl-arm
|
||||
CXXFLAGS_append_mx6 = " -DLINUX \
|
||||
${@base_contains('DISTRO_FEATURES', 'x11', '', \
|
||||
base_contains('DISTRO_FEATURES', 'wayland', \
|
||||
'-DEGL_API_WL -DEGL_API_FB', '', d), d)}"
|
||||
|
||||
|
||||
|
||||
# cross libs / headers
|
||||
CMAKE_HIDE_ERROR[1] = "KF5Win, -S${libdir}/lib, -S${STAGING_LIBDIR}/lib"
|
||||
CMAKE_HIDE_ERROR[2] = "KF5Win, -S${includedir}, -S${STAGING_INCDIR}"
|
||||
|
||||
FILES_${PN} += " \
|
||||
${datadir}/config.kcfg \
|
||||
${datadir}/kservices5 \
|
||||
${datadir}/kwincompositing \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/icons \
|
||||
${datadir}/*5 \
|
||||
${libdir}/plugins \
|
||||
${libdir}/qml \
|
||||
${libdir}/kconf_update_bin \
|
||||
"
|
||||
|
||||
# taken from bitbake.conf with lucky modification: all lt libraries end with s.so
|
||||
# only move them to -dev package
|
||||
FILES_SOLIBSDEV = "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*s${SOLIBSDEV}"
|
||||
FILES_${PN} += " \
|
||||
${libdir}/*.so \
|
||||
"
|
||||
|
||||
|
||||
FILES_${PN}-dbg += " \
|
||||
${libdir}/*/.debug \
|
||||
${libdir}/*/*/.debug \
|
||||
${libdir}/*/*/*/*/.debug \
|
||||
${libdir}/*/*/*/*/*/.debug \
|
||||
${libdir}/*/*/*/*/*/*/.debug \
|
||||
"
|
||||
Reference in New Issue
Block a user