f777d457ba179f7eab6c43a674d25c86a1e100f7
[gentoo.git] / kde-plasma / kwin / kwin-5.14.3-r1.ebuild
1 # Copyright 1999-2018 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5
6 KDE_HANDBOOK="optional"
7 KDE_TEST="optional"
8 VIRTUALX_REQUIRED="test"
9 inherit kde5
10
11 DESCRIPTION="KDE window manager"
12 LICENSE="GPL-2+"
13 KEYWORDS="amd64 ~arm ~arm64 x86"
14 IUSE="caps gles2 multimedia"
15
16 COMMON_DEPEND="
17         $(add_frameworks_dep kactivities)
18         $(add_frameworks_dep kauth)
19         $(add_frameworks_dep kcmutils)
20         $(add_frameworks_dep kcompletion)
21         $(add_frameworks_dep kconfig)
22         $(add_frameworks_dep kconfigwidgets)
23         $(add_frameworks_dep kcoreaddons)
24         $(add_frameworks_dep kcrash)
25         $(add_frameworks_dep kdeclarative)
26         $(add_frameworks_dep kglobalaccel '' '' '5=')
27         $(add_frameworks_dep ki18n)
28         $(add_frameworks_dep kiconthemes)
29         $(add_frameworks_dep kidletime '' '' '5=')
30         $(add_frameworks_dep kinit)
31         $(add_frameworks_dep kio)
32         $(add_frameworks_dep knewstuff)
33         $(add_frameworks_dep knotifications)
34         $(add_frameworks_dep kpackage)
35         $(add_frameworks_dep kservice)
36         $(add_frameworks_dep ktextwidgets)
37         $(add_frameworks_dep kwayland)
38         $(add_frameworks_dep kwidgetsaddons)
39         $(add_frameworks_dep kwindowsystem X)
40         $(add_frameworks_dep kxmlgui)
41         $(add_frameworks_dep plasma)
42         $(add_plasma_dep breeze)
43         $(add_plasma_dep kdecoration)
44         $(add_plasma_dep kscreenlocker)
45         $(add_qt_dep qtdbus)
46         $(add_qt_dep qtdeclarative)
47         $(add_qt_dep qtgui 'gles2=' '' '5=')
48         $(add_qt_dep qtscript)
49         $(add_qt_dep qtsensors)
50         $(add_qt_dep qtwidgets)
51         $(add_qt_dep qtx11extras)
52         >=dev-libs/libinput-1.9
53         >=dev-libs/wayland-1.2
54         media-libs/fontconfig
55         media-libs/freetype
56         media-libs/libepoxy
57         media-libs/mesa[egl,gbm,gles2?,wayland]
58         virtual/libudev:=
59         x11-libs/libICE
60         x11-libs/libSM
61         x11-libs/libX11
62         x11-libs/libXi
63         x11-libs/libdrm
64         >=x11-libs/libxcb-1.10
65         >=x11-libs/libxkbcommon-0.7.0
66         x11-libs/xcb-util-cursor
67         x11-libs/xcb-util-image
68         x11-libs/xcb-util-keysyms
69         x11-libs/xcb-util-wm
70         caps? ( sys-libs/libcap )
71 "
72 RDEPEND="${COMMON_DEPEND}
73         $(add_qt_dep qtquickcontrols)
74         $(add_qt_dep qtquickcontrols2)
75         $(add_qt_dep qtvirtualkeyboard)
76         multimedia? ( $(add_qt_dep qtmultimedia 'gstreamer,qml') )
77         !kde-plasma/kwin:4
78         !kde-plasma/systemsettings:4
79 "
80 DEPEND="${COMMON_DEPEND}
81         $(add_qt_dep designer)
82         $(add_qt_dep qtconcurrent)
83         x11-base/xorg-proto
84 "
85 PDEPEND="
86         $(add_plasma_dep kde-cli-tools)
87 "
88
89 RESTRICT+=" test"
90
91 PATCHES=(
92         "${FILESDIR}/${P}-virtualdesktop-crash.patch"
93         "${FILESDIR}/${P}-resizewindows-crash.patch"
94         "${FILESDIR}/${P}-kcrash-init.patch"
95 )
96
97 src_prepare() {
98         kde5_src_prepare
99         use multimedia || eapply "${FILESDIR}/${PN}-gstreamer-optional.patch"
100
101         # Access violations, bug #640432
102         sed -e "s/^ecm_find_qmlmodule.*QtMultimedia/#&/" \
103                 -i CMakeLists.txt || die
104 }
105
106 src_configure() {
107         local mycmakeargs=(
108                 $(cmake-utils_use_find_package caps Libcap)
109         )
110
111         kde5_src_configure
112 }