Skip to contentSkip to conversation

package/davici: new package

PATCH New Jared Bents 2 participants 2 messages Oct 24, 2018 – Nov 2, 2018

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 package/davici: new package

This patch adds davici which is an alternative implementation of the VICI client protocal used by Strongswan. It targets better integration with software stacks and uses a asynchronous, non-blocking API that can be integrated in third-party main dispatching loops without the use of threads.

---
Supersedes: https://patchwork.ozlabs.org/patch/972496/

---
 package/Config.in          |  1 +
 package/davici/Config.in   | 18 ++++++++++++++++++
 package/davici/davici.hash |  3 +++
 package/davici/davici.mk   | 20 ++++++++++++++++++++
 4 files changed, 42 insertions(+)
 create mode 100644 package/davici/Config.in
 create mode 100644 package/davici/davici.hash
 create mode 100644 package/davici/davici.mk
package/Config.in +1 -0
index fd86e37a52..56f3b8ff92 100644
@@ -1480,6 +1480,7 @@ menu "Networking"
 	source "package/curlpp/Config.in"
 	source "package/czmq/Config.in"
 	source "package/daq/Config.in"
+	source "package/davici/Config.in"
 	source "package/filemq/Config.in"
 	source "package/flickcurl/Config.in"
 	source "package/fmlib/Config.in"
package/davici/Config.in new file +18 -0
new file mode 100644
index 0000000000..9dfa0ec130
@@ -0,0 +1,18 @@
+comment "davici needs a toolchain w/ threads, dynamic library"
+	depends on BR2_USE_MMU
+	depends on BR2_TOOLCHAIN_HAS_ATOMIC
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+
+config BR2_PACKAGE_DAVICI
+	bool "davici"
+	depends on BR2_USE_MMU # fork()
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_TOOLCHAIN_HAS_ATOMIC
+	depends on !BR2_STATIC_LIBS
+	select BR2_PACKAGE_STRONGSWAN
+	help
+	  davici is an alternative implementation of the VICI
+	  client protocol, targeting better integration in other
+	  software stacks.
+
+	  https://github.com/strongswan/davici
package/davici/davici.hash new file +3 -0
new file mode 100644
index 0000000000..257e902ce7
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 d3e5e806ecca841d7e133a3df768062df59f4b4c76bf98e0f90aa8064721b3bd  davici-v1.3.tar.gz
+sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551  COPYING
package/davici/davici.mk new file +20 -0
new file mode 100644
index 0000000000..ab9d2ba176
@@ -0,0 +1,20 @@
+################################################################################
+#
+# davici
+#
+################################################################################
+
+DAVICI_VERSION = v1.3
+DAVICI_SITE = $(call github,strongswan,davici,$(DAVICI_VERSION))
+DAVICI_LICENSE = LGPL-2.1
+DAVICI_LICENSE_FILES = COPYING
+DAVICI_DEPENDENCIES = strongswan
+DAVICI_INSTALL_STAGING=YES
+DAVICI_AUTORECONF = YES
+
+define DAVICI_CREATE_M4
+	mkdir -p $(@D)/m4
+endef
+DAVICI_POST_PATCH_HOOKS += DAVICI_CREATE_M4
+
+$(eval $(autotools-package))
Signature · 1 line
2.18.0
#1 lore raw

PATCH v2 1/1 package/davici: new package

Hello,

Quoted 7 lines · Jared Bents

This patch adds davici which is an alternative implementation of the VICI client protocal used by Strongswan. It targets better integration with software stacks and uses a asynchronous, non-blocking API that can be integrated in third-party main dispatching loops without the use of threads.

I've applied, with a few changes, see below.

Quoted 4 lines
 package/Config.in          |  1 +
 package/davici/Config.in   | 18 ++++++++++++++++++
 package/davici/davici.hash |  3 +++
 package/davici/davici.mk   | 20 ++++++++++++++++++++

An entry to the DEVELOPERS file was missing.

Quoted 8 lines
package/davici/Config.in new file +2 -0
new file mode 100644
index 0000000000..9dfa0ec130
@@ -0,0 +1,18 @@
+comment "davici needs a toolchain w/ threads, dynamic library"
+	depends on BR2_USE_MMU

package/davici/Config.in line 12

Quoted 10 lines
package/davici/Config.in new file +10 -0
+	depends on BR2_TOOLCHAIN_HAS_ATOMIC
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+
+config BR2_PACKAGE_DAVICI
+	bool "davici"
+	depends on BR2_USE_MMU # fork()
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_TOOLCHAIN_HAS_ATOMIC
+	depends on !BR2_STATIC_LIBS
+	select BR2_PACKAGE_STRONGSWAN

Here I hesitated between keeping your select, or switching to a "depends on". Indeed, in the case of this library, it's pretty clear that the user willing to use it will know that he needs strongswan. But it's a matter of taste, so in the end, I kept your select.

package/davici/Config.in line 15

Quoted 3 lines
package/davici/Config.in new file +3 -0
+DAVICI_VERSION = v1.3
+DAVICI_SITE = $(call github,strongswan,davici,$(DAVICI_VERSION))
+DAVICI_LICENSE = LGPL-2.1

The license is LGPL-2.1+, the source files carry the "or later" indication.

package/davici/Config.in line 18

Quoted 3 lines
package/davici/Config.in new file +3 -0
+DAVICI_LICENSE_FILES = COPYING
+DAVICI_DEPENDENCIES = strongswan
+DAVICI_INSTALL_STAGING=YES

Missing spaces around the = sign.

Applied with those issues fixed. Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com