Blame deepin-kwin.spec

b6837fb
%global repo dde-kwin
f8b23ec
%global __provides_exclude_from ^%{_qt5_plugindir}.*\.so$
7bf0b0c
# not build kwin ext with kwin >= 5.25
7bf0b0c
%global kwin_ext 0
b6837fb
b6837fb
Name:           deepin-kwin
e92f79a
Version:        5.4.26
4c7934d
Release:        %autorelease
b6837fb
Summary:        KWin configuration for Deepin Desktop Environment
b6837fb
License:        GPLv3+
b6837fb
URL:            https://github.com/linuxdeepin/%{repo}
8d360d7
Source0:        %{url}/archive/%{version}/%{repo}-%{version}.tar.gz
cfc79e2
%if !%{kwin_ext}
cfc79e2
%global debug_package %{nil}
cfc79e2
%endif
cfc79e2
e92f79a
# Fix crash with later kwin versions
eaba33f
Patch0001: https://raw.githubusercontent.com/archlinux/svntogit-community/6569e8f227a739b625164cbc549b1b54b2b7812c/trunk/dde-kwin.5.4.26.patch
eaba33f
eaba33f
# revert added functions from their forked kwin
eaba33f
# Author: Robin Lee <cheeselee@fedoraproject.org>
eaba33f
Patch0002: 0001-revert-added-functions-from-their-forked-kwin.patch
f8b23ec
e5788b9
# https://github.com/linuxdeepin/dde-kwin/pull/106
eaba33f
Patch0003: https://raw.githubusercontent.com/archlinux/svntogit-community/73ec1ea59cd8ad607a3658fd1fbeed1725110821/trunk/deepin-kwin-tabbox-chameleon-rename.patch
f8b23ec
b6837fb
BuildRequires:  gcc-c++
0ff00b6
BuildRequires:  cmake
f8b23ec
BuildRequires:  extra-cmake-modules >= 5.54
b6837fb
BuildRequires:  kwin-devel
f8b23ec
BuildRequires:  kwayland-server-devel
b6837fb
BuildRequires:  pkgconfig(Qt5X11Extras)
f8b23ec
BuildRequires:  pkgconfig(Qt5Qml)
b6837fb
BuildRequires:  gsettings-qt-devel
0ff00b6
BuildRequires:  libepoxy-devel
f8b23ec
BuildRequires:  dtkgui-devel
0ff00b6
BuildRequires:  kf5-kwayland-devel
b6837fb
BuildRequires:  kf5-kglobalaccel-devel
0ff00b6
BuildRequires:  cmake(KDecoration2)
f8b23ec
BuildRequires:  cmake(KF5I18n)
0ff00b6
BuildRequires:  qt5-linguist
cfc79e2
%if %{kwin_ext}
b6837fb
# for libQt5EdidSupport.a
b6837fb
BuildRequires:  qt5-qtbase-static
b6837fb
BuildRequires:  qt5-qtbase-private-devel
3d21da2
b6837fb
Requires:       deepin-qt5integration%{?_isa}
6bd9947
Requires:       kwin-x11%{?_isa} >= 5.21
cfc79e2
%else
cfc79e2
Requires:       %{_bindir}/kwin_x11
cfc79e2
%endif
0ff00b6
# since F31
0ff00b6
Obsoletes:      deepin-wm <= 1.9.38
0ff00b6
Obsoletes:      deepin-wm-switcher <= 1.1.9
0ff00b6
Obsoletes:      deepin-metacity <= 3.22.24
0ff00b6
Obsoletes:      deepin-metacity-devel <= 3.22.24
0ff00b6
Obsoletes:      deepin-mutter <= 3.20.38
0ff00b6
Obsoletes:      deepin-mutter-devel <= 3.20.38
b6837fb
b6837fb
%description
b6837fb
This package provides a kwin configuration that used as the new WM for Deepin
b6837fb
Desktop Environment.
b6837fb
cfc79e2
%if %{kwin_ext}
b6837fb
%package devel
b6837fb
Summary:        Development package for %{name}
b6837fb
Requires:       %{name}%{?_isa} = %{version}-%{release}
b6837fb
Requires:       kwin-devel%{?_isa}
b6837fb
Requires:       qt5-qtx11extras-devel%{?_isa}
b6837fb
Requires:       gsettings-qt-devel%{?_isa}
b6837fb
Requires:       dtkcore-devel%{?_isa}
b6837fb
Requires:       kf5-kglobalaccel-devel%{?_isa}
b6837fb
b6837fb
b6837fb
%description devel
b6837fb
Header files and libraries for %{name}.
cfc79e2
%endif
b6837fb
%prep
f8b23ec
%autosetup -p1 -n %{repo}-%{version}
da4d568
f8b23ec
sed -i 's:/lib/:%{_libdir}/:' plugins/platforms/lib/CMakeLists.txt
f8b23ec
sed -i 's:/lib/:/%{_lib}/:' plugins/platforms/plugin/main.cpp \
f8b23ec
                            plugins/platforms/plugin/main_wayland.cpp
0ff00b6
sed -i 's:/usr/lib:%{_libexecdir}:' deepin-wm-dbus/deepinwmfaker.cpp
eaba33f
sed -i 's/kwin 5.21.5/kwin 5.24.4/' configures/kwin_no_scale.in
b6837fb
b6837fb
%build
b6837fb
# help find (and prefer) qt5 utilities, e.g. qmake, lrelease
b6837fb
export PATH=%{_qt5_bindir}:$PATH
f8b23ec
%cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} -DCMAKE_INSTALL_LIBDIR=%{_libdir} \
6bd9947
       -DCMAKE_BUILD_TYPE=RelWithDebInfo \
eaba33f
       -DUSE_WINDOW_TOOL=OFF \
eaba33f
       -DENABLE_BUILTIN_BLUR=OFF \
eaba33f
       -DENABLE_KDECORATION=ON \
eaba33f
       -DENABLE_BUILTIN_MULTITASKING=OFF \
eaba33f
       -DENABLE_BUILTIN_BLACK_SCREEN=OFF \
7bf0b0c
       -DUSE_DEEPIN_WAYLAND=OFF \
7bf0b0c
%if !%{kwin_ext}
7bf0b0c
       -DUSE_PLUGINS=OFF
7bf0b0c
%endif
7bf0b0c
7508a57
%cmake_build
6bd9947
b6837fb
%install
7508a57
%cmake_install
b6837fb
b6837fb
%files
b6837fb
%doc CHANGELOG.md
8d360d7
%license LICENSE
b6837fb
%{_sysconfdir}/xdg/*
6bd9947
%{_bindir}/kwin_no_scale
cfc79e2
%{_bindir}/deepin-wm-dbus
7bf0b0c
%{_datadir}/dbus-1/services/*.service
7bf0b0c
%{_datadir}/dbus-1/interfaces/*.xml
7bf0b0c
%{_datadir}/kwin/scripts/*
7bf0b0c
%{_datadir}/kwin/tabbox/*
7bf0b0c
%if %{kwin_ext}
0ff00b6
%{_qt5_plugindir}/org.kde.kdecoration2/libdeepin-chameleon.so
b6837fb
%{_qt5_plugindir}/platforms/lib%{repo}-xcb.so
f8b23ec
%{_qt5_plugindir}/platforms/lib%{repo}-wayland.so
f8b23ec
%{_qt5_plugindir}/kwin/effects/plugins/
0ff00b6
%{_datadir}/dde-kwin-xcb/
f8b23ec
%{_libdir}/libkwin-xcb.so.0
f8b23ec
%{_libdir}/libkwin-xcb.so.0.*
b6837fb
b6837fb
%files devel
0ff00b6
%{_libdir}/libkwin-xcb.so
b6837fb
%{_libdir}/pkgconfig/%{repo}.pc
0ff00b6
%{_includedir}/%{repo}
cfc79e2
%endif
b6837fb
b6837fb
%changelog
4c7934d
%autochangelog