summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Weber <xmw@gentoo.org>2012-11-04 10:40:57 +0000
committerMichael Weber <xmw@gentoo.org>2012-11-04 10:40:57 +0000
commit3747c35942ad5b4fdf0290276af7ea50386bb8a9 (patch)
treecf58db23860ed924a0b42e4045fac455608e8138 /app-admin/elektra
parentShutup repoman on the local useflags. (diff)
downloadgentoo-2-3747c35942ad5b4fdf0290276af7ea50386bb8a9.tar.gz
gentoo-2-3747c35942ad5b4fdf0290276af7ea50386bb8a9.tar.bz2
gentoo-2-3747c35942ad5b4fdf0290276af7ea50386bb8a9.zip
Version bump, big thanks to Andreas Sturmlechner doing all the work on bug 429722.
(Portage version: 2.1.11.31/cvs/Linux x86_64, signed Manifest commit with key 62EEF090)
Diffstat (limited to 'app-admin/elektra')
-rw-r--r--app-admin/elektra/ChangeLog10
-rw-r--r--app-admin/elektra/elektra-0.8.3.ebuild73
-rw-r--r--app-admin/elektra/files/elektra-0.8.3-fix-yajl-if-user-config.patch31
-rw-r--r--app-admin/elektra/files/elektra-0.8.3-introduce-attributes.patch27
-rw-r--r--app-admin/elektra/metadata.xml2
5 files changed, 142 insertions, 1 deletions
diff --git a/app-admin/elektra/ChangeLog b/app-admin/elektra/ChangeLog
index b1bec206cd43..759d05732d2f 100644
--- a/app-admin/elektra/ChangeLog
+++ b/app-admin/elektra/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for app-admin/elektra
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-admin/elektra/ChangeLog,v 1.7 2012/11/04 09:35:03 xmw Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-admin/elektra/ChangeLog,v 1.8 2012/11/04 10:40:57 xmw Exp $
+
+*elektra-0.8.3 (04 Nov 2012)
+
+ 04 Nov 2012; Michael Weber <xmw@gentoo.org> +elektra-0.8.3.ebuild,
+ +files/elektra-0.8.3-fix-yajl-if-user-config.patch,
+ +files/elektra-0.8.3-introduce-attributes.patch:
+ Version bump, big thanks to Andreas Sturmlechner doing all the work on bug
+ 429722.
*elektra-0.7.1-r1 (04 Nov 2012)
diff --git a/app-admin/elektra/elektra-0.8.3.ebuild b/app-admin/elektra/elektra-0.8.3.ebuild
new file mode 100644
index 000000000000..a28dc19f34ef
--- /dev/null
+++ b/app-admin/elektra/elektra-0.8.3.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-admin/elektra/elektra-0.8.3.ebuild,v 1.1 2012/11/04 10:40:57 xmw Exp $
+
+EAPI=4
+
+inherit cmake-utils eutils
+
+DESCRIPTION="universal and secure framework to store config parameters in a hierarchical key-value pair mechanism"
+HOMEPAGE="http://sourceforge.net/projects/elektra/"
+SRC_URI="ftp://ftp.markus-raab.org/${PN}/releases/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="dbus doc examples iconv inifile simpleini static-libs syslog tcl test xml yajl"
+
+RDEPEND="dev-libs/libxml2"
+DEPEND="${RDEPEND}
+ sys-devel/libtool
+ doc? ( app-doc/doxygen )
+ iconv? ( virtual/libiconv )
+ test? ( dev-libs/libxml2[static-libs] )
+ yajl? ( <dev-libs/yajl-2 )"
+
+src_configure() {
+ local my_plugins="ccode;dump;error;fstab;glob;hexcode;hidden;hosts;network;ni;null;path;resolver;struct;success;template;timeofday;tracer;type;validation"
+
+ #fix QA issues with upstream patches
+ epatch "${FILESDIR}/${P}-introduce-attributes.patch"
+ epatch "${FILESDIR}/${P}-fix-yajl-if-user-config.patch"
+
+ #move doc files to correct location
+ sed -e "s/elektra-api/${PF}/" \
+ -i cmake/ElektraCache.cmake || die
+
+ use dbus && my_plugins+=";dbus"
+ use doc && my_plugins+=";doc"
+ use iconv && my_plugins+=";iconv"
+ use inifile && my_plugins+=";simpleini"
+ use syslog && my_plugins+=";syslog"
+ use tcl && my_plugins+=";tcl"
+ use xml && my_plugins+=";xmltool"
+ use yajl && my_plugins+=";yajl"
+
+ local mycmakeargs=(
+ "-DPLUGINS=${my_plugins}"
+ "-DLATEX_COMPILER=OFF"
+ $(cmake-utils_use doc BUILD_DOCUMENTATION)
+ $(cmake-utils_use examples BUILD_EXAMPLES)
+ $(cmake-utils_use static-libs BUILD_STATIC)
+ $(cmake-utils_use test BUILD_TESTING)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ dodoc doc/{AUTHORS,CHANGES,NEWS,README,todo/TODO}
+
+ if use doc ; then
+ rm -rf "${D}/usr/share/doc/${PF}/man" || die
+ pushd ${CMAKE_BUILD_DIR}/doc/man/man3
+ local my_f
+ for my_f in *.3 ; do
+ newman ${my_f} ${PN}-${my_f}
+ elog "installed /usr/share/man/man3/${my_f} as ${PN}-${my_f}"
+ done
+ popd
+ fi
+}
diff --git a/app-admin/elektra/files/elektra-0.8.3-fix-yajl-if-user-config.patch b/app-admin/elektra/files/elektra-0.8.3-fix-yajl-if-user-config.patch
new file mode 100644
index 000000000000..9577f1e01956
--- /dev/null
+++ b/app-admin/elektra/files/elektra-0.8.3-fix-yajl-if-user-config.patch
@@ -0,0 +1,31 @@
+--- a/src/plugins/yajl/yajl.c
++++ b/src/plugins/yajl/yajl.c
+@@ -23,6 +23,10 @@
+ ***************************************************************************/
+
+
++#ifndef HAVE_KDBCONFIG
++# include "kdbconfig.h"
++#endif
++
+ #include "yajl.h"
+
+ #include <kdberrors.h>
+@@ -340,7 +344,7 @@
+ KeySet *config= elektraPluginGetConfig(handle);
+
+ // ksClear (returned);
+- if (keyIsUser(parentKey))
++ if (!strncmp(keyName(parentKey), "user", 4))
+ {
+ const Key * lookup = ksLookupByName(config, "/user_path", 0);
+ if (!lookup)
+@@ -422,7 +426,7 @@
+ return 1; /* success */
+ }
+
+-int elektraYajlSet(Plugin *handle, KeySet *returned, Key *parentKey)
++int elektraYajlSet(Plugin *handle ELEKTRA_UNUSED, KeySet *returned, Key *parentKey)
+ {
+ yajl_gen_config conf = { 1, " " };
+ yajl_gen g = yajl_gen_alloc(&conf, NULL);
diff --git a/app-admin/elektra/files/elektra-0.8.3-introduce-attributes.patch b/app-admin/elektra/files/elektra-0.8.3-introduce-attributes.patch
new file mode 100644
index 000000000000..b970544df010
--- /dev/null
+++ b/app-admin/elektra/files/elektra-0.8.3-introduce-attributes.patch
@@ -0,0 +1,27 @@
+--- a/src/include/CMakeLists.txt
++++ b/src/include/CMakeLists.txt
+@@ -22,6 +22,9 @@
+ check_include_file(time.h HAVE_TIME_H)
+ check_include_file(unistd.h HAVE_UNISTD_H)
+
++set (ELEKTRA_DEPRECATED "__attribute__ ((deprecated))")
++set (ELEKTRA_UNUSED "__attribute__ ((unused))")
++
+ configure_file (
+ "${CMAKE_CURRENT_SOURCE_DIR}/kdb.h"
+ "${CMAKE_CURRENT_BINARY_DIR}/kdb.h"
+--- a/src/include/kdbconfig.h
++++ b/src/include/kdbconfig.h
+@@ -30,6 +30,12 @@
+ * to search for user configuration. */
+ #define KDB_DB_HOME "@KDB_DB_HOME@"
+
++/** Declares a parameter as unused. */
++#define ELEKTRA_UNUSED @ELEKTRA_UNUSED@
++
++/** Declares an API as deprecated. */
++#define ELEKTRA_DEPRECATED @ELEKTRA_DEPRECATED@
++
+ /* disable debug output messages */
+ #define DEBUG @DEBUG@
+
diff --git a/app-admin/elektra/metadata.xml b/app-admin/elektra/metadata.xml
index 3267ead0e197..2b7e195a83cd 100644
--- a/app-admin/elektra/metadata.xml
+++ b/app-admin/elektra/metadata.xml
@@ -7,6 +7,8 @@
</maintainer>
<use>
<flag name="gcov">Enable coverage support</flag>
+ <flag name="simpleini">Enable simpleini support</flag>
+ <flag name="yajl">Enable yajl support</flag>
</use>
</pkgmetadata>