Blob Blame History Raw
# https://github.com/Vacuum-IM/vacuum-im/commit/52c2a8c51bf79ee5ad605086091349a2351b0c55
%global         commit 52c2a8c51bf79ee5ad605086091349a2351b0c55
%global         shortcommit %(c=%{commit}; echo ${c:0:7})
%global         commitdate 20181129
%global         sname vacuum

Name:           %{sname}-im
Summary:        XMPP/Jabber client
Version:        1.3.0
Release:        0.13.%{commitdate}git%{shortcommit}%{?dist}
License:        GPLv3
Url:            http://www.vacuum-im.org/
Source0:        https://github.com/Vacuum-IM/vacuum-im/archive/%{commit}/%{name}-%{shortcommit}.tar.gz
# https://github.com/Vacuum-IM/vacuum-im/issues/940
Source1:        %{name}.appdata.xml
Patch0:         %{name}-fix-building-with-qt5.5.patch

BuildRequires:  cmake
BuildRequires:  pkgconfig(Qt5Core)
BuildRequires:  pkgconfig(Qt5Help)
BuildRequires:  pkgconfig(Qt5Xml)
BuildRequires:  pkgconfig(Qt5Multimedia)
BuildRequires:  pkgconfig(Qt5X11Extras)
BuildRequires:  pkgconfig(Qt5WebKitWidgets)
BuildRequires:  pkgconfig(Qt5WebKit)
BuildRequires:  pkgconfig(Qt5Svg)
BuildRequires:  pkgconfig(qxtglobalshortcut)
BuildRequires:  qtlockedfile-qt5-devel
BuildRequires:  chrpath
BuildRequires:  openssl-devel
BuildRequires:  hunspell-devel
BuildRequires:  libidn-devel
BuildRequires:  jdns-devel
BuildRequires:  zlib-devel
BuildRequires:  libXScrnSaver-devel
BuildRequires:  desktop-file-utils
BuildRequires:  libappstream-glib
Requires:      %{name}-data = %{version}
Requires:       fedora-logos
Requires:       hicolor-icon-theme

%description
Full-featured cross platform Jabber/XMPP client.
The core program is just a plugin loader - all functionality is made
available via plugins. This enforces modularity and ensures well defined
component interaction via interfaces.

%package data
Summary:       Images, themes and translatons for %{name}
BuildArch:     noarch
Requires:      %{name} = %{version}-%{release}

%description data
This package contains images, themes and translations.

%package devel
Summary:  Development Files for Vacuum-IM
License:  GPLv3
Requires: %{name}%{?_isa} = %{version}-%{release}

%description devel
This package includes files needed to develop Vacuum-IM modules.

%prep
%setup -q -n %{name}-%{commit}
%if 0%{?fedora} >= 30
%patch0 -p0
%endif

# Fix W: wrong-file-end-of-line-encoding /usr/share/doc/vacuum-im/AUTHORS
sed -i 's/\r$//' AUTHORS CHANGELOG README TRANSLATORS

# Fix W: spurious-executable-perm
chmod a-x src/plugins/spellchecker/{spellchecker,spellbackend}.cpp

# delete bundled qxtglobalshortcut sources
rm -rf src/thirdparty/qxtglobalshortcut

# delete bundled zlib sources
rm -rf src/thirdparty/zlib

%build
mkdir build
cd build
%cmake .. \
          -DINSTALL_LIB_DIR=%{_lib} \
          -DINSTALL_APP_DIR=%{name} \
          -DLFLAGS="${RPM_LD_FLAGS} -Wl,--as-needed" \
          -DCFLAGS="%{optflags}"    \
          -DCXXFLAGS="%{optflags}"

%make_build

%install
pushd build
%make_install
popd
install -Dm644 %{S:1} %{buildroot}/%{_datadir}/appdata/%{name}.appdata.xml
install -D -m644 resources/menuicons/shared/mainwindowlogo128.png %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/%{name}.png
install -D -m644 resources/menuicons/shared/mainwindowlogo96.png %{buildroot}%{_datadir}/icons/hicolor/96x96/apps/%{name}.png
install -D -m644 resources/menuicons/shared/mainwindowlogo64.png %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/%{name}.png
install -D -m644 resources/menuicons/shared/mainwindowlogo48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
install -D -m644 resources/menuicons/shared/mainwindowlogo32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
install -D -m644 resources/menuicons/shared/mainwindowlogo24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{name}.png
install -D -m644 resources/menuicons/shared/mainwindowlogo16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
sed -i "s/Exec=%{sname}/Exec=%{name}/;s/Icon=%{sname}/Icon=%{name}/" %{buildroot}%{_datadir}/applications/%{sname}.desktop
mv %{buildroot}%{_datadir}/applications/%{sname}.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop
mv %{buildroot}%{_datadir}/pixmaps/%{sname}.png %{buildroot}%{_datadir}/pixmaps/%{name}.png
mv %{buildroot}%{_bindir}/%{sname} %{buildroot}%{_bindir}/%{name}

find %{buildroot}%{_datadir}/%{name}/translations -name "*.qm" | sed 's:'%{buildroot}'::
s:.*/\([a-zA-Z]\{2\}\).qm:%lang(\1) \0:' > %{name}.lang

rm -f %{buildroot}%{_defaultdocdir}/%{name}/COPYING
rm -f %{buildroot}%{_datadir}/%{name}/resources/adiummessagestyles/renkoo/Contents/Resources/*LICENSE.txt

# Remove rpath E: binary-or-shlib-defines-rpath /usr/bin/vacuum-im ['$ORIGIN', '$ORIGIN/../lib64/']
chrpath --delete %{buildroot}%{_bindir}/%{name}

%check
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/appdata/%{name}.appdata.xml

%files -f %{name}.lang
%doc CHANGELOG AUTHORS README TRANSLATORS
%license COPYING
%license resources/adiummessagestyles/renkoo/Contents/Resources/*LICENSE.txt
%{_bindir}/%{name}
%dir %{_libdir}/%{name}/
%{_libdir}/%{name}/plugins
%{_libdir}/libvacuumutils.so.*
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/*
%dir %{_datadir}/icons/hicolor/*/apps
%{_datadir}/icons/hicolor/*/apps/%{name}.png
%{_datadir}/applications/%{name}.desktop
%{_datadir}/appdata/%{name}.appdata.xml
%{_datadir}/pixmaps/%{name}.png

%files data
%{_datadir}/%{name}

%files devel
%{_libdir}/libvacuumutils.so
%{_includedir}/%{name}

%changelog
* Fri Dec 07 2018 Martin Gansser <martinkg@fedoraproject.org> - 1.3.0-0.13.20181129git52c2a8c
- Update to 1.3.0-0.13.20181129git52c2a8c
- Add lang files

* Tue Nov 13 2018 Caolán McNamara <caolanm@redhat.com> - 1.3.0-0.12.20180214git01910e9
- rebuild for hunspell 1.7.0

* Tue Sep 25 2018 Martin Gansser <martinkg@fedoraproject.org> - 1.3.0-0.11.20180214git01910e9
- Remove BR minizip-compat-devel
- Add BR pkgconfig(Qt5Svg)

* Tue Aug 28 2018 Patrik Novotný <panovotn@redhat.com> - 1.3.0-0.10.20180214git01910e9
- change requires to minizip-compat(-devel), rhbz#1609830, rhbz#1615381

* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.0-0.9.20180214git01910e9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Wed Feb 28 2018 Martin Gansser <martinkg@fedoraproject.org> - 1.3.0-0.8.20180214git01910e9
- Remove scriptlets
- Update to 1.3.0-0.8.20180214git01910e9

* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.0-0.7.20180127git58ad802
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Sat Jan 27 2018 Martin Gansser <martinkg@fedoraproject.org> - 1.3.0-0.6.20180127git58ad802
- Update to 1.3.0-0.6.20180127git58ad802
- Dropped %%{name}-unbundle-qxtglobalshortcut.patch
- Delete bundled qxtglobalshortcut sources

* Thu Jan 18 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.0-0.5.20171028git6b614da
- Remove obsolete scriptlets

* Mon Dec 04 2017 Caolán McNamara <caolanm@redhat.com> - 1.3.0-0.4.20171028git6b614da
- rebuild for hunspell 1.6.2

* Fri Nov 03 2017 Martin Gansser <martinkg@fedoraproject.org> - 1.3.0-0.3.20171028git6b614da
- Adjusted summary description

* Sun Oct 29 2017 Martin Gansser <martinkg@fedoraproject.org> - 1.3.0-0.2.20171028git6b614da
- Update to 1.3.0-0.2.20171028git6b614da
- Do not run update-desktop-database on Fedora 25+ as per packaging guidelines
- Remove %%dir %%{_libdir}/%%{name}/plugins, it's marked as listed twice

* Thu Oct 26 2017 Martin Gansser <martinkg@fedoraproject.org> - 1.3.0-0.1.20170415git3f1cd42
- Add LFLAGS flag to fix unused-direct-shlib-dependency warnings
- Add %%{name}-unbundle-qxtglobalshortcut.patch
- Initial build