kf5-sonnet/kf5-sonnet.spec
2020-08-18 09:05:54 +08:00

136 lines
3.4 KiB
RPMSpec

%global framework sonnet
# uncomment to enable bootstrap mode
#global bootstrap 1
%if !0%{?bootstrap}
%global tests 1
%endif
Name: kf5-%{framework}
Version: 5.55.0
Release: 1
Summary: KDE Frameworks 5 Tier 1 solution for spell checking
License: LGPLv2+
URL: https://cgit.kde.org/%{framework}.git
%global majmin %(echo %{version} | cut -d. -f1-2)
%global revision %(echo %{version} | cut -d. -f3)
%if %{revision} >= 50
%global stable unstable
%else
%global stable stable
%endif
Source0: http://download.kde.org/%{stable}/frameworks/%{majmin}/%{framework}-%{version}.tar.xz
# filter plugin provides
%global __provides_exclude_from ^(%{_kf5_plugindir}/.*\\.so)$
BuildRequires: extra-cmake-modules >= %{majmin}
%if ! 0%{?bootstrap}
BuildRequires: hunspell-devel
%endif
BuildRequires: kf5-rpm-macros >= %{majmin}
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qttools-devel
BuildRequires: zlib-devel
Requires: kf5-filesystem >= %{majmin}
Requires: %{name}-core%{?_isa} = %{version}-%{release}
Requires: %{name}-ui%{?_isa} = %{version}-%{release}
%description
KDE Frameworks 5 Tier 1 solution for spell checking.
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: qt5-qtbase-devel
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package core
Summary: Non-gui part of the Sonnet framework
%description core
Non-gui part of the Sonnet framework provides low-level spell checking tools
%package ui
Summary: GUI part of the Sonnet framework
Requires: %{name}-core%{?_isa} = %{version}-%{release}
%description ui
GUI part of the Sonnet framework provides widgets with spell checking support.
%prep
%autosetup -n %{framework}-%{version} -p1
# workaround multilib conflicts in trigrams.map by using QMap instead of QHash
# https://bugzilla.redhat.com/show_bug.cgi?id=1262746
# https://bugzilla.redhat.com/show_bug.cgi?id=1669800
# https://bugs.kde.org/show_bug.cgi?id=403630
sed -i.multilib -e 's|QHash|QMap|g' data/parsetrigrams.cpp
%build
mkdir %{_target_platform}
pushd %{_target_platform}
%{cmake_kf5} .. \
%{?tests:-DBUILD_TESTING:BOOL=ON}
popd
%make_build -C %{_target_platform}
%install
make install/fast DESTDIR=%{buildroot} -C %{_target_platform}
%find_lang_kf5 sonnet5_qt
%check
%if 0%{?tests}
export CTEST_OUTPUT_ON_FAILURE=1
make test ARGS="--output-on-failure --timeout 300" -C %{_target_platform} ||:
%endif
%files
%doc README.md
%license COPYING.LIB
%ldconfig_scriptlets core
%files core
%{_kf5_sysconfdir}/xdg/sonnet.*
%{_kf5_libdir}/libKF5SonnetCore.so.*
%if ! 0%{?bootstrap}
%dir %{_kf5_plugindir}/sonnet/
%{_kf5_plugindir}/sonnet/sonnet_hunspell.so
%endif
%{_kf5_bindir}/parsetrigrams
%{_kf5_bindir}/gentrigrams
%dir %{_kf5_datadir}/kf5/sonnet/
%{_kf5_datadir}/kf5/sonnet/trigrams.map
%ldconfig_scriptlets ui
%files ui -f sonnet5_qt.lang
%{_kf5_libdir}/libKF5SonnetUi.so.*
%files devel
%{_kf5_includedir}/sonnet_version.h
%{_kf5_includedir}/SonnetCore/
%{_kf5_includedir}/SonnetUi/
%{_kf5_libdir}/libKF5SonnetCore.so
%{_kf5_libdir}/libKF5SonnetUi.so
%{_kf5_libdir}/cmake/KF5Sonnet/
%{_kf5_archdatadir}/mkspecs/modules/qt_SonnetCore.pri
%{_kf5_archdatadir}/mkspecs/modules/qt_SonnetUi.pri
%changelog
* Mon Aug 17 2020 yeqinglong <yeqinglong@uniontech.com> - 5.55.0-1
- Initial release for OpenEuler