+#
+# Conditional build:
+%bcond_with tests # build with tests
# TODO:
# - runtime Requires if any
-%define kdeframever 5.23
-%define qtver 5.3.2
+%define kdeframever 5.249.0
+%define qtver 5.15.2
%define kfname karchive
Summary: Reading, creating, and manipulating file archives
Name: kf5-%{kfname}
-Version: 5.23.0
-Release: 1
+Version: 5.249.0
+Release: 0.1
License: GPL v2+/LGPL v2.1+
Group: X11/Libraries
-Source0: http://download.kde.org/stable/frameworks/%{kdeframever}/%{kfname}-%{version}.tar.xz
-# Source0-md5: 7d21c57bebdd6800143c1b03b4f9b4c3
+Source0: https://download.kde.org/unstable/frameworks/%{kdeframever}/%{kfname}-%{version}.tar.xz
+# Source0-md5: 354ea24fe189f46d17f5b165d824e13b
URL: http://www.kde.org/
-BuildRequires: Qt5Core-devel >= %{qtver}
-BuildRequires: Qt5Test-devel >= %{qtver}
+BuildRequires: Qt6Core-devel >= %{qtver}
+BuildRequires: Qt6Network-devel >= %{qtver}
+BuildRequires: Qt6Test-devel >= %{qtver}
BuildRequires: bzip2-devel
-BuildRequires: cmake >= 2.8.12
-BuildRequires: kf5-extra-cmake-modules >= 1.4.0
-BuildRequires: rpmbuild(macros) >= 1.164
+BuildRequires: cmake >= 3.16
+BuildRequires: kf5-extra-cmake-modules >= %{version}
+BuildRequires: qt6-linguist
+BuildRequires: ninja
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.736
BuildRequires: tar >= 1:1.22
BuildRequires: xz
BuildRequires: xz-devel
BuildRequires: zlib-devel
+BuildRequires: zstd-devel
+Requires: Qt6Core >= %{qtver}
Requires: kf5-dirs
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Summary(pl.UTF-8): Pliki nagłówkowe dla programistów używających %{kfname}
Group: X11/Development/Libraries
Requires: %{name} = %{version}-%{release}
+Requires: Qt6Core-devel >= %{qtver}
+Requires: cmake >= 3.16
%description devel
Header files for %{kfname} development.
%setup -q -n %{kfname}-%{version}
%build
-install -d build
-cd build
-%cmake \
- -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
- ..
-%{__make}
+%cmake -B build \
+ -G Ninja \
+ %{!?with_tests:-DBUILD_TESTING=OFF} \
+ -DKDE_INSTALL_USE_QT_SYS_PATHS=ON
+
+%ninja_build -C build
+
+%if %{with tests}
+%ninja_build -C build test
+%endif
+
%install
rm -rf $RPM_BUILD_ROOT
+%ninja_install -C build
-%{__make} -C build/ install \
- DESTDIR=$RPM_BUILD_ROOT
+%find_lang %{kfname} --all-name --with-qm
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
-%files
+%files -f %{kfname}.lang
%defattr(644,root,root,755)
%doc AUTHORS README.md
-%attr(755,root,root) %ghost %{_libdir}/libKF5Archive.so.5
-%attr(755,root,root) %{_libdir}/libKF5Archive.so.*.*
+%ghost %{_libdir}/libKF6Archive.so.6
+%attr(755,root,root) %{_libdir}/libKF6Archive.so.*.*
+%config(noreplace) %verify(not md5 mtime size) %{_datadir}/qlogging-categories6/karchive.categories
+%{_datadir}/qlogging-categories6/karchive.renamecategories
%files devel
%defattr(644,root,root,755)
-%{_includedir}/KF5/KArchive
-%{_includedir}/KF5/karchive_version.h
-%attr(755,root,root) %{_libdir}/libKF5Archive.so
-%{_libdir}/cmake/KF5Archive
-%{qt5dir}/mkspecs/modules/qt_KArchive.pri
+%{_includedir}/KF6/KArchive
+%{_libdir}/libKF6Archive.so
+%{_libdir}/cmake/KF6Archive