[packages/elektra] - updated to 0.8.5 (massive changes, new soname, dropped tools and cpp libraries) - removed am patch

qboosh qboosh at pld-linux.org
Sun Mar 16 17:27:09 CET 2014


commit f33e068e515571013c7f1d18d9d89baa40216c7f
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Mar 16 17:30:13 2014 +0100

    - updated to 0.8.5 (massive changes, new soname, dropped tools and cpp libraries)
    - removed am patch, upstream switched to cmake
    - install plainly to /usr (already depends on /usr libs, nothing in / depends on it)

 elektra-am.patch |  33 --------
 elektra.spec     | 229 +++++++++++++++++++++----------------------------------
 2 files changed, 89 insertions(+), 173 deletions(-)
---
diff --git a/elektra.spec b/elektra.spec
index 3f847ec..e182f53 100644
--- a/elektra.spec
+++ b/elektra.spec
@@ -1,45 +1,34 @@
-# TODO: PLDify init script
+# TODO: use system nickel (in src/plugins/ni)
 #
 # Conditonal build:
-%bcond_with	db	# BerkeleyDB backend [slightly outdated]
-%bcond_with	gconf	# GConf backend [same as above]
-%bcond_with	python	# Python binding [same as above]
+%bcond_with	full	# "full" variant (libelektra-full with all plugins linked in)
 #
 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.7.2
-Release:	2
+Version:	0.8.5
+Release:	1
 License:	BSD
 Group:		Applications/System
 Source0:	http://www.libelektra.org/ftp/elektra/releases/%{name}-%{version}.tar.gz
-# Source0-md5:	29f14be7693ae627fb8cc30a079b10c9
+# Source0-md5:	6fe4a48d70cefc04c04639e5d85a0ddc
 Patch0:		%{name}-elektraenv.patch
-Patch1:		%{name}-am.patch
 URL:		http://www.libelektra.org/
-%{?with_gconf:BuildRequires:	GConf2-devel}
-BuildRequires:	autoconf >= 2.59
-BuildRequires:	automake
-%{?with_db:BuildRequires:	db-devel}
+BuildRequires:	cmake >= 2.6
+BuildRequires:	dbus-devel
 BuildRequires:	doxygen
 BuildRequires:	gettext-devel
 BuildRequires:	libstdc++-devel
-BuildRequires:	libltdl-devel
-BuildRequires:	libtool
 BuildRequires:	libxml2-devel
 BuildRequires:	libxslt-progs
 BuildRequires:	pkgconfig
 %{?with_python:BuildRequires:	python-devel}
+BuildRequires:	yajl-devel
 Requires:	%{name}-libs = %{version}-%{release}
 Requires:	mktemp
-# for /usr/share/sgml dir
-Requires:	sgml-common
 Obsoletes:	registry
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define		_bindir		/bin
-%define		_sbindir	/sbin
-
 %description
 The Elektra Project provides a framework to store generic
 configuration data in an hierarchical key-value pair database, instead
@@ -62,6 +51,7 @@ konfiguracji innych aplikacji, ułatwiając ich integrację.
 Summary:	Elektra Project libraries
 Summary(pl.UTF-8):	Biblioteki projektu Elektra
 Group:		Libraries
+Obsoletes:	elektra-cpp < 0.8
 Conflicts:	elektra < 0.7
 
 %description libs
@@ -112,25 +102,13 @@ This package contains static libraries for Elektra Project.
 %description static -l pl.UTF-8
 Ten pakiet zawiera statyczne biblioteki projektu Elektra.
 
-%package cpp
-Summary:	C++ interface for Elektra library
-Summary(pl.UTF-8):	Interfejs C++ do biblioteki Elektra
-Group:		Libraries
-Requires:	%{name}-libs = %{version}-%{release}
-
-%description cpp
-C++ interface for Elektra library.
-
-%description cpp -l pl.UTF-8
-Interfejs C++ do biblioteki Elektra.
-
 %package cpp-devel
 Summary:	Header files of C++ interface for Elektra library
 Summary(pl.UTF-8):	Pliki nagłówkowe interfejsu C++ do biblioteki Elektra
 Group:		Development/Libraries
-Requires:	%{name}-cpp = %{version}-%{release}
-Requires:	%{name}-libs = %{version}-%{release}
+Requires:	%{name}-devel = %{version}-%{release}
 Requires:	libstdc++-devel
+Obsoletes:	elektra-cpp-static < 0.8
 
 %description cpp-devel
 Header files of C++ interface for Elektra library.
@@ -138,153 +116,124 @@ Header files of C++ interface for Elektra library.
 %description cpp-devel -l pl.UTF-8
 Pliki nagłówkowe interfejsu C++ do biblioteki Elektra.
 
-%package cpp-static
-Summary:	Static library of C++ interface for Elektra library
-Summary(pl.UTF-8):	Biblioteka statyczna interfejsu C++ do biblioteki Elektra
-Group:		Development/Libraries
-Requires:	%{name}-cpp-devel = %{version}-%{release}
-
-%description cpp-static
-Static library of C++ interface for Elektra library.
-
-%description cpp-static -l pl.UTF-8
-Biblioteka statyczna interfejsu C++ do biblioteki Elektra.
-
 %prep
 %setup -q
 %patch0 -p1
-%patch1 -p1
 
 %build
-cp -f /usr/share/gettext/config.rpath .
-%{__libtoolize}
-%{__aclocal} -I m4
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-	--libdir=/%{_lib} \
-	--disable-ltdl-install \
-	%{?with_db:--enable-berkeleydb} \
-	%{?with_gconf:--enable-gconf} \
-	--enable-passwd \
-	%{?with_python:--enable-python}
-# also outdated (as of 0.7.2): daemon, fstab
+install -d build
+cd build
+%cmake .. \
+	%{!?with_full:-DBUILD_FULL=OFF} \
+	-DPLUGINS=ALL \
+	-DTARGET_CMAKE_FOLDER=%{_datadir}/cmake/Modules
+
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/sysconfig
 
-%{__make} install \
-	DESTDIR=$RPM_BUILD_ROOT \
-	elektrainitdir=/etc/rc.d/init.d
+%{__make} -C build install \
+	DESTDIR=$RPM_BUILD_ROOT
 
-%{!?with_berkeleydb:%{__rm} $RPM_BUILD_ROOT/%{_lib}/elektra/libelektra-ddefault.so}
+echo 'RUN="no"' > $RPM_BUILD_ROOT/etc/sysconfig/elektra
+install -D scripts/elektraenv.sh $RPM_BUILD_ROOT/etc/profile.d/elektraenv.sh
+install -D src/plugins/xmltool/xmlschema/elektra.xsd $RPM_BUILD_ROOT%{_datadir}/sgml/elektra/elektra.xsd
+
+# just tests
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/elektra/tool_exec \
+	$RPM_BUILD_ROOT%{_datadir}/elektra/test_data
 
 # prepare docs
-rm -rf installed-doc
+%{__rm} -rf installed-doc
 install -d installed-doc
-mv $RPM_BUILD_ROOT%{_docdir}/%{name}-devel installed-doc/elektra-api
-mv $RPM_BUILD_ROOT%{_docdir}/%{name}/scripts installed-doc/scripts
-rmdir $RPM_BUILD_ROOT%{_docdir}/%{name}
-
-echo 'RUN="no"' > $RPM_BUILD_ROOT/etc/sysconfig/elektra
-
-# move devel files to /usr
-%{__mv} $RPM_BUILD_ROOT/%{_lib}/libelektra.a $RPM_BUILD_ROOT%{_libdir}
-ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libelektra.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libelektra.so
-%{__rm} $RPM_BUILD_ROOT/%{_lib}/libelektra.so
+%{__mv} $RPM_BUILD_ROOT%{_docdir}/%{name}-api installed-doc/elektra-api
 
-# dlopened modules
-%{__rm} $RPM_BUILD_ROOT/%{_lib}/elektra/*.{la,a}
-# obsoleted by pkg-config
-%{__rm} $RPM_BUILD_ROOT/%{_lib}/lib*.la \
-	$RPM_BUILD_ROOT%{_libdir}/lib*.la
+# "static" variant (with libelektra-static and thus all plugins linked in);
+# we don't need it
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/kdb-static
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post
-# Create basic key structure for apps
-kdb set -t dir system/sw || :
-kdb set system/sw/kdb/schemapath "%{_datadir}/sgml/elektra-0.7.1/elektra.xsd"
-
 %post	libs -p /sbin/ldconfig
 %postun	libs -p /sbin/ldconfig
 
-%post	cpp -p /sbin/ldconfig
-%postun	cpp -p /sbin/ldconfig
-
 %files
 %defattr(644,root,root,755)
-%doc AUTHORS COPYING ChangeLog NEWS README TODO doc/standards installed-doc/scripts
-%attr(755,root,root) /bin/kdb
-%attr(755,root,root) /bin/kdb_static
-%attr(755,root,root) /bin/preload
-%attr(755,root,root) /bin/preload_static
-%dir /%{_lib}/elektra
-%attr(755,root,root) /%{_lib}/elektra/libelektra-default.so
-%attr(755,root,root) /%{_lib}/elektra/libelektra-filesys.so*
-%attr(755,root,root) /%{_lib}/elektra/libelektra-hosts.so*
-%attr(755,root,root) /%{_lib}/elektra/libelektra-passwd.so*
-%if %{with db}
-%attr(755,root,root) /%{_lib}/elektra/libelektra-berkeleydb.so*
-%attr(755,root,root) /%{_lib}/elektra/libelektra-ddefault.so
-%endif
-%if %{with gconf}
-%attr(755,root,root) /%{_lib}/elektra/libelektra-gconf.so*
+%doc doc/{AUTHORS,CHANGES,COPYING,DESIGN,GOALS,NEWS,README,SECURITY,SPECIFICATION,todo}
+# doc/standards installed-doc/scripts
+%attr(755,root,root) %{_bindir}/kdb
+%if %{with full}
+%attr(755,root,root) %{_bindir}/kdb-full
 %endif
-%attr(754,root,root) /etc/rc.d/init.d/kdbd
+%dir %{_libdir}/elektra
+%attr(755,root,root) %{_libdir}/elektra/libelektra-ccode.so
+# R: dbus
+%attr(755,root,root) %{_libdir}/elektra/libelektra-dbus.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-doc.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-dump.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-error.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-fstab.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-glob.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-hexcode.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-hidden.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-hosts.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-iconv.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-network.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
+%attr(755,root,root) %{_libdir}/elektra/libelektra-resolver.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-simpleini.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-struct.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-success.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-syslog.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-tcl.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-template.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-timeofday.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-tracer.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-type.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-uname.so
+%attr(755,root,root) %{_libdir}/elektra/libelektra-validation.so
+# R: libxml2
+%attr(755,root,root) %{_libdir}/elektra/libelektra-xmltool.so
+# R: yajl
+%attr(755,root,root) %{_libdir}/elektra/libelektra-yajl.so
 %attr(755,root,root) /etc/profile.d/elektraenv.sh
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/elektra
-%{_datadir}/sgml/elektra-0.7.1
-%{_mandir}/man1/kdb.1*
-%{_mandir}/man5/elektra.5*
-%{_mandir}/man7/elektra.7*
+%{_datadir}/sgml/elektra
 
 %files libs
 %defattr(644,root,root,755)
-%attr(755,root,root) /%{_lib}/libelektra.so.*.*.*
-%attr(755,root,root) %ghost /%{_lib}/libelektra.so.3
-%attr(755,root,root) %{_libdir}/libelektratools.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libelektratools.so.2
+%attr(755,root,root) %{_libdir}/libelektra.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libelektra.so.4
+%if %{with full}
+%attr(755,root,root) %{_libdir}/libelektra-full.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libelektra-full.so.4
+%endif
 
 %files devel
 %defattr(644,root,root,755)
 %doc installed-doc/elektra-api/*
 %attr(755,root,root) %{_libdir}/libelektra.so
-%attr(755,root,root) %{_libdir}/libelektratools.so
-%{_includedir}/kdb*.h
+%if %{with full}
+%attr(755,root,root) %{_libdir}/libelektra-full.so
+%endif
+%dir %{_includedir}/elektra
+%{_includedir}/elektra/*.h
 %{_pkgconfigdir}/elektra.pc
-%{_pkgconfigdir}/elektratools.pc
-%{_mandir}/man3/kdb*.3*
-# too generic name, conflicting with e.g. allegro
-#%{_mandir}/man3/key.3*
-%{_mandir}/man3/keymeta.3*
-%{_mandir}/man3/keyname.3*
-%{_mandir}/man3/keyset.3*
-%{_mandir}/man3/keytest.3*
-%{_mandir}/man3/keyvalue.3*
+%{_datadir}/cmake/Modules/FindElektra.cmake
+%{_mandir}/man3/deprecated.3elektra*
+%{_mandir}/man3/kdb*.3elektra*
+%{_mandir}/man3/key*.3elektra*
+%{_mandir}/man3/plugin.3elektra*
 
 %files static
 %defattr(644,root,root,755)
-%{_libdir}/libelektra.a
-%{_libdir}/libelektratools.a
-
-%files cpp
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libelektra-cpp.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libelektra-cpp.so.0
+%{_libdir}/libelektra-static.a
 
 %files cpp-devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libelektra-cpp.so
-%{_includedir}/kdb
-%{_includedir}/key
-%{_includedir}/keyset
-%{_pkgconfigdir}/elektracpp.pc
-
-%files cpp-static
-%defattr(644,root,root,755)
-%{_libdir}/libelektra-cpp.a
+%{_includedir}/elektra/*.hpp
diff --git a/elektra-am.patch b/elektra-am.patch
deleted file mode 100644
index 17a0c49..0000000
--- a/elektra-am.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- elektra-0.7.0/doc/Makefile.am.orig	2008-10-16 20:53:31.000000000 +0200
-+++ elektra-0.7.0/doc/Makefile.am	2013-03-26 20:58:28.370640680 +0100
-@@ -198,8 +198,8 @@
- 	list=`find $$api_d`; for p in $$list; do \
- 	if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- 	f="`echo $$p | sed -e 's|^.*/||'`"; \
--	  echo " $(develdocDATA_INSTALL) $$d$$p $(DESTDIR)$(apihtmldir)/$$f"; \
--	  $(develdocDATA_INSTALL) $$d$$p $(DESTDIR)$(apihtmldir)/$$f; \
-+	  echo " $(install_sh_DATA) $$d$$p $(DESTDIR)$(apihtmldir)/$$f"; \
-+	  $(install_sh_DATA) $$d$$p $(DESTDIR)$(apihtmldir)/$$f; \
- 	done
- 
- uninstall-develdocDATA:
---- elektra-0.7.2/src/bindings/cpp/Makefile.am.orig	2010-04-27 09:17:25.000000000 +0200
-+++ elektra-0.7.2/src/bindings/cpp/Makefile.am	2013-03-27 20:00:49.167160035 +0100
-@@ -12,7 +12,7 @@
- 
- objects = kdb.o key.o keyset.o
- 
--lib_LIBRARIES = libelektra-cpp.a
-+ulib_LIBRARIES = libelektra-cpp.a
- libelektra_cpp_a_SOURCES = $(sources)
- libelektra_cpp_a_DEPENDENCIES =
- libelektra_cpp_a_CXXFLAGS = $(cxxflags)
-@@ -20,7 +20,7 @@
- libelektra_cpp_a_LIBADD =
- BUILT_SOURCES =
- 
--lib_LTLIBRARIES = libelektra-cpp.la
-+ulib_LTLIBRARIES = libelektra-cpp.la
- libelektra_cpp_la_SOURCES = $(sources)
- libelektra_cpp_la_DEPENDENCIES =
- libelektra_cpp_la_CXXFLAGS = $(cxxflags)
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/elektra.git/commitdiff/f33e068e515571013c7f1d18d9d89baa40216c7f



More information about the pld-cvs-commit mailing list