+#
+# Conditional build:
+%bcond_with tests # build with tests
+
# TODO:
-# - proper place for *.pri,
-# - set ECM_MKSPECS_INSTALL_DIR in kde5-extra-cmake-modules
# - runtime Requires if any
-# - dir /usr/include/KF5 not packaged
-%define _state stable
-%define orgname kcoreaddons
+%define kdeframever 5.86
+%define qtver 5.14.0
+%define kfname kcoreaddons
Summary: Utilities for core application functionality and accessing the OS
-Name: kf5-%{orgname}
-Version: 5.0.0
-Release: 0.1
+Name: kf5-%{kfname}
+Version: 5.86.0
+Release: 1
License: GPL v2+/LGPL v2.1+
Group: X11/Libraries
-Source0: ftp://ftp.kde.org/pub/kde/%{_state}/frameworks/%{version}/%{orgname}-%{version}.tar.xz
-# Source0-md5: 90dcfc98dbb0c55981370e264fb6f21f
+Source0: https://download.kde.org/stable/frameworks/%{kdeframever}/%{kfname}-%{version}.tar.xz
+# Source0-md5: 1dd18515d8a807ca1e04c953be150dc0
+Patch0: flaky-tests.patch
URL: http://www.kde.org/
-BuildRequires: Qt5Core-devel >= 5.2.0
-BuildRequires: Qt5Test-devel
-BuildRequires: cmake >= 2.8.12
+BuildRequires: Qt5Core-devel >= %{qtver}
+%if %{with tests}
+BuildRequires: Qt5Test-devel >= %{qtver}
+BuildRequires: Qt5Widgets-devel >= %{qtver}
+%endif
+BuildRequires: cmake >= 3.5
BuildRequires: fam-devel
-BuildRequires: kf5-extra-cmake-modules >= 1.0.0
-BuildRequires: qt5-linguist
-BuildRequires: rpmbuild(macros) >= 1.164
-BuildRequires: shared-mime-info
+BuildRequires: kf5-extra-cmake-modules >= %{version}
+BuildRequires: ninja
+BuildRequires: qt5-linguist >= %{qtver}
+BuildRequires: rpmbuild(macros) >= 1.736
+BuildRequires: shared-mime-info >= 1.3
BuildRequires: tar >= 1:1.22
BuildRequires: xz
+Requires: Qt5Core >= %{qtver}
+Requires: kf5-dirs
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define qt5dir %{_libdir}/qt5
-
%description
KCoreAddons provides classes built on top of QtCore to perform various
tasks such as manipulating mime types, autosaving files, creating
and many more.
%package devel
-Summary: Header files for %{orgname} development
-Summary(pl.UTF-8): Pliki nagłówkowe dla programistów używających %{orgname}
+Summary: Header files for %{kfname} development
+Summary(pl.UTF-8): Pliki nagłówkowe dla programistów używających %{kfname}
Group: X11/Development/Libraries
Requires: %{name} = %{version}-%{release}
+Requires: Qt5Core >= %{qtver}
+Requires: cmake >= 3.5
%description devel
-Header files for %{orgname} development.
+Header files for %{kfname} development.
%description devel -l pl.UTF-8
-Pliki nagłówkowe dla programistów używających %{orgname}.
+Pliki nagłówkowe dla programistów używających %{kfname}.
%prep
-%setup -q -n %{orgname}-%{version}
+%setup -q -n %{kfname}-%{version}
+#%patch0 -p1
%build
install -d build
cd build
-%cmake \
- -DBIN_INSTALL_DIR=%{_bindir} \
- -DKCFG_INSTALL_DIR=%{_datadir}/config.kcfg \
- -DPLUGIN_INSTALL_DIR=%{qt5dir}/plugins \
- -DQT_PLUGIN_INSTALL_DIR=%{qt5dir}/plugins \
- -DQML_INSTALL_DIR=%{qt5dir}/qml \
- -DIMPORTS_INSTALL_DIR=%{qt5dirs}/imports \
- -DSYSCONF_INSTALL_DIR=%{_sysconfdir} \
- -DLIBEXEC_INSTALL_DIR=%{_libexecdir} \
- -DKF5_LIBEXEC_INSTALL_DIR=%{_libexecdir} \
- -DKF5_INCLUDE_INSTALL_DIR=%{_includedir} \
- -DECM_MKSPECS_INSTALL_DIR=%{qt5dir}/mkspecs/modules \
+%cmake -G Ninja \
+ -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
../
-%{__make}
+%ninja_build
+
+%{?with_tests:%ninja_build test}
%install
rm -rf $RPM_BUILD_ROOT
+%ninja_install -C build
-%{__make} -C build/ install \
- DESTDIR=$RPM_BUILD_ROOT
-
-%find_lang %{orgname}5_qt --with-qm
+%find_lang %{kfname}5_qt --with-qm --all-name --with-kde
%clean
rm -rf $RPM_BUILD_ROOT
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
-%files -f %{orgname}5_qt.lang
+%files -f %{kfname}5_qt.lang
%defattr(644,root,root,755)
%doc README.md
%{_datadir}/mime/packages/kde5.xml
-%attr(755,root,root) %ghost %{_libdir}/libKF5CoreAddons.so.5
-%attr(755,root,root) %{_libdir}/libKF5CoreAddons.so.5.0.0
+%attr(755,root,root) %{_libdir}/libKF5CoreAddons.so.*.*.*
+%ghost %{_libdir}/libKF5CoreAddons.so.5
+%{_datadir}/qlogging-categories5/kcoreaddons.categories
+%dir %{_datadir}/kf5/licenses
+%{_datadir}/kf5/licenses/ARTISTIC
+%{_datadir}/kf5/licenses/BSD
+%{_datadir}/kf5/licenses/GPL_V2
+%{_datadir}/kf5/licenses/GPL_V3
+%{_datadir}/kf5/licenses/LGPL_V2
+%{_datadir}/kf5/licenses/LGPL_V21
+%{_datadir}/kf5/licenses/LGPL_V3
+%{_datadir}/kf5/licenses/QPL_V1.0
+%{_datadir}/qlogging-categories5/kcoreaddons.renamecategories
%files devel
%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/desktoptojson
%{_includedir}/KF5/KCoreAddons
%{_includedir}/KF5/kcoreaddons_version.h
%{_libdir}/cmake/KF5CoreAddons
-%attr(755,root,root) %{_libdir}/libKF5CoreAddons.so
-%{qt5dir}/mkspecs/modules/qt_KCoreAddons.pri
+%{_libdir}/libKF5CoreAddons.so
+%{_libdir}/qt5/mkspecs/modules/qt_KCoreAddons.pri