# TODO:
+# - subpackage crypto modules? (-plugin-crypto_{botan,gcrypt,openssl} or so)
# - force maven to work without network, enable java_mvn
# - haskell plugin (BR: ghc >= 8.0.0, cabal)
# - rest-backend (BR: cppcms boost >= 1.45 libjwt openssl)
%undefine with_gsettings
%endif
%if %{without java}
-%undefine with_java_mvn}
+%undefine with_java_mvn
%endif
Summary: A key/value pair database to store software configurations
Summary(pl.UTF-8): Baza kluczy/wartości do przechowywania konfiguracji oprogramowania
Name: elektra
Version: 0.8.23
-Release: 11
+Release: 21
License: BSD
Group: Applications/System
Source0: https://www.libelektra.org/ftp/elektra/releases/%{name}-%{version}.tar.gz
# Source0-md5: 0a065ed381a59b6213bd46fd3c82ba83
Patch0: %{name}-zsh.patch
Patch1: %{name}-no-markdown.patch
+Patch2: disable-broken-tests.patch
+Patch3: gcc11.patch
URL: https://www.libelektra.org/
%if %{with qt}
BuildRequires: Qt5Core-devel >= 5.3
%endif
BuildRequires: augeas-devel >= 1.0
BuildRequires: boost-devel
+BuildRequires: botan2-devel
BuildRequires: cmake >= 3.0
BuildRequires: curl-devel >= 7.28.0
BuildRequires: dbus-devel
%{?with_python2:BuildRequires: python-devel >= 1:2.7}
%{?with_python3:BuildRequires: python3-devel >= 1:3.2}
BuildRequires: ronn
+BuildRequires: rpm-build >= 4.6
BuildRequires: rpm-pythonprov
BuildRequires: rpmbuild(macros) >= 1.612
%{?with_ruby:BuildRequires: ruby-devel}
BuildRequires: xerces-c-devel >= 3.0.0
BuildRequires: yajl-devel
BuildRequires: yaml-cpp-devel >= 0.5
+BuildConflicts: java-gnu-classpath
Requires: %{name}-libs = %{version}-%{release}
Requires: mktemp
# plugins dependencies (move to individual plugin subpackage if created)
Requires: curl-libs >= 7.28.0
Requires: libgit2 >= 0.24.1
Requires: yaml-cpp >= 0.5
-Obsoletes: registry
+Obsoletes: registry < 0.4
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Summary(pl.UTF-8): Biblioteki projektu Elektra
Group: Libraries
Obsoletes: elektra-cpp < 0.8
+Obsoletes: registry-libs < 0.4
Conflicts: elektra < 0.7
%description libs
Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja API projektu Elektra
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
+Obsoletes: registry-devel < 0.4
+Obsoletes: registry-examples < 0.4
%description devel
This package contains the include files and API manual pages to use
%description io-uv
Elektra I/O binding using uv.
-%description io-glib -l pl.UTF-8
+%description io-uv -l pl.UTF-8
Wiązanie we/wy Elektry wykorzystujące uv.
%package io-uv-devel
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
+%patch3 -p1
%{__sed} -i -e '1s,/usr/bin/env bash,/bin/bash,' $(grep -l '/usr/bin/env bash' -r scripts)
%{__sed} -i -e '1s,/usr/bin/env python,%{__python},' scripts/{find-tools,update-infos-status}
+%{__rm} -r src/bindings/io/test
+%{__rm} src/bindings/io/uv/testio_uv.c
+%{__rm} src/bindings/io/glib/testio_glib.c
+
%build
install -d build
cd build
-DTOOLS="kdb;race%{?with_gen:;gen}%{?with_qt:;qt-gui}" \
-DBUILD_STATIC=ON
-%{__make} -j1
+%{__make}
%install
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/elektra/libelektra-conditionals.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-constants.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-counter.so
-# TODO: R: botan
-#%attr(755,root,root) %{_libdir}/elektra/libelektra-crypto_botan.so
+# R: botan
+%attr(755,root,root) %{_libdir}/elektra/libelektra-crypto_botan.so
# R: libgcrypt
%attr(755,root,root) %{_libdir}/elektra/libelektra-crypto_gcrypt.so
# R: openssl
%{_pkgconfigdir}/elektra-notification.pc
%{_datadir}/cmake/Modules/ElektraConfig*.cmake
%{_datadir}/cmake/Modules/ElektraTargetsLibelektra*.cmake
+# FIXME: x86_64 doxygen uses lower case, while the other use upper, needs investigation
+%{_mandir}/man3/[Ii]nvoke.3elektra*
%{_mandir}/man3/Opmphm*.3elektra*
%{_mandir}/man3/api.3elektra*
%{_mandir}/man3/dbus.c.3elektra*
%{_mandir}/man3/deprecated.3elektra*
%{_mandir}/man3/global.c.3elektra*
-%{_mandir}/man3/invoke.3elektra*
%{_mandir}/man3/invoke.c.3elektra*
%{_mandir}/man3/io.c.3elektra*
%{_mandir}/man3/io_doc.c.3elektra*