-%define kdeappsver 21.08.1
-%define kframever 5.56.0
-%define qtver 5.9.0
+#
+# Conditional build:
+%bcond_with tests # build with tests
+%define kdeappsver 23.08.5
+%define kframever 5.94.0
+%define qtver 5.15.2
%define kaname pimcommon
Summary: Common PIM libraries
Name: ka5-%{kaname}
-Version: 21.08.1
+Version: 23.08.5
Release: 1
License: GPL v2+/LGPL v2.1+
Group: X11/Libraries
-Source0: http://download.kde.org/stable/release-service/%{kdeappsver}/src/%{kaname}-%{version}.tar.xz
-# Source0-md5: f745270a1cedd9452c8eb5c4ff85fffc
+Source0: https://download.kde.org/stable/release-service/%{kdeappsver}/src/%{kaname}-%{version}.tar.xz
+# Source0-md5: 1fc440ae9f505f70392ac3c8749b134a
URL: http://www.kde.org/
BuildRequires: Qt5Core-devel >= %{qtver}
BuildRequires: Qt5DBus-devel
BuildRequires: Qt5UiTools-devel >= 5.11.1
BuildRequires: Qt5Widgets-devel
BuildRequires: Qt5Xml-devel
-BuildRequires: cmake >= 2.8.12
+BuildRequires: cmake >= 3.20
BuildRequires: gettext-devel
BuildRequires: grantlee-qt5-devel >= 5.1
BuildRequires: ka5-akonadi-contacts-devel >= %{kdeappsver}
BuildRequires: kf5-kwidgetsaddons-devel >= %{kframever}
BuildRequires: kf5-kxmlgui-devel >= %{kframever}
BuildRequires: kf5-purpose-devel >= %{kframever}
+BuildRequires: ktextaddons-devel
BuildRequires: libxslt-progs
BuildRequires: ninja
BuildRequires: qt5-build >= %{qtver}
%setup -q -n %{kaname}-%{version}
%build
-install -d build
-cd build
-%cmake -G Ninja \
+%cmake -B build \
+ -G Ninja \
+ %{!?with_tests:-DBUILD_TESTING=OFF} \
-DHTML_INSTALL_DIR=%{_kdedocdir} \
- -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
- ..
-%ninja_build
+ -DKDE_INSTALL_USE_QT_SYS_PATHS=ON
+%ninja_build -C build
+
+%if %{with tests}
+ctest --test-dir build
+%endif
+
%install
rm -rf $RPM_BUILD_ROOT
%files -f %{kaname}.lang
%defattr(644,root,root,755)
-%ghost %{_libdir}/libKF5PimCommon.so.5
-%attr(755,root,root) %{_libdir}/libKF5PimCommon.so.5.*.*
-%ghost %{_libdir}/libKF5PimCommonAkonadi.so.5
-%attr(755,root,root) %{_libdir}/libKF5PimCommonAkonadi.so.5.*.*
-%attr(755,root,root) %{_libdir}/qt5/plugins/designer/pimcommonwidgets.so
-%attr(755,root,root) %{_libdir}/qt5/plugins/designer/pimcommonakonadiwidgets.so
%{_datadir}/qlogging-categories5/pimcommon.categories
%{_datadir}/qlogging-categories5/pimcommon.renamecategories
+%attr(755,root,root) %{_libdir}/qt5/plugins/designer/pimcommon5akonadiwidgets.so
+%attr(755,root,root) %{_libdir}/qt5/plugins/designer/pimcommon5widgets.so
+%ghost %{_libdir}/libKPim5PimCommon.so.5
+%attr(755,root,root) %{_libdir}/libKPim5PimCommon.so.5.*.*
+%ghost %{_libdir}/libKPim5PimCommonAkonadi.so.5
+%attr(755,root,root) %{_libdir}/libKPim5PimCommonAkonadi.so.5.*.*
%files devel
%defattr(644,root,root,755)
-%{_includedir}/KF5/PimCommon
-%{_includedir}/KF5/PimCommonAkonadi
-%{_includedir}/KF5/pimcommon
-%{_includedir}/KF5/pimcommon_version.h
-%{_includedir}/KF5/pimcommonakonadi
-%{_includedir}/KF5/pimcommonakonadi_version.h
-%{_libdir}/cmake/KF5PimCommon
-%{_libdir}/cmake/KF5PimCommonAkonadi
-%{_libdir}/libKF5PimCommon.so
-%{_libdir}/libKF5PimCommonAkonadi.so
%{_libdir}/qt5/mkspecs/modules/qt_PimCommon.pri
%{_libdir}/qt5/mkspecs/modules/qt_PimCommonAkonadi.pri
+%{_includedir}/KPim5/PimCommon
+%{_includedir}/KPim5/PimCommonAkonadi
+%{_libdir}/cmake/KPim5PimCommon
+%{_libdir}/cmake/KPim5PimCommonAkonadi
+%{_libdir}/libKPim5PimCommon.so
+%{_libdir}/libKPim5PimCommonAkonadi.so