-# TODO:
-# - dir /usr/include/KF5 not packaged
-# /usr/share/kf5 not packaged
-%define kdeframever 5.4
-%define qtver 5.3.2
+#
+# Conditional build:
+%bcond_with tests # build with tests
+%define kdeframever 5.104
+%define qtver 5.15.2
%define kfname kjs
Summary: Javascript engine
Name: kf5-%{kfname}
-Version: 5.4.0
-Release: 0.1
+Version: 5.104.0
+Release: 1
License: LGPL v2.1+
Group: X11/Libraries
-Source0: http://download.kde.org/stable/frameworks/%{kdeframever}/portingAids/%{kfname}-%{version}.tar.xz
-# Source0-md5: c8066f2d86bb1230b676582198a923ea
-Patch0: kf5-kjs-absolute.patch
+Source0: https://download.kde.org/stable/frameworks/%{kdeframever}/portingAids/%{kfname}-%{version}.tar.xz
+# Source0-md5: a319f24d7dd70821f5c74c09d5d03039
URL: http://www.kde.org/
BuildRequires: Qt5Core-devel >= %{qtver}
BuildRequires: Qt5Test-devel >= %{qtver}
BuildRequires: cmake >= 2.8.12
-BuildRequires: kf5-extra-cmake-modules >= 1.0.0
+BuildRequires: kf5-extra-cmake-modules >= %{version}
+BuildRequires: ninja
BuildRequires: pcre-devel
BuildRequires: perl-base
BuildRequires: pkgconfig
BuildRequires: rpmbuild(macros) >= 1.164
BuildRequires: tar >= 1:1.22
BuildRequires: xz
+Requires: kf5-dirs
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define qt5dir %{_libdir}/qt5
%prep
%setup -q -n %{kfname}-%{version}
-%patch0 -p1
%build
install -d build
cd build
-%cmake \
+%cmake -G Ninja \
+ %{!?with_tests:-DBUILD_TESTING=OFF} \
-DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
../
-%{__make}
+%ninja_build
+
+%if %{with tests}
+ctest
+%endif
+
%install
rm -rf $RPM_BUILD_ROOT
-
-%{__make} -C build/ install \
- DESTDIR=$RPM_BUILD_ROOT
+%ninja_install -C build
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/kjs5
%dir %{_datadir}/kf5/kjs
%{_datadir}/kf5/kjs/create_hash_table
-%attr(755,root,root) %ghost %{_libdir}/libKF5JS.so.5
-%attr(755,root,root) %{_libdir}/libKF5JS.so.5.4.0
-%attr(755,root,root) %ghost %{_libdir}/libKF5JSApi.so.5
-%attr(755,root,root) %{_libdir}/libKF5JSApi.so.5.4.0
+%ghost %{_libdir}/libKF5JS.so.5
+%attr(755,root,root) %{_libdir}/libKF5JS.so.*.*
+%ghost %{_libdir}/libKF5JSApi.so.5
+%attr(755,root,root) %{_libdir}/libKF5JSApi.so.*.*
+%{_mandir}/man1/kjs5.1*
+%lang(ca) /usr/share/man/ca/man1/kjs5.1*
+%lang(de) /usr/share/man/de/man1/kjs5.1*
+%lang(es) /usr/share/man/es/man1/kjs5.1*
+%lang(fr) /usr/share/man/fr/man1/kjs5.1*
+%lang(it) /usr/share/man/it/man1/kjs5.1*
+%lang(nl) /usr/share/man/nl/man1/kjs5.1*
+%lang(pt) /usr/share/man/pt/man1/kjs5.1*
+%lang(pt_BR) /usr/share/man/pt_BR/man1/kjs5.1*
+%lang(sv) /usr/share/man/sv/man1/kjs5.1*
+%lang(uk) /usr/share/man/uk/man1/kjs5.1*
%files devel
%defattr(644,root,root,755)
%{_includedir}/KF5/wtf
%{_includedir}/KF5/kjs_version.h
%{_libdir}/cmake/KF5JS
-%attr(755,root,root) %{_libdir}/libKF5JS.so
-%attr(755,root,root) %{_libdir}/libKF5JSApi.so
+%{_libdir}/libKF5JS.so
+%{_libdir}/libKF5JSApi.so
%{qt5dir}/mkspecs/modules/qt_KJS.pri
%{qt5dir}/mkspecs/modules/qt_KJSApi.pri