#
# Conditonal build:
%bcond_with full # "full" variant (libelektra-full with all plugins linked in)
-%bcond_with java # Java support: JNA binding and JNI plugin (needs Java 8)
+%bcond_without java # Java support: JNA binding and JNI plugin (needs Java 8)
%bcond_without glib # GLib/GObject binding
%bcond_without lua # Lua (5.2) support: binding and plugin
%bcond_without python2 # Python 2 support: binding and plugin
BuildRequires: gettext-tools
%{?with_glib:BuildRequires: glib2-devel >= 1:2.36}
%{?with_glib:BuildRequires: gobject-introspection-devel >= 1.38}
+# for binding
%{?with_java:BuildRequires: java-jna}
%{?with_java:BuildRequires: jdk >= 1.8}
+# jawt for plugin
+%{?with_java:BuildRequires: jre-X11 >= 1.8}
BuildRequires: libgcrypt-devel
%{?with_qt:BuildRequires: libmarkdown-devel}
BuildRequires: libstdc++-devel
BuildRequires: pkgconfig
%{?with_python2:BuildRequires: python-devel >= 1:2.7}
%{?with_python3:BuildRequires: python3-devel >= 1:3.2}
+BuildRequires: ronn
BuildRequires: rpm-pythonprov
BuildRequires: rpmbuild(macros) >= 1.612
BuildRequires: swig >= 2
%description gui -l pl.UTF-8
Oparty na Qt graficzny interfejs do Elektry.
+%package plugin-jni
+Summary: Java JNI plugin for Elektra
+Summary(pl.UTF-8): Wtyczka Java JNI dla Elektry
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+# jawt
+Requires: jre-X11 >= 1.8
+
+%description plugin-jni
+Java JNI plugin for Elektra. It allows to use plugins written in Java.
+
+%description plugin-jni -l pl.UTF-8
+Wtyczka Java JNI dla Elektry. Pozwala na używanie wtyczek napisanych w
+Javie.
+
+%package plugin-lua
+Summary: Lua plugin for Elektra
+Summary(pl.UTF-8): Wtyczka Lua dla Elektry
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: lua52-libs >= 5.2
+
+%description plugin-lua
+Lua plugin for Elektra. It allows to use plugins written in Lua.
+
+%description plugin-lua -l pl.UTF-8
+Wtyczka Lua dla Elektry. Pozwala na używanie wtyczek napisanych w Lua.
+
+%package plugin-python2
+Summary: Python 2 plugin for Elektra
+Summary(pl.UTF-8): Wtyczka Python 2 dla Elektry
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: python-libs >= 1:2.7
+
+%description plugin-python2
+Python 2 plugin for Elektra. It allows to use plugins written in
+Python 2.
+
+%description plugin-python2 -l pl.UTF-8
+Wtyczka 2 Python dla Elektry. Pozwala na używanie wtyczek napisanych w
+Pythonie 2.
+
+%package plugin-python3
+Summary: Python plugin for Elektra
+Summary(pl.UTF-8): Wtyczka Python dla Elektry
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: python3-libs >= 1:3.2
+
+%description plugin-python3
+Python 3 plugin for Elektra. It allows to use plugins written in
+Python 3.
+
+%description plugin-python3 -l pl.UTF-8
+Wtyczka Python 3 dla Elektry. Pozwala na używanie wtyczek napisanych w
+Pythonie 3.
+
%package -n bash-completion-elektra
Summary: Bash completion for Elektra commands
Summary(pl.UTF-8): Bashowe uzupełnianie parametrów dla poleceń z pakietu Elektra
%description glib-devel -l pl.UTF-8
Wiązanie GLib/GObject do Elektry - pliki programistyczne.
+%package -n java-elektra
+Summary: Java binding for Elektra
+Summary(pl.UTF-8): Wiązanie języka Java dla Elektry
+Group: Libraries
+Requires: %{name}-libs = %{version}-%{release}
+Requires: java-jna
+Requires: jre
+
+%description -n java-elektra
+Java binding for Elektra.
+
+%description -n java-elektra -l pl.UTF-8
+Wiązanie języka Java dla Elektry.
+
%package -n lua-elektra
Summary: Lua binding for Elektra
Summary(pl.UTF-8): Wiązanie języka Lua dla Elektry
%attr(755,root,root) %{_libdir}/elektra/libelektra-lineendings.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-list.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-logchange.so
-%if %{with lua}
-# R: lua52-libs
-%attr(755,root,root) %{_libdir}/elektra/libelektra-lua.so
-%endif
%attr(755,root,root) %{_libdir}/elektra/libelektra-mathcheck.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-network.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-noresolver.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-ni.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-null.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-path.so
-%if %{with python2}
-# R: python-libs
-%attr(755,root,root) %{_libdir}/elektra/libelektra-python2.so
-%endif
-%if %{with python3}
-# R: python3-libs
-%attr(755,root,root) %{_libdir}/elektra/libelektra-python.so
-%endif
%attr(755,root,root) %{_libdir}/elektra/libelektra-regexstore.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-rename.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-resolver.so
%attr(755,root,root) %{_libdir}/elektra/libelektra-xmltool.so
# R: yajl
%attr(755,root,root) %{_libdir}/elektra/libelektra-yajl.so
-%if "%{_libdir}" != "%{_prefix}/lib"
-%dir %{_prefix}/lib/elektra
-%endif
-%dir %{_prefix}/lib/elektra/tool_exec
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/benchmark-createtree
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/convert-fstab
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/convert-hosts
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/convert-inittab
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/convert-users
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/elektra-merge
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/elektra-mount
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/elektra-umount
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/elektrify-getenv
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/example-xorg
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/getenv
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/list-tools
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/mount-augeas
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/mount-info
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/mount-kde
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/mount-openicc
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/mount-spec
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/race
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/umount-all
-
+%dir %{_libdir}/elektra/tool_exec
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/benchmark-createtree
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/convert-fstab
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/convert-hosts
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/convert-inittab
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/convert-users
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/elektra-merge
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/elektra-mount
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/elektra-umount
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/elektrify-getenv
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/example-xorg
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/getenv
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/list-tools
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/mount-augeas
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/mount-info
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/mount-kde
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/mount-openicc
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/mount-spec
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/race
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/umount-all
%attr(755,root,root) /etc/profile.d/kdb.sh
%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/elektra
%{_datadir}/sgml/elektra
+%{_mandir}/man1/kdb.1*
+%{_mandir}/man1/kdb-check.1*
+%{_mandir}/man1/kdb-convert.1*
+%{_mandir}/man1/kdb-cp.1*
+%{_mandir}/man1/kdb-elektrify-getenv.1*
+%{_mandir}/man1/kdb-export.1*
+%{_mandir}/man1/kdb-file.1*
+%{_mandir}/man1/kdb-fstab.1*
+%{_mandir}/man1/kdb-get.1*
+%{_mandir}/man1/kdb-getmeta.1*
+%{_mandir}/man1/kdb-help.1*
+%{_mandir}/man1/kdb-import.1*
+%{_mandir}/man1/kdb-info.1*
+%{_mandir}/man1/kdb-introduction.1*
+%{_mandir}/man1/kdb-list.1*
+%{_mandir}/man1/kdb-list-tools.1*
+%{_mandir}/man1/kdb-ls.1*
+%{_mandir}/man1/kdb-lsmeta.1*
+%{_mandir}/man1/kdb-merge.1*
+%{_mandir}/man1/kdb-mount.1*
+%{_mandir}/man1/kdb-mv.1*
+%{_mandir}/man1/kdb-remount.1*
+%{_mandir}/man1/kdb-rm.1*
+%{_mandir}/man1/kdb-set.1*
+%{_mandir}/man1/kdb-setmeta.1*
+%{_mandir}/man1/kdb-sget.1*
+%{_mandir}/man1/kdb-shell.1*
+%{_mandir}/man1/kdb-test.1*
+%{_mandir}/man1/kdb-umount.1*
+%{_mandir}/man1/kdb-vset.1*
+%{_mandir}/man7/elektra-*.7*
%if 0
%files gen ?
%defattr(644,root,root,755)
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/gen
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/gen
%{py_sitescriptdir}/elektra_gen-%{version}-py*.egg-info
# FIXME: should be in elektra_gen subdir
%{py_sitescriptdir}/support
%files gui
%defattr(644,root,root,755)
-%attr(755,root,root) %{_prefix}/lib/elektra/tool_exec/qt-gui
+%attr(755,root,root) %{_libdir}/elektra/tool_exec/qt-gui
+%{_mandir}/man1/kdb-qt-gui.1*
+
+%if %{with java}
+%files plugin-jni
+%defattr(644,root,root,755)
+# R: jre with jawt
+%attr(755,root,root) %{_libdir}/elektra/libelektra-jni.so
+%endif
+
+%if %{with lua}
+%files plugin-lua
+%defattr(644,root,root,755)
+# R: lua52-libs
+%attr(755,root,root) %{_libdir}/elektra/libelektra-lua.so
+%endif
+
+%if %{with python2}
+%files plugin-python2
+%defattr(644,root,root,755)
+# R: python-libs
+%attr(755,root,root) %{_libdir}/elektra/libelektra-python2.so
+%endif
+
+%if %{with python3}
+%files plugin-python3
+%defattr(644,root,root,755)
+# R: python3-libs
+%attr(755,root,root) %{_libdir}/elektra/libelektra-python.so
+%endif
%files -n bash-completion-elektra
%defattr(644,root,root,755)
%{_pkgconfigdir}/gelektra-4.0.pc
%endif
+%if %{with java}
+%files -n java-elektra
+%defattr(644,root,root,755)
+%{_javadir}/elektra-1.jar
+%{_javadir}/elektra.jar
+%endif
+
%if %{with lua}
%files -n lua-elektra
%defattr(644,root,root,755)