%global framework sonnet

# uncomment to enable bootstrap mode
#global bootstrap 1

%if !0%{?bootstrap}
%global tests 1
%endif

Name:           kf5-%{framework}
Version:        5.108.0
Release:        1
Summary:        KDE Frameworks 5 Tier 1 solution for spell checking

License:        LGPLv2+
URL:            https://invent.kde.org/frameworks/%{framework}

%global majmin %majmin_ver_kf5
%global stable %stable_kf5

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-qtdeclarative-devel
BuildRequires:  qt5-qttools-devel
BuildRequires:  zlib-devel
BuildRequires:  make

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


%build
%cmake_kf5

%make_build

%install
%make_install

%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 LICENSES/*.txt

%ldconfig_scriptlets core

%files core
%{_kf5_datadir}/qlogging-categories5/*categories
%{_kf5_libdir}/libKF5SonnetCore.so.*
%if ! 0%{?bootstrap}
%dir %{_kf5_plugindir}/sonnet/
%{_kf5_plugindir}/sonnet/sonnet_hunspell.so
%endif
%{_kf5_bindir}/parsetrigrams
%{_kf5_bindir}/gentrigrams
%{_kf5_qmldir}/org/kde/sonnet/

%ldconfig_scriptlets ui

%files ui -f sonnet5_qt.lang
%{_kf5_libdir}/libKF5SonnetUi.so.*
%{_kf5_qtplugindir}/designer/*5widgets.so

%files devel
%{_kf5_includedir}/Sonnet/
%{_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
* Thu Aug 03 2023 zhangkea <zhangkea@uniontech.cn> - 5.108.0-1
- Update version to 5.108.0

* Mon Dec 12 2022 lijian <lijian2@kylinos.cn> - 5.100.0-1
- update to upstream version 5.100.0

* Mon Sep 05 2022 liweiganga <liweiganga@uniontech.com> - 5.97.0-1
- update to upstream version 5.97.0

* Tue Jul 05 2022 peijiankang <peijiankang@kylinos.cn> - 5.95.0-1
- update to upstream version 5.95.0

* Sat Feb 12 2022 peijiankang <peijiankang@kylinos.cn> - 5.90.0-1
- update to upstream version 5.90.0

* Sun Jan 16 2022 peijiankang <peijiankang@kylinos.cn> - 5.88.0-1
- update to upstream version 5.88.0

* Mon Aug 17 2020 yeqinglong <yeqinglong@uniontech.com> - 5.55.0-1
- Initial release for OpenEuler
