Browse Source

elektra: update to 0.9.7

Notable changes:
* Use toml as new default storage backend:
  Upstream has removed the ini plugin, we have been using in the
  past. toml is still somewhat experimental, but upstream has
  designated it as future recommended default.
* Remove the dependency on boost. The only plugin needing that has
  been removed upstram.
* Enable plugins for libev and libuv event loop integration. This
  adds two new packages with the respective dependencies.
  Upstream has fixed the bugs preventing us from using this.
* Enable the internal notification plugin/system. This allows
  applications to automatically receive notifications about changes
  to their configuration. Again upstream fixing bugs enables this
  for us.
* Set the environment variable $XDG_CACHE_HOME to "/tmp/" globally
  to prevent elektra (and possibly other applications) from
  writing temporary data to flash.

Signed-off-by: Harald Geyer <harald@ccbib.org>
lilik-openwrt-22.03
Harald Geyer 3 years ago
parent
commit
21abcc2968
3 changed files with 55 additions and 52 deletions
  1. +54
    -33
      libs/elektra/Makefile
  2. +1
    -0
      libs/elektra/files/elektra.profile
  3. +0
    -19
      libs/elektra/patches/010-gcc11.patch

+ 54
- 33
libs/elektra/Makefile View File

@ -14,11 +14,11 @@ PKG_MAINTAINER:=Harald Geyer <harald@ccbib.org>
PKG_NAME:=elektra PKG_NAME:=elektra
PKG_LICENSE:=BSD-3-Clause PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE.md PKG_LICENSE_FILES:=LICENSE.md
PKG_VERSION:=0.9.2
PKG_RELEASE:=3
PKG_VERSION:=0.9.7
PKG_RELEASE:=1
# Use this for official releasees # Use this for official releasees
PKG_HASH:=6f2fcf8aaed8863e1cc323265ca2617751ca50dac974b43a0811bcfd4a511f2e
PKG_HASH:=12b7b046004db29317b7b937dc794abf719c400ba3115af8d41849127b562681
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://ftp.libelektra.org/ftp/elektra/releases PKG_SOURCE_URL:=http://ftp.libelektra.org/ftp/elektra/releases
@ -98,8 +98,8 @@ endef
define CONTENT_ELEKTRA_PLUGINS_TEXT define CONTENT_ELEKTRA_PLUGINS_TEXT
base64 conditionals csvstorage date file filecheck glob hexcode base64 conditionals csvstorage date file filecheck glob hexcode
hexnumber hidden hosts iconv ipaddr keytometa line lineendings list
mathcheck macaddr mini network null path profile quickdump
hexnumber hosts iconv ipaddr keytometa line lineendings list
mathcheck macaddr mini network path profile quickdump
range reference rgbcolor shell syslog type uname unit validation range reference rgbcolor shell syslog type uname unit validation
endef endef
@ -130,19 +130,6 @@ Currently these are:
$(CONTENT_ELEKTRA_CPP) $(CONTENT_ELEKTRA_CPP)
endef endef
define Package/libelektra-boost
$(call Package/libelektra/Default)
TITLE:=Elektra plugins depending on boost
DEPENDS:=+libelektra-core +libstdcpp +boost
endef
define Package/libelektra-boost/description
$(call Package/libelektra/Default-description)
This package contains plugins written in C++ with an dependency on
boost. Currently this is a plugin for a tcl like format.
endef
define Package/libelektra-crypto define Package/libelektra-crypto
$(call Package/libelektra/Default) $(call Package/libelektra/Default)
TITLE:=Elektra crypto plugin TITLE:=Elektra crypto plugin
@ -180,6 +167,32 @@ This package contains support for dbus notification on configuration
changes. changes.
endef endef
define Package/libelektra-ev
$(call Package/libelektra/Default)
TITLE:=Elektra libev binding plugin
DEPENDS:=+libelektra-core +libev
endef
define Package/libelektra-ev/description
$(call Package/libelektra/Default-description)
This package contains support for notification on configuration
changes via libev events.
endef
define Package/libelektra-uv
$(call Package/libelektra/Default)
TITLE:=Elektra libuv binding plugin
DEPENDS:=+libelektra-core +libuv
endef
define Package/libelektra-uv/description
$(call Package/libelektra/Default-description)
This package contains support for notification on configuration
changes via libuv events.
endef
define Package/libelektra-xerces define Package/libelektra-xerces
$(call Package/libelektra/Default) $(call Package/libelektra/Default)
TITLE:=Elektra xerces based xml plugin TITLE:=Elektra xerces based xml plugin
@ -270,7 +283,7 @@ endef
define CONTENT_EXTRA_PLUGINS_TEXT define CONTENT_EXTRA_PLUGINS_TEXT
blockresolver c constants counter desktop dpkg error fcrypt blockresolver c constants counter desktop dpkg error fcrypt
fstab logchange mozprefs passwd process rename fstab logchange mozprefs passwd process rename
timeofday tracer yamlsmith
timeofday tracer
endef endef
CONTENT_ELEKTRA_EXTRA:=$(strip $(CONTENT_EXTRA_PLUGINS_TEXT)) CONTENT_ELEKTRA_EXTRA:=$(strip $(CONTENT_EXTRA_PLUGINS_TEXT))
@ -295,16 +308,18 @@ CMAKE_OPTIONS += \
-DFORCE_IN_SOURCE_BUILD=ON \ -DFORCE_IN_SOURCE_BUILD=ON \
-DBUILD_TESTING=OFF \ -DBUILD_TESTING=OFF \
-DKDB_DEFAULT_RESOLVER=resolver_fm_pb_b \ -DKDB_DEFAULT_RESOLVER=resolver_fm_pb_b \
-DKDB_DEFAULT_STORAGE=ini \
-DKDB_DEFAULT_STORAGE=toml \
-DENABLE_OPTIMIZATIONS=OFF \ -DENABLE_OPTIMIZATIONS=OFF \
-DPLUGINS="ALL;-gpgme;-internalnotification;-multifile;-simpleini" \
-DPLUGINS="ALL;-gpgme;-multifile;-simpleini" \
-DIconv_INCLUDE_DIR="$(ICONV_PREFIX)/include" \ -DIconv_INCLUDE_DIR="$(ICONV_PREFIX)/include" \
-DIconv_LIBRARY="$(ICONV_PREFIX)/lib/libiconv.$(if $(CONFIG_BUILD_NLS),so,a)" \ -DIconv_LIBRARY="$(ICONV_PREFIX)/lib/libiconv.$(if $(CONFIG_BUILD_NLS),so,a)" \
-DBINDINGS="MAINTAINED;-intercept_env;-intercept_fs;-io_uv;-io_ev;-io_glib"
-DBINDINGS="MAINTAINED;-intercept_env;-intercept_fs;-io_glib"
define Package/libelektra-core/install define Package/libelektra-core/install
$(INSTALL_DIR) $(1)/etc/kdb/ $(INSTALL_DIR) $(1)/etc/kdb/
$(INSTALL_DIR) $(1)/etc/profile.d/
$(INSTALL_DIR) $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/
$(INSTALL_DATA) files/elektra.profile $(1)/etc/profile.d/elektra.sh
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-core.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-core.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-ease.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-ease.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-globbing.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-globbing.so* $(1)/usr/lib/
@ -314,22 +329,22 @@ define Package/libelektra-core/install
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-kdb.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-kdb.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-merge.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-merge.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-meta.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-meta.so* $(1)/usr/lib/
#The next is excluded because of an upstream bug
#$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-notification.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-notification.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-opts.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-opts.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-plugin.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-plugin.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-pluginprocess.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-pluginprocess.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-proposal.so* $(1)/usr/lib/
#The next is only supported with glibc, so skip it. #The next is only supported with glibc, so skip it.
#$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektraintercept-* $(1)/usr/lib/ #$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektraintercept-* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-resolver_fm_pb_b.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-resolver_fm_pb_b.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-utility.so* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-utility.so* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-cache.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-cache.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-internalnotification.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-mmapstorage.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-mmapstorage.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-ni.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-ni.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-ini.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-spec.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-sync.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-sync.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-storage.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-storage.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-toml.so $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-resolver.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-resolver.so $(1)/usr/lib/
endef endef
@ -354,11 +369,6 @@ define Package/libelektra-plugins/install
$(CP) $(foreach plugin,$(CONTENT_ELEKTRA_PLUGINS),$(PKG_INSTALL_DIR)/usr/lib/libelektra-$(plugin).so) $(1)/usr/lib/ $(CP) $(foreach plugin,$(CONTENT_ELEKTRA_PLUGINS),$(PKG_INSTALL_DIR)/usr/lib/libelektra-$(plugin).so) $(1)/usr/lib/
endef endef
define Package/libelektra-boost/install
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-tcl.so $(1)/usr/lib/
endef
define Package/libelektra-cpp/install define Package/libelektra-cpp/install
$(INSTALL_DIR) $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(foreach plugin,$(CONTENT_ELEKTRA_CPP),$(PKG_INSTALL_DIR)/usr/lib/libelektra-$(plugin).so) $(1)/usr/lib/ $(CP) $(foreach plugin,$(CONTENT_ELEKTRA_CPP),$(PKG_INSTALL_DIR)/usr/lib/libelektra-$(plugin).so) $(1)/usr/lib/
@ -380,6 +390,16 @@ define Package/libelektra-dbus/install
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-dbusrecv.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-dbusrecv.so $(1)/usr/lib/
endef endef
define Package/libelektra-ev/install
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-io-ev.so $(1)/usr/lib/
endef
define Package/libelektra-uv/install
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-io-uv.so $(1)/usr/lib/
endef
define Package/libelektra-xerces/install define Package/libelektra-xerces/install
$(INSTALL_DIR) $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-xerces.so $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelektra-xerces.so $(1)/usr/lib/
@ -432,15 +452,16 @@ $(eval $(call BuildPackage,libelektra-core))
$(eval $(call BuildPackage,elektra-kdb)) $(eval $(call BuildPackage,elektra-kdb))
$(eval $(call BuildPackage,libelektra-resolvers)) $(eval $(call BuildPackage,libelektra-resolvers))
$(eval $(call BuildPackage,libelektra-plugins)) $(eval $(call BuildPackage,libelektra-plugins))
$(eval $(call BuildPackage,libelektra-boost))
$(eval $(call BuildPackage,libelektra-cpp)) $(eval $(call BuildPackage,libelektra-cpp))
$(eval $(call BuildPackage,libelektra-curlget)) $(eval $(call BuildPackage,libelektra-curlget))
$(eval $(call BuildPackage,libelektra-crypto)) $(eval $(call BuildPackage,libelektra-crypto))
$(eval $(call BuildPackage,libelektra-dbus)) $(eval $(call BuildPackage,libelektra-dbus))
$(eval $(call BuildPackage,libelektra-ev))
$(eval $(call BuildPackage,libelektra-uv))
$(eval $(call BuildPackage,libelektra-xerces)) $(eval $(call BuildPackage,libelektra-xerces))
$(eval $(call BuildPackage,libelektra-yamlcpp))
$(eval $(call BuildPackage,libelektra-xml)) $(eval $(call BuildPackage,libelektra-xml))
$(eval $(call BuildPackage,libelektra-yajl)) $(eval $(call BuildPackage,libelektra-yajl))
$(eval $(call BuildPackage,libelektra-yamlcpp))
$(eval $(call BuildPackage,libelektra-python3)) $(eval $(call BuildPackage,libelektra-python3))
$(eval $(call BuildPackage,libelektra-lua)) $(eval $(call BuildPackage,libelektra-lua))
$(eval $(call BuildPackage,libelektra-zmq)) $(eval $(call BuildPackage,libelektra-zmq))


+ 1
- 0
libs/elektra/files/elektra.profile View File

@ -0,0 +1 @@
export XDG_CACHE_HOME=/tmp/

+ 0
- 19
libs/elektra/patches/010-gcc11.patch View File

@ -1,19 +0,0 @@
From 7b57dc698834937b6913887544c6416e7f39192d Mon Sep 17 00:00:00 2001
From: Mihael Pranjic <mpranj@limun.org>
Date: Mon, 26 Apr 2021 14:53:21 +0200
Subject: [PATCH] kdb: add missing <limits> include
---
src/tools/kdb/cmdline.cpp | 1 +
1 file changed, 1 insertion(+)
--- a/src/tools/kdb/cmdline.cpp
+++ b/src/tools/kdb/cmdline.cpp
@@ -16,6 +16,7 @@
#include <cstdio>
#include <iostream>
+#include <limits>
#include <set>
#include <vector>

Loading…
Cancel
Save