migrate to Qt5, spec fixes

This commit is contained in:
Christian Dersch 2016-04-23 22:34:03 +02:00
parent 5b99d67ea4
commit 35a36782c7
1 changed files with 51 additions and 47 deletions

View File

@ -4,21 +4,32 @@
Name: quassel
Summary: A modern distributed IRC system
Version: 0.12.3
Release: 4%{?dist}
Release: 5%{?dist}
License: GPLv2 or GPLv3
Group: Applications/Internet
URL: http://quassel-irc.org/
Source0: http://quassel-irc.org/pub/quassel-%{version}.tar.bz2
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
Buildrequires: cmake
BuildRequires: dbusmenu-qt5-devel
BuildRequires: desktop-file-utils
buildRequires: kdebase-workspace-devel
BuildRequires: kde-filesystem
BuildRequires: extra-cmake-modules
BuildRequires: kf5-kconfigwidgets-devel
BuildRequires: kf5-kcoreaddons-devel
BuildRequires: kf5-knotifications-devel
BuildRequires: kf5-knotifyconfig-devel
BuildRequires: kf5-ktextwidgets-devel
BuildRequires: kf5-kwidgetsaddons-devel
BuildRequires: kf5-kwindowsystem-devel
BuildRequires: kf5-kxmlgui-devel
BuildRequires: kf5-rpm-macros
BuildRequires: openssl-devel
BuildRequires: qt4-devel
BuildRequires: qt4-webkit-devel
BuildRequires: phonon-qt5-devel
BuildRequires: qca-qt5-devel
BuildRequires: qt5-linguist
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qtscript-devel
BuildRequires: qt5-qtwebkit-devel
BuildRequires: systemd
BuildRequires: firewalld-filesystem
@ -45,21 +56,19 @@ text-based IRC client such as WeeChat, but graphical
%package common
Summary: Quassel common/shared files
Group: Applications/Internet
# not strictly required, but helps this get pulled out when
# someone removes %%name or %%name-client
Requires: %{name}-gui = %{version}-%{release}
# put here for convenience, instead of all subpkgs which
# provide %%{name}-gui
%{?_kde4_version:Requires: kdelibs4 >= %{_kde4_version}}
%{?_qt4_version:Requires: qt4 >= %{_qt4_version}}
#%{?_kde4_version:Requires: kdelibs4 >= %{_kde4_version}}
#%{?_qt4_version:Requires: qt4 >= %{_qt4_version}}
BuildArch: noarch
%description common
%{summary}.
%package core
Summary: Quassel core component
Group: Applications/Internet
# Required for the quassel user.
Requires(pre): shadow-utils
@ -73,7 +82,6 @@ server, and allows for multiple clients to connect
%package client
Summary: Quassel client
Group: Applications/Internet
Provides: %{name}-gui = %{version}-%{release}
Requires: %{name}-common = %{version}-%{release}
%description client
@ -86,48 +94,43 @@ Quassel client
%build
mkdir build
pushd build
%{cmake_kde4} .. -DWANT_MONO=1 -DWITH_KDE=1
%{cmake_kf5} .. -DWANT_MONO=1 -DUSE_QT5=1 -DWITH_KDE=1
popd
make %{?_smp_mflags} -C build
%install
rm -rf $RPM_BUILD_ROOT
make install/fast DESTDIR=${RPM_BUILD_ROOT} -C build
make install/fast DESTDIR=%{buildroot} -C build
# unpackaged files
rm -f $RPM_BUILD_ROOT%{_datadir}/pixmaps/quassel.png
rm -f %{buildroot}/%{_datadir}/pixmaps/quassel.png
# Install quassel.conf for systemd file
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
install -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/
mkdir -p %{buildroot}/%{_sysconfdir}
install -m 0644 %{SOURCE2} %{buildroot}/%{_sysconfdir}/
# Install systemd service file
install -d -m 0755 $RPM_BUILD_ROOT%{_unitdir}
install -p -m 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_unitdir}/
install -d -m 0755 %{buildroot}/%{_unitdir}
install -p -m 0644 %{SOURCE1} %{buildroot}/%{_unitdir}/
# Install firewalld service definition
install -d -m 0755 $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/services/
install -p -m 0644 %{SOURCE3} $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/services/
install -d -m 0755 %{buildroot}/%{_prefix}/lib/firewalld/services/
install -p -m 0644 %{SOURCE3} %{buildroot}/%{_prefix}/lib/firewalld/services/
# Home directory for quassel user
install -d -m 0750 $RPM_BUILD_ROOT%{quassel_data_dir}
%clean
rm -rf $RPM_BUILD_ROOT
install -d -m 0750 %{buildroot}/%{quassel_data_dir}
%post common
touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null || :
touch --no-create %{_kf5_iconsdir}/hicolor &> /dev/null || :
%postun common
if [ $1 -eq 0 ] ; then
touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null
gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null || :
touch --no-create %{_kf5_iconsdir}/hicolor &> /dev/null
gtk-update-icon-cache %{_kf5_iconsdir}/hicolor &> /dev/null || :
fi
%posttrans common
gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null || :
gtk-update-icon-cache %{_kf5_iconsdir}/hicolor &> /dev/null || :
# Core pre/post macros.
@ -151,34 +154,35 @@ exit 0
%systemd_postun_with_restart quasselcore.service
%files
%defattr(-,root,root,-)
%{_kde4_bindir}/quassel
%{_kde4_datadir}/applications/kde4/quassel.desktop
%{_kf5_bindir}/quassel
%{_kf5_datadir}/applications/quassel.desktop
%files common
%defattr(-,root,root,-)
%doc COPYING README
%doc gpl-2.0.txt gpl-3.0.txt
%{_kde4_appsdir}/quassel/
%{_kde4_iconsdir}/hicolor/*/*/*
%doc README
%license COPYING gpl-2.0.txt gpl-3.0.txt
%{_kf5_datadir}/knotifications5/quassel.notifyrc
%{_kf5_datadir}/quassel/
%{_kf5_datadir}/icons/hicolor/*/*/*
%files core
%defattr(-,root,root,-)
%doc COPYING README
%doc gpl-2.0.txt gpl-3.0.txt
%{_kde4_bindir}/quasselcore
%doc README
%license COPYING gpl-2.0.txt gpl-3.0.txt
%{_kf5_bindir}/quasselcore
%dir %attr(-,quassel,quassel) %{quassel_data_dir}
%{_unitdir}/quasselcore.service
%config(noreplace) %{_sysconfdir}/quassel.conf
%{_prefix}/lib/firewalld/services/quassel.xml
%files client
%defattr(-,root,root,-)
%{_kde4_bindir}/quasselclient
%{_kde4_datadir}/applications/kde4/quasselclient.desktop
%{_kf5_bindir}/quasselclient
%{_kf5_datadir}/applications/quasselclient.desktop
%changelog
* Sat Apr 23 2016 Christian Dersch <lupinix@mailbox.org> - 0.12.3-5
- migrated to Qt5
- modernized spec
* Mon Mar 21 2016 Ben Rosser <rosser.bjr@gmail.com> 0.12.3-4
- Use attr macro instead of chown to install quassel user homedir, that's much safer
- BuildRequires firewalld-filesystem, so the post script actually works, whoops
@ -305,7 +309,7 @@ exit 0
* Fri Apr 24 2009 Steven M. Parrish <tuxbrewr@fedoraproject.org> - 0.4.1-1
- New upstream release
* Tue Apr 13 2009 Steven M. Parrish <tuxbrewr@fedoraproject.org> - 0.4.0-2
* Tue Apr 14 2009 Steven M. Parrish <tuxbrewr@fedoraproject.org> - 0.4.0-2
- Enabled KDE integration
* Fri Feb 20 2009 Steven M. Parirsh <tuxbrewr@fedoraproject.org> 0.4.0-1