-%define kdeappsver 18.04.0
-%define qtver 5.3.2
+#
+# 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 bovo
-Summary: Bovo
+Summary: A Gomoku like game
Name: ka5-%{kaname}
-Version: 18.04.0
+Version: 23.08.5
Release: 1
License: GPL v2+/LGPL v2.1+
-Group: X11/Libraries
-Source0: http://download.kde.org/stable/applications/%{kdeappsver}/src/%{kaname}-%{version}.tar.xz
-# Source0-md5: f30323585fc2ca846d31924863d658d2
+Group: X11/Applications/Games
+Source0: https://download.kde.org/stable/release-service/%{kdeappsver}/src/%{kaname}-%{version}.tar.xz
+# Source0-md5: 78b0dbacecbb1ed959f41c90c073742b
URL: http://www.kde.org/
+BuildRequires: Qt5Concurrent-devel
BuildRequires: Qt5Core-devel >= %{qtver}
-BuildRequires: cmake >= 2.8.12
-BuildRequires: kf5-extra-cmake-modules >= 1.4.0
+BuildRequires: Qt5Gui-devel >= 5.11.1
+BuildRequires: Qt5Qml-devel >= 5.11.1
+BuildRequires: Qt5Quick-devel >= 5.11.1
+BuildRequires: Qt5Svg-devel
+BuildRequires: Qt5Widgets-devel
+BuildRequires: cmake >= 3.20
+BuildRequires: gettext-devel
+BuildRequires: ka5-libkdegames-devel >= %{kdeappsver}
+BuildRequires: kf5-extra-cmake-modules >= %{kframever}
+BuildRequires: kf5-kcoreaddons-devel >= %{kframever}
+BuildRequires: kf5-kcrash-devel >= %{kframever}
+BuildRequires: kf5-kdbusaddons-devel >= %{kframever}
+BuildRequires: kf5-kdoctools-devel >= %{kframever}
+BuildRequires: kf5-kxmlgui-devel >= %{kframever}
+BuildRequires: ninja
BuildRequires: qt5-build >= %{qtver}
BuildRequires: rpmbuild(macros) >= 1.164
BuildRequires: shared-mime-info
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
-Bovo.
+Bovo is a Gomoku like game for two players, where the opponents
+alternate in placing their respective pictogram on the game board.
+(Also known as: Connect Five, Five in a row, X and O, Naughts and
+Crosses)
+
+%description -l pl.UTF-8
+Bovo to gra w kółko i krzyżyk (do pięciu w rzędzie).
%prep
%setup -q -n %{kaname}-%{version}
%build
-install -d build
-cd build
%cmake \
- -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
- ..
-%{__make}
+ -B build \
+ -G Ninja \
+ %{!?with_tests:-DBUILD_TESTING=OFF} \
+ -DHTML_INSTALL_DIR=%{_kdedocdir} \
+ -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
-%{__make} -C build install \
- DESTDIR=$RPM_BUILD_ROOT
+%ninja_install -C build
%find_lang %{kaname} --all-name --with-kde
%{_iconsdir}/hicolor/32x32/apps/bovo.png
%{_iconsdir}/hicolor/48x48/apps/bovo.png
%{_iconsdir}/hicolor/64x64/apps/bovo.png
-%dir %{_datadir}/kxmlgui5/bovo
-%{_datadir}/kxmlgui5/bovo/bovoui.rc
%{_datadir}/metainfo/org.kde.bovo.appdata.xml