Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6
@ 2016-12-10 19:20 Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 1/9] skalibs: new package Eric Le Bihan
                   ` (8 more replies)
  0 siblings, 9 replies; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

Hi!

This series provides all the packages for programs and libraries to build an
embedded system with service supervision and management using s6 from
http://skarnet.org.

Note that these packages only provide the mechanism for supervising/managing
services using s6, not the policy. Packages to provide a policy suitable for
Buildroot-based embedded systems, using s6 as init (instead of SysV or
systemd), may be provided later. An example is available in the
buildroot-demo-s6 project [1].

[1] https://github.com/elebihan/buildroot-demo-s6/

Best regards,

ELB

v1 -> v2:

 - bump all packages to skarnet.org fall release versions.
 - add dependency on BR2_USE_MMU.
 - remove limitation to glibc.
 - split skalibs endianness and type sizes patches.

Eric Le Bihan (9):
  skalibs: new package
  execline: new package
  s6: new package
  s6-dns: new package
  s6-networking: new package
  s6-rc: new package
  s6-portable-utils: new package
  s6-linux-utils: new package
  s6-linux-init: new package

 package/Config.in                                  |  9 +++
 package/execline/Config.in                         | 12 +++
 package/execline/Config.in.host                    |  7 ++
 package/execline/execline.hash                     |  2 +
 package/execline/execline.mk                       | 69 ++++++++++++++++
 package/s6-dns/Config.in                           |  9 +++
 package/s6-dns/s6-dns.hash                         |  2 +
 package/s6-dns/s6-dns.mk                           | 45 +++++++++++
 package/s6-linux-init/Config.in                    | 11 +++
 package/s6-linux-init/s6-linux-init.hash           |  2 +
 package/s6-linux-init/s6-linux-init.mk             | 36 +++++++++
 package/s6-linux-utils/Config.in                   |  9 +++
 package/s6-linux-utils/s6-linux-utils.hash         |  2 +
 package/s6-linux-utils/s6-linux-utils.mk           | 34 ++++++++
 package/s6-networking/Config.in                    | 12 +++
 package/s6-networking/s6-networking.hash           |  2 +
 package/s6-networking/s6-networking.mk             | 48 +++++++++++
 package/s6-portable-utils/Config.in                | 11 +++
 package/s6-portable-utils/s6-portable-utils.hash   |  2 +
 package/s6-portable-utils/s6-portable-utils.mk     | 34 ++++++++
 package/s6-rc/Config.in                            | 11 +++
 package/s6-rc/Config.in.host                       |  6 ++
 package/s6-rc/s6-rc.hash                           |  2 +
 package/s6-rc/s6-rc.mk                             | 74 +++++++++++++++++
 package/s6/Config.in                               | 10 +++
 package/s6/s6.hash                                 |  2 +
 package/s6/s6.mk                                   | 72 +++++++++++++++++
 .../0001-No-runtime-tests-for-endianness.patch     | 93 ++++++++++++++++++++++
 .../0002-No-runtime-tests-for-type-sizes.patch     | 52 ++++++++++++
 package/skalibs/Config.in                          |  9 +++
 package/skalibs/skalibs.hash                       |  2 +
 package/skalibs/skalibs.mk                         | 59 ++++++++++++++
 32 files changed, 750 insertions(+)
 create mode 100644 package/execline/Config.in
 create mode 100644 package/execline/Config.in.host
 create mode 100644 package/execline/execline.hash
 create mode 100644 package/execline/execline.mk
 create mode 100644 package/s6-dns/Config.in
 create mode 100644 package/s6-dns/s6-dns.hash
 create mode 100644 package/s6-dns/s6-dns.mk
 create mode 100644 package/s6-linux-init/Config.in
 create mode 100644 package/s6-linux-init/s6-linux-init.hash
 create mode 100644 package/s6-linux-init/s6-linux-init.mk
 create mode 100644 package/s6-linux-utils/Config.in
 create mode 100644 package/s6-linux-utils/s6-linux-utils.hash
 create mode 100644 package/s6-linux-utils/s6-linux-utils.mk
 create mode 100644 package/s6-networking/Config.in
 create mode 100644 package/s6-networking/s6-networking.hash
 create mode 100644 package/s6-networking/s6-networking.mk
 create mode 100644 package/s6-portable-utils/Config.in
 create mode 100644 package/s6-portable-utils/s6-portable-utils.hash
 create mode 100644 package/s6-portable-utils/s6-portable-utils.mk
 create mode 100644 package/s6-rc/Config.in
 create mode 100644 package/s6-rc/Config.in.host
 create mode 100644 package/s6-rc/s6-rc.hash
 create mode 100644 package/s6-rc/s6-rc.mk
 create mode 100644 package/s6/Config.in
 create mode 100644 package/s6/s6.hash
 create mode 100644 package/s6/s6.mk
 create mode 100644 package/skalibs/0001-No-runtime-tests-for-endianness.patch
 create mode 100644 package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
 create mode 100644 package/skalibs/Config.in
 create mode 100644 package/skalibs/skalibs.hash
 create mode 100644 package/skalibs/skalibs.mk

--
2.5.5

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 1/9] skalibs: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 20:46   ` Thomas Petazzoni
  2016-12-10 19:20 ` [Buildroot] [Patch v2 2/9] execline: " Eric Le Bihan
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides skalibs, a collection of free software / open
source C development files used for building all software from
skarnet.org.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in                                  |  1 +
 .../0001-No-runtime-tests-for-endianness.patch     | 93 ++++++++++++++++++++++
 .../0002-No-runtime-tests-for-type-sizes.patch     | 52 ++++++++++++
 package/skalibs/Config.in                          |  9 +++
 package/skalibs/skalibs.hash                       |  2 +
 package/skalibs/skalibs.mk                         | 59 ++++++++++++++
 6 files changed, 216 insertions(+)
 create mode 100644 package/skalibs/0001-No-runtime-tests-for-endianness.patch
 create mode 100644 package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
 create mode 100644 package/skalibs/Config.in
 create mode 100644 package/skalibs/skalibs.hash
 create mode 100644 package/skalibs/skalibs.mk

diff --git a/package/Config.in b/package/Config.in
index a58147a..d640035 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1358,6 +1358,7 @@ endif
 	source "package/qhull/Config.in"
 	source "package/qlibc/Config.in"
 	source "package/shapelib/Config.in"
+	source "package/skalibs/Config.in"
 	source "package/sphinxbase/Config.in"
 	source "package/startup-notification/Config.in"
 	source "package/tinycbor/Config.in"
diff --git a/package/skalibs/0001-No-runtime-tests-for-endianness.patch b/package/skalibs/0001-No-runtime-tests-for-endianness.patch
new file mode 100644
index 0000000..7a711d5
--- /dev/null
+++ b/package/skalibs/0001-No-runtime-tests-for-endianness.patch
@@ -0,0 +1,93 @@
+From 1e6f0b094c6ce6454be572704b866d2ce0962e59 Mon Sep 17 00:00:00 2001
+From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
+Date: Sun, 4 Dec 2016 19:10:40 +0100
+Subject: [PATCH 1/2] No runtime tests for endianness
+
+Replace build and execution of runtime test programs for determining
+the endianness of the target with compile time test programs.
+
+This improves support for cross-compilation.
+---
+ configure                     | 15 +++++++++++----
+ src/sysdeps/trybigendian.c    | 16 ++++++++++++++++
+ src/sysdeps/trylittleendian.c | 16 ++++++++++++++++
+ 3 files changed, 43 insertions(+), 4 deletions(-)
+ create mode 100644 src/sysdeps/trybigendian.c
+ create mode 100644 src/sysdeps/trylittleendian.c
+
+diff --git a/configure b/configure
+index 1579025..4da9c5e 100755
+--- a/configure
++++ b/configure
+@@ -463,13 +463,20 @@ EOF
+   fi
+   exec 3>&-
+ 
+-  echo "Checking system endianness..."
+-  $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o tryendianness src/sysdeps/tryendianness.c
+-  endianness=$(./tryendianness) || fail "$0: unable to determine endianness"
++    echo "Checking system endianness..."
++  if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trybigendian src/sysdeps/trybigendian.c 2>/dev/null; then
++      endianness=big
++  else
++      if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trylittleendian src/sysdeps/trylittleendian.c 2>/dev/null; then
++          endianness=little
++      else
++          fail "$0: unable to determine endianness"
++      fi
++  fi
+   echo "endianness: $endianness" >> $sysdeps/sysdeps
+   echo "#define ${package_macro_name}_ENDIANNESS \"$endianness\"" >> $sysdeps/sysdeps.h
+   echo "  ... $endianness"
+-  rm -f tryendianness
++  rm -f trybigendian trylittleendian
+ 
+   trytypesize ushort USHORT "unsigned short"
+   trytypesize uint UINT "unsigned int"
+diff --git a/src/sysdeps/trybigendian.c b/src/sysdeps/trybigendian.c
+new file mode 100644
+index 0000000..d857572
+--- /dev/null
++++ b/src/sysdeps/trybigendian.c
+@@ -0,0 +1,16 @@
++#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __BIG_ENDIAN) ||	       \
++	defined(__BYTE_ORDER__) && (__BYTE_ORDER__  == __ORDER_BIG_ENDIAN__) || \
++	defined(__BIG_ENDIAN) ||				       \
++	defined(__ARMEB__) ||					       \
++	defined(__THUMBEB__) ||				       \
++	defined(__AARCH64EB__) ||				       \
++	defined(_MIPSEB) || defined(__MIPSEB) || defined(__MIPSEB__)
++#define YEAH
++#else
++#error "not big endian"
++#endif
++
++int main(void)
++{
++	return 0;
++}
+diff --git a/src/sysdeps/trylittleendian.c b/src/sysdeps/trylittleendian.c
+new file mode 100644
+index 0000000..eba065a
+--- /dev/null
++++ b/src/sysdeps/trylittleendian.c
+@@ -0,0 +1,16 @@
++#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __LITTLE_ENDIAN) ||	\
++	defined(__BYTE_ORDER__) && (__BYTE_ORDER__  == __ORDER_LITTLE_ENDIAN__) || \
++	defined(__LITTLE_ENDIAN) ||					\
++	defined(__ARMEL__) ||						\
++	defined(__THUMBEL__) ||					\
++	defined(__AARCH64EL__) ||					\
++	defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__)
++#define YEAH
++#else
++#error "not little endian"
++#endif
++
++int main(void)
++{
++	return 0;
++}
+-- 
+2.5.5
+
diff --git a/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
new file mode 100644
index 0000000..c58af33
--- /dev/null
+++ b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
@@ -0,0 +1,52 @@
+From d868600a3f437750bc44a783d677a25a48100096 Mon Sep 17 00:00:00 2001
+From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
+Date: Sun, 4 Dec 2016 19:11:25 +0100
+Subject: [PATCH 2/2] No runtime tests for type sizes
+
+Replace build and execution of runtime test programs for determining
+some type sizes of the target with compile time test programs.
+
+This improves support for cross-compilation.
+---
+ configure | 24 +++++++++++++++++++++---
+ 1 file changed, 21 insertions(+), 3 deletions(-)
+
+diff --git a/configure b/configure
+index 4da9c5e..b5926ca 100755
+--- a/configure
++++ b/configure
+@@ -157,10 +157,28 @@ choose () {
+ 
+ trytypesize () {
+   echo "Checking size of $3..."
+-  $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 src/sysdeps/trysizeof$1.c
+-  type_size=$(./trysizeof$1) || fail "$0: unable to determine size of $3"
++  r=false
++  type_size=0
++  while true; do
++    cat<<EOF>trysizeof$1.c
++#include <sys/types.h>
++
++int main(void)
++{
++  static int v = 1 / !!((sizeof($3) == $type_size));
++  return 0;
++}
++EOF
++    if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 trysizeof$1.c 2>/dev/null; then
++        r=true
++        break
++    fi
++    type_size=$(expr $type_size + 1)
++    test $type_size -le 16 || break
++  done
++  test $r = true || fail "$0: unable to determine size of $3"
+   type_bits=$(expr 8 \* $type_size)
+-  rm -f trysizeof$1
++  rm -f trysizeof$1 trysizeof$1.c
+   echo "sizeof$1: $type_size" >> $sysdeps/sysdeps
+   echo "#define ${package_macro_name}_SIZEOF$2 $type_size" >> $sysdeps/sysdeps.h
+   echo "#define ${package_macro_name}_$2_BITS $type_bits" >> $sysdeps/sysdeps.h
+-- 
+2.5.5
+
diff --git a/package/skalibs/Config.in b/package/skalibs/Config.in
new file mode 100644
index 0000000..307b016
--- /dev/null
+++ b/package/skalibs/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_SKALIBS
+	bool "skalibs"
+	depends on BR2_USE_MMU # fork()
+	help
+	  skalibs is a package centralizing the free software / open source C
+	  development files used for building all software at skarnet.org:
+	  it contains essentially general-purpose libraries.
+
+	  http://skarnet.org/software/skalibs/
diff --git a/package/skalibs/skalibs.hash b/package/skalibs/skalibs.hash
new file mode 100644
index 0000000..195ac47
--- /dev/null
+++ b/package/skalibs/skalibs.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 0708172bc2ec9825f8a4f312d35f8dcd94da5f291425a598c33c873b3de77df8 skalibs-2.4.0.2.tar.gz
diff --git a/package/skalibs/skalibs.mk b/package/skalibs/skalibs.mk
new file mode 100644
index 0000000..be02c7e
--- /dev/null
+++ b/package/skalibs/skalibs.mk
@@ -0,0 +1,59 @@
+################################################################################
+#
+# skalibs
+#
+################################################################################
+
+SKALIBS_VERSION = 2.4.0.2
+SKALIBS_SITE = http://skarnet.org/software/skalibs
+SKALIBS_LICENSE = ISC
+SKALIBS_LICENSE_FILES = COPYING
+SKALIBS_INSTALL_STAGING = YES
+
+SKALIBS_CONF_OPTS = \
+	--prefix=/usr \
+	--with-default-path=/sbin:/usr/sbin:/bin:/usr/bin \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define SKALIBS_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(SKALIBS_CONF_OPTS))
+endef
+
+define SKALIBS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define SKALIBS_REMOVE_STATIC_LIB_DIR
+	rm -rf $(TARGET_DIR)/usr/lib/skalibs
+endef
+
+SKALIBS_POST_INSTALL_TARGET_HOOKS += SKALIBS_REMOVE_STATIC_LIB_DIR
+
+define SKALIBS_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+define SKALIBS_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
+endef
+
+HOST_SKALIBS_CONF_OPTS = \
+	--prefix=/usr \
+	--disable-static \
+	--enable-shared \
+	--disable-allstatic
+
+define HOST_SKALIBS_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_SKALIBS_CONF_OPTS))
+endef
+
+define HOST_SKALIBS_BUILD_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)
+endef
+
+define HOST_SKALIBS_INSTALL_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install
+endef
+
+$(eval $(generic-package))
+$(eval $(host-generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 2/9] execline: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 1/9] skalibs: new package Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 20:49   ` Thomas Petazzoni
  2016-12-10 19:20 ` [Buildroot] [Patch v2 3/9] s6: " Eric Le Bihan
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This package provides execline, a (non-interactive) scripting language,
like sh, used in the s6 supervision system.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in               |  1 +
 package/execline/Config.in      | 12 +++++++
 package/execline/Config.in.host |  7 +++++
 package/execline/execline.hash  |  2 ++
 package/execline/execline.mk    | 69 +++++++++++++++++++++++++++++++++++++++++
 5 files changed, 91 insertions(+)
 create mode 100644 package/execline/Config.in
 create mode 100644 package/execline/Config.in.host
 create mode 100644 package/execline/execline.hash
 create mode 100644 package/execline/execline.mk

diff --git a/package/Config.in b/package/Config.in
index d640035..ec90202 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -504,6 +504,7 @@ menu "Erlang libraries/modules"
 	source "package/erlang-p1-zlib/Config.in"
 endmenu
 endif
+	source "package/execline/Config.in"
 	source "package/ficl/Config.in"
 	source "package/gauche/Config.in"
 	source "package/guile/Config.in"
diff --git a/package/execline/Config.in b/package/execline/Config.in
new file mode 100644
index 0000000..8e2e6dc
--- /dev/null
+++ b/package/execline/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_EXECLINE
+	bool "execline"
+	select BR2_PACKAGE_SKALIBS
+	depends on BR2_USE_MMU # skalibs
+	help
+	  execline is a (non-interactive) scripting language, like sh ; but its
+	  syntax is quite different from a traditional shell syntax.
+	  The execlineb program is meant to be used as an interpreter for a text
+	  file; the other commands are essentially useful inside an execlineb
+	  script.
+
+	  http://skarnet.org/software/execline/
diff --git a/package/execline/Config.in.host b/package/execline/Config.in.host
new file mode 100644
index 0000000..4e188e1
--- /dev/null
+++ b/package/execline/Config.in.host
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_HOST_EXECLINE
+	bool "host execline"
+	help
+	  Host version of execline, a (non-interactive) scripting language,
+	  like sh.
+
+	  http://skarnet.org/software/execline/
diff --git a/package/execline/execline.hash b/package/execline/execline.hash
new file mode 100644
index 0000000..61fc99c
--- /dev/null
+++ b/package/execline/execline.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 93bd744f2e3ad204cb89f147efdc6ca4e622f9c6bfc9895e0b2cb8b0480029de execline-2.2.0.0.tar.gz
diff --git a/package/execline/execline.mk b/package/execline/execline.mk
new file mode 100644
index 0000000..5f17eea
--- /dev/null
+++ b/package/execline/execline.mk
@@ -0,0 +1,69 @@
+################################################################################
+#
+# execline
+#
+################################################################################
+
+EXECLINE_VERSION = 2.2.0.0
+EXECLINE_SITE = http://skarnet.org/software/execline
+EXECLINE_LICENSE = ISC
+EXECLINE_LICENSE_FILES = COPYING
+EXECLINE_INSTALL_STAGING = YES
+EXECLINE_DEPENDENCIES = skalibs
+
+EXECLINE_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define EXECLINE_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(EXECLINE_CONF_OPTS))
+endef
+
+define EXECLINE_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define EXECLINE_REMOVE_STATIC_LIB_DIR
+	rm -rf $(TARGET_DIR)/usr/lib/execline
+endef
+
+EXECLINE_POST_INSTALL_TARGET_HOOKS += EXECLINE_REMOVE_STATIC_LIB_DIR
+
+define EXECLINE_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+define EXECLINE_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
+endef
+
+HOST_EXECLINE_DEPENDENCIES = host-skalibs
+
+HOST_EXECLINE_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(HOST_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(HOST_DIR)/usr/include \
+	--with-dynlib=$(HOST_DIR)/usr/lib \
+	--disable-static \
+	--enable-shared \
+	--disable-allstatic
+
+define HOST_EXECLINE_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_EXECLINE_CONF_OPTS))
+endef
+
+define HOST_EXECLINE_BUILD_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)
+endef
+
+define HOST_EXECLINE_INSTALL_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install
+endef
+
+$(eval $(generic-package))
+$(eval $(host-generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 3/9] s6: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 1/9] skalibs: new package Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 2/9] execline: " Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 20:52   ` Thomas Petazzoni
  2016-12-10 19:20 ` [Buildroot] [Patch v2 4/9] s6-dns: " Eric Le Bihan
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides s6, a small suite of programs for UNIX,
designed to allow process supervision (a.k.a service supervision), in
the line of daemontools and runit.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in    |  1 +
 package/s6/Config.in | 10 ++++++++
 package/s6/s6.hash   |  2 ++
 package/s6/s6.mk     | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 85 insertions(+)
 create mode 100644 package/s6/Config.in
 create mode 100644 package/s6/s6.hash
 create mode 100644 package/s6/s6.mk

diff --git a/package/Config.in b/package/Config.in
index ec90202..fdd5a63 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1748,6 +1748,7 @@ menu "System tools"
 	source "package/quota/Config.in"
 	source "package/rsyslog/Config.in"
 	source "package/runc/Config.in"
+	source "package/s6/Config.in"
 	source "package/scrub/Config.in"
 	source "package/scrypt/Config.in"
 	source "package/smack/Config.in"
diff --git a/package/s6/Config.in b/package/s6/Config.in
new file mode 100644
index 0000000..7b6b86b
--- /dev/null
+++ b/package/s6/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_S6
+	bool "s6"
+	select BR2_PACKAGE_EXECLINE
+	depends on BR2_USE_MMU # execline
+	help
+	  s6 is a small suite of programs for UNIX, designed to allow process
+	  supervision (a.k.a service supervision), in the line of daemontools
+	  and runit, as well as various operations on processes and daemons.
+
+	  http://skarnet.org/software/s6/
diff --git a/package/s6/s6.hash b/package/s6/s6.hash
new file mode 100644
index 0000000..36526de
--- /dev/null
+++ b/package/s6/s6.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 5e788d5935dbcce76ac9a99cfcf6ee46a2ffb84220c84225df7589e9a3585560 s6-2.4.0.0.tar.gz
diff --git a/package/s6/s6.mk b/package/s6/s6.mk
new file mode 100644
index 0000000..17ea9d3
--- /dev/null
+++ b/package/s6/s6.mk
@@ -0,0 +1,72 @@
+################################################################################
+#
+# s6
+#
+################################################################################
+
+S6_VERSION = 2.4.0.0
+S6_SITE = http://skarnet.org/software/s6
+S6_LICENSE = ISC
+S6_LICENSE_FILES = COPYING
+S6_INSTALL_STAGING = YES
+S6_DEPENDENCIES = execline
+
+S6_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/execline \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define S6_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_CONF_OPTS))
+endef
+
+define S6_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define S6_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+define S6_REMOVE_STATIC_LIB_DIR
+	rm -rf $(TARGET_DIR)/usr/lib/s6
+endef
+
+S6_POST_INSTALL_TARGET_HOOKS += S6_REMOVE_STATIC_LIB_DIR
+
+define S6_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
+endef
+
+HOST_S6_DEPENDENCIES = host-execline
+
+HOST_S6_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(HOST_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(HOST_DIR)/usr/include \
+	--with-dynlib=$(HOST_DIR)/usr/lib \
+	--disable-static \
+	--enable-shared \
+	--disable-allstatic
+
+define HOST_S6_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_S6_CONF_OPTS))
+endef
+
+define HOST_S6_BUILD_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)
+endef
+
+define HOST_S6_INSTALL_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) \
+		install-dynlib \
+		install-include
+endef
+
+$(eval $(generic-package))
+$(eval $(host-generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 4/9] s6-dns: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
                   ` (2 preceding siblings ...)
  2016-12-10 19:20 ` [Buildroot] [Patch v2 3/9] s6: " Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 5/9] s6-networking: " Eric Le Bihan
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides s6-dns, a suite of DNS client programs and
libraries for Unix systems, as an alternative to the BIND, djbdns or
other DNS clients.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in          |  1 +
 package/s6-dns/Config.in   |  9 +++++++++
 package/s6-dns/s6-dns.hash |  2 ++
 package/s6-dns/s6-dns.mk   | 45 +++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 57 insertions(+)
 create mode 100644 package/s6-dns/Config.in
 create mode 100644 package/s6-dns/s6-dns.hash
 create mode 100644 package/s6-dns/s6-dns.mk

diff --git a/package/Config.in b/package/Config.in
index fdd5a63..8986c47 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1592,6 +1592,7 @@ endif
 	source "package/rsync/Config.in"
 	source "package/rtorrent/Config.in"
 	source "package/rtptools/Config.in"
+	source "package/s6-dns/Config.in"
 	source "package/samba4/Config.in"
 	source "package/sconeserver/Config.in"
 	source "package/ser2net/Config.in"
diff --git a/package/s6-dns/Config.in b/package/s6-dns/Config.in
new file mode 100644
index 0000000..84888ec
--- /dev/null
+++ b/package/s6-dns/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_S6_DNS
+	bool "s6-dns"
+	select BR2_PACKAGE_SKALIBS
+	depends on BR2_USE_MMU # skalibs
+	help
+	  s6-dns is a suite of DNS client programs and libraries for Unix
+	  systems, as an alternative to the BIND, djbdns or other DNS clients.
+
+	  http://skarnet.org/software/s6-dns/
diff --git a/package/s6-dns/s6-dns.hash b/package/s6-dns/s6-dns.hash
new file mode 100644
index 0000000..7cfb9c3
--- /dev/null
+++ b/package/s6-dns/s6-dns.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 8455f3b1edad8f01a1340cb1242c141755729bfd5d71059739eced5c006539ad s6-dns-2.1.0.0.tar.gz
diff --git a/package/s6-dns/s6-dns.mk b/package/s6-dns/s6-dns.mk
new file mode 100644
index 0000000..d77956f
--- /dev/null
+++ b/package/s6-dns/s6-dns.mk
@@ -0,0 +1,45 @@
+################################################################################
+#
+# s6-dns
+#
+################################################################################
+
+S6_DNS_VERSION = 2.1.0.0
+S6_DNS_SITE = http://skarnet.org/software/s6-dns
+S6_DNS_LICENSE = ISC
+S6_DNS_LICENSE_FILES = COPYING
+S6_DNS_INSTALL_STAGING = YES
+S6_DNS_DEPENDENCIES = skalibs
+
+S6_DNS_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define S6_DNS_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_DNS_CONF_OPTS))
+endef
+
+define S6_DNS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define S6_DNS_REMOVE_STATIC_LIB_DIR
+	rm -rf $(TARGET_DIR)/usr/lib/s6-dns
+endef
+
+S6_DNS_POST_INSTALL_TARGET_HOOKS += S6_DNS_REMOVE_STATIC_LIB_DIR
+
+define S6_DNS_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+define S6_DNS_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
+endef
+
+$(eval $(generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 5/9] s6-networking: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
                   ` (3 preceding siblings ...)
  2016-12-10 19:20 ` [Buildroot] [Patch v2 4/9] s6-dns: " Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 6/9] s6-rc: " Eric Le Bihan
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides s6-networking, a suite of small networking
utilities for Unix systems.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in                        |  1 +
 package/s6-networking/Config.in          | 12 ++++++++
 package/s6-networking/s6-networking.hash |  2 ++
 package/s6-networking/s6-networking.mk   | 48 ++++++++++++++++++++++++++++++++
 4 files changed, 63 insertions(+)
 create mode 100644 package/s6-networking/Config.in
 create mode 100644 package/s6-networking/s6-networking.hash
 create mode 100644 package/s6-networking/s6-networking.mk

diff --git a/package/Config.in b/package/Config.in
index 8986c47..300e39a 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1593,6 +1593,7 @@ endif
 	source "package/rtorrent/Config.in"
 	source "package/rtptools/Config.in"
 	source "package/s6-dns/Config.in"
+	source "package/s6-networking/Config.in"
 	source "package/samba4/Config.in"
 	source "package/sconeserver/Config.in"
 	source "package/ser2net/Config.in"
diff --git a/package/s6-networking/Config.in b/package/s6-networking/Config.in
new file mode 100644
index 0000000..a530bd4
--- /dev/null
+++ b/package/s6-networking/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_S6_NETWORKING
+	bool "s6-networking"
+	select BR2_PACKAGE_S6_DNS
+	select BR2_PACKAGE_S6
+	depends on BR2_USE_MMU # s6
+	help
+	  s6-networking is a suite of small networking utilities for Unix
+	  systems. It includes command-line client and server management, TCP
+	  access control, privilege escalation across UNIX domain sockets,
+	  IDENT protocol management and clock synchronization.
+
+	  http://skarnet.org/software/s6-networking/
diff --git a/package/s6-networking/s6-networking.hash b/package/s6-networking/s6-networking.hash
new file mode 100644
index 0000000..a15efab
--- /dev/null
+++ b/package/s6-networking/s6-networking.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 5d8150d7413b335693c6e63092381dd0866b1b6f95662a2cbae5ec17ca449ab0 s6-networking-2.2.1.0.tar.gz
diff --git a/package/s6-networking/s6-networking.mk b/package/s6-networking/s6-networking.mk
new file mode 100644
index 0000000..47d4d61
--- /dev/null
+++ b/package/s6-networking/s6-networking.mk
@@ -0,0 +1,48 @@
+################################################################################
+#
+# s6-networking
+#
+################################################################################
+
+S6_NETWORKING_VERSION = 2.2.1.0
+S6_NETWORKING_SITE = http://skarnet.org/software/s6-networking
+S6_NETWORKING_LICENSE = ISC
+S6_NETWORKING_LICENSE_FILES = COPYING
+S6_NETWORKING_INSTALL_STAGING = YES
+S6_NETWORKING_DEPENDENCIES = s6-dns s6
+
+S6_NETWORKING_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/execline \
+	--with-lib=$(STAGING_DIR)/usr/lib/s6 \
+	--with-lib=$(STAGING_DIR)/usr/lib/s6-dns \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define S6_NETWORKING_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_NETWORKING_CONF_OPTS))
+endef
+
+define S6_NETWORKING_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define S6_NETWORKING_REMOVE_STATIC_LIB_DIR
+	rm -rf $(TARGET_DIR)/usr/lib/s6-networking
+endef
+
+S6_NETWORKING_POST_INSTALL_TARGET_HOOKS += S6_NETWORKING_REMOVE_STATIC_LIB_DIR
+
+define S6_NETWORKING_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+define S6_NETWORKING_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
+endef
+
+$(eval $(generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 6/9] s6-rc: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
                   ` (4 preceding siblings ...)
  2016-12-10 19:20 ` [Buildroot] [Patch v2 5/9] s6-networking: " Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 19:51   ` Baruch Siach
  2016-12-10 19:20 ` [Buildroot] [Patch v2 7/9] s6-portable-utils: " Eric Le Bihan
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides s6-rc, a service manager for s6-based systems,
i.e. a suite of programs that can start and stop services, both
long-running daemons and one-time initialization scripts, in the proper
order according to a dependency tree.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in            |  1 +
 package/s6-rc/Config.in      | 11 +++++++
 package/s6-rc/Config.in.host |  6 ++++
 package/s6-rc/s6-rc.hash     |  2 ++
 package/s6-rc/s6-rc.mk       | 74 ++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 94 insertions(+)
 create mode 100644 package/s6-rc/Config.in
 create mode 100644 package/s6-rc/Config.in.host
 create mode 100644 package/s6-rc/s6-rc.hash
 create mode 100644 package/s6-rc/s6-rc.mk

diff --git a/package/Config.in b/package/Config.in
index 300e39a..bf2ffcc 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1751,6 +1751,7 @@ menu "System tools"
 	source "package/rsyslog/Config.in"
 	source "package/runc/Config.in"
 	source "package/s6/Config.in"
+	source "package/s6-rc/Config.in"
 	source "package/scrub/Config.in"
 	source "package/scrypt/Config.in"
 	source "package/smack/Config.in"
diff --git a/package/s6-rc/Config.in b/package/s6-rc/Config.in
new file mode 100644
index 0000000..416d230
--- /dev/null
+++ b/package/s6-rc/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_S6_RC
+	bool "s6-rc"
+	select BR2_PACKAGE_S6
+	depends on BR2_USE_MMU # s6
+	help
+	  s6-rc is a service manager for s6-based systems, i.e. a suite of
+	  programs that can start and stop services, both long-running daemons
+	  and one-time initialization scripts, in the proper order according to
+	  a dependency tree.
+
+	  http://skarnet.org/software/s6-rc/
diff --git a/package/s6-rc/Config.in.host b/package/s6-rc/Config.in.host
new file mode 100644
index 0000000..d4e55c8
--- /dev/null
+++ b/package/s6-rc/Config.in.host
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_HOST_S6_RC
+	bool "host s6-rc tools"
+	help
+	  Host tools from s6-rc for managing the service database.
+
+	  http://skarnet.org/software/s6-rc/
diff --git a/package/s6-rc/s6-rc.hash b/package/s6-rc/s6-rc.hash
new file mode 100644
index 0000000..3d5186c
--- /dev/null
+++ b/package/s6-rc/s6-rc.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 d04a8a765740ed55e38a33da3639197f51f83b3e498bdef5bc1d1d322b1acff3 s6-rc-0.1.0.0.tar.gz
diff --git a/package/s6-rc/s6-rc.mk b/package/s6-rc/s6-rc.mk
new file mode 100644
index 0000000..2a97d41
--- /dev/null
+++ b/package/s6-rc/s6-rc.mk
@@ -0,0 +1,74 @@
+################################################################################
+#
+# s6-rc
+#
+################################################################################
+
+S6_RC_VERSION = 0.1.0.0
+S6_RC_SITE = http://skarnet.org/software/s6-rc
+S6_RC_LICENSE = ISC
+S6_RC_LICENSE_FILES = COPYING
+S6_RC_INSTALL_STAGING = YES
+S6_RC_DEPENDENCIES = s6
+
+S6_RC_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/execline \
+	--with-lib=$(STAGING_DIR)/usr/lib/s6 \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define S6_RC_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_RC_CONF_OPTS))
+endef
+
+define S6_RC_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define S6_RC_REMOVE_STATIC_LIB_DIR
+	rm -rf $(TARGET_DIR)/usr/lib/s6-rc
+endef
+
+S6_RC_POST_INSTALL_TARGET_HOOKS += S6_RC_REMOVE_STATIC_LIB_DIR
+
+define S6_RC_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+define S6_RC_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
+endef
+
+HOST_S6_RC_DEPENDENCIES = host-s6
+
+HOST_S6_RC_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(HOST_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(HOST_DIR)/usr/include \
+	--with-dynlib=$(HOST_DIR)/usr/lib \
+	--disable-static \
+	--enable-shared \
+	--disable-allstatic
+
+define HOST_S6_RC_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_S6_RC_CONF_OPTS))
+endef
+
+define HOST_S6_RC_BUILD_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)
+endef
+
+define HOST_S6_RC_INSTALL_CMDS
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) \
+		install-dynlib \
+		install-bin
+	rm -f $(HOST_DIR)/usr/bin/s6-rc-dryrun
+endef
+
+$(eval $(generic-package))
+$(eval $(host-generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 7/9] s6-portable-utils: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
                   ` (5 preceding siblings ...)
  2016-12-10 19:20 ` [Buildroot] [Patch v2 6/9] s6-rc: " Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 8/9] s6-linux-utils: " Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 9/9] s6-linux-init: " Eric Le Bihan
  8 siblings, 0 replies; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides s6-portable-utils, a set of tiny general Unix
utilities, often performing well-known tasks such as cut and grep, but
optimized for simplicity and small size.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in                                |  1 +
 package/s6-portable-utils/Config.in              | 11 ++++++++
 package/s6-portable-utils/s6-portable-utils.hash |  2 ++
 package/s6-portable-utils/s6-portable-utils.mk   | 34 ++++++++++++++++++++++++
 4 files changed, 48 insertions(+)
 create mode 100644 package/s6-portable-utils/Config.in
 create mode 100644 package/s6-portable-utils/s6-portable-utils.hash
 create mode 100644 package/s6-portable-utils/s6-portable-utils.mk

diff --git a/package/Config.in b/package/Config.in
index bf2ffcc..54d3219 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1751,6 +1751,7 @@ menu "System tools"
 	source "package/rsyslog/Config.in"
 	source "package/runc/Config.in"
 	source "package/s6/Config.in"
+	source "package/s6-portable-utils/Config.in"
 	source "package/s6-rc/Config.in"
 	source "package/scrub/Config.in"
 	source "package/scrypt/Config.in"
diff --git a/package/s6-portable-utils/Config.in b/package/s6-portable-utils/Config.in
new file mode 100644
index 0000000..95aca0e
--- /dev/null
+++ b/package/s6-portable-utils/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_S6_PORTABLE_UTILS
+	bool "s6-portable-utils"
+	select BR2_PACKAGE_SKALIBS
+	depends on BR2_USE_MMU # skalibs
+	help
+	  s6-portable-utils is a set of tiny general Unix utilities, often
+	  performing well-known tasks such as cut and grep, but optimized for
+	  simplicity and small size. They were designed for embedded systems
+	  and other constrained environments, but they work everywhere.
+
+	  http://skarnet.org/software/s6-portable-utils/
diff --git a/package/s6-portable-utils/s6-portable-utils.hash b/package/s6-portable-utils/s6-portable-utils.hash
new file mode 100644
index 0000000..a03e6cd
--- /dev/null
+++ b/package/s6-portable-utils/s6-portable-utils.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 cde145b7b9d1f1685f271c45c8aed635e74221689bb8ec21a11b3e5a252d1c4e s6-portable-utils-2.1.0.0.tar.gz
diff --git a/package/s6-portable-utils/s6-portable-utils.mk b/package/s6-portable-utils/s6-portable-utils.mk
new file mode 100644
index 0000000..7461450
--- /dev/null
+++ b/package/s6-portable-utils/s6-portable-utils.mk
@@ -0,0 +1,34 @@
+################################################################################
+#
+# s6-portable-utils
+#
+################################################################################
+
+S6_PORTABLE_UTILS_VERSION = 2.1.0.0
+S6_PORTABLE_UTILS_SITE = http://skarnet.org/software/s6-portable-utils
+S6_PORTABLE_UTILS_LICENSE = ISC
+S6_PORTABLE_UTILS_LICENSE_FILES = COPYING
+S6_PORTABLE_UTILS_DEPENDENCIES = skalibs
+
+S6_PORTABLE_UTILS_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define S6_PORTABLE_UTILS_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_PORTABLE_UTILS_CONF_OPTS))
+endef
+
+define S6_PORTABLE_UTILS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define S6_PORTABLE_UTILS_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+$(eval $(generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 8/9] s6-linux-utils: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
                   ` (6 preceding siblings ...)
  2016-12-10 19:20 ` [Buildroot] [Patch v2 7/9] s6-portable-utils: " Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  2016-12-10 19:20 ` [Buildroot] [Patch v2 9/9] s6-linux-init: " Eric Le Bihan
  8 siblings, 0 replies; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides s6-linux-utils, a set of minimalistic
Linux-specific system utilities.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in                          |  1 +
 package/s6-linux-utils/Config.in           |  9 ++++++++
 package/s6-linux-utils/s6-linux-utils.hash |  2 ++
 package/s6-linux-utils/s6-linux-utils.mk   | 34 ++++++++++++++++++++++++++++++
 4 files changed, 46 insertions(+)
 create mode 100644 package/s6-linux-utils/Config.in
 create mode 100644 package/s6-linux-utils/s6-linux-utils.hash
 create mode 100644 package/s6-linux-utils/s6-linux-utils.mk

diff --git a/package/Config.in b/package/Config.in
index 54d3219..e7035b0 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1751,6 +1751,7 @@ menu "System tools"
 	source "package/rsyslog/Config.in"
 	source "package/runc/Config.in"
 	source "package/s6/Config.in"
+	source "package/s6-linux-utils/Config.in"
 	source "package/s6-portable-utils/Config.in"
 	source "package/s6-rc/Config.in"
 	source "package/scrub/Config.in"
diff --git a/package/s6-linux-utils/Config.in b/package/s6-linux-utils/Config.in
new file mode 100644
index 0000000..4624b50
--- /dev/null
+++ b/package/s6-linux-utils/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_S6_LINUX_UTILS
+	bool "s6-linux-utils"
+	select BR2_PACKAGE_SKALIBS
+	depends on BR2_USE_MMU # skalibs
+	help
+	  s6-linux-utils is a set of minimalistic Linux-specific system
+	  utilities.
+
+	  http://skarnet.org/software/s6-linux-utils/
diff --git a/package/s6-linux-utils/s6-linux-utils.hash b/package/s6-linux-utils/s6-linux-utils.hash
new file mode 100644
index 0000000..600c5fc
--- /dev/null
+++ b/package/s6-linux-utils/s6-linux-utils.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 587745abfbf2cc631bb54dd2b3fd29f39b723e3c50e28165138a85c98fda35f9 s6-linux-utils-2.2.0.0.tar.gz
diff --git a/package/s6-linux-utils/s6-linux-utils.mk b/package/s6-linux-utils/s6-linux-utils.mk
new file mode 100644
index 0000000..04ce688
--- /dev/null
+++ b/package/s6-linux-utils/s6-linux-utils.mk
@@ -0,0 +1,34 @@
+################################################################################
+#
+# s6-linux-utils
+#
+################################################################################
+
+S6_LINUX_UTILS_VERSION = 2.2.0.0
+S6_LINUX_UTILS_SITE = http://skarnet.org/software/s6-linux-utils
+S6_LINUX_UTILS_LICENSE = ISC
+S6_LINUX_UTILS_LICENSE_FILES = COPYING
+S6_LINUX_UTILS_DEPENDENCIES = skalibs
+
+S6_LINUX_UTILS_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define S6_LINUX_UTILS_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_LINUX_UTILS_CONF_OPTS))
+endef
+
+define S6_LINUX_UTILS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define S6_LINUX_UTILS_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+$(eval $(generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 9/9] s6-linux-init: new package
  2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
                   ` (7 preceding siblings ...)
  2016-12-10 19:20 ` [Buildroot] [Patch v2 8/9] s6-linux-utils: " Eric Le Bihan
@ 2016-12-10 19:20 ` Eric Le Bihan
  8 siblings, 0 replies; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 19:20 UTC (permalink / raw)
  To: buildroot

This new package provides s6-linux-init, a set of minimalistic tools to
create a s6-based init system, including a /sbin/init program, on a
machine running a Linux kernel.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 package/Config.in                        |  1 +
 package/s6-linux-init/Config.in          | 11 ++++++++++
 package/s6-linux-init/s6-linux-init.hash |  2 ++
 package/s6-linux-init/s6-linux-init.mk   | 36 ++++++++++++++++++++++++++++++++
 4 files changed, 50 insertions(+)
 create mode 100644 package/s6-linux-init/Config.in
 create mode 100644 package/s6-linux-init/s6-linux-init.hash
 create mode 100644 package/s6-linux-init/s6-linux-init.mk

diff --git a/package/Config.in b/package/Config.in
index e7035b0..725d0aa 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1751,6 +1751,7 @@ menu "System tools"
 	source "package/rsyslog/Config.in"
 	source "package/runc/Config.in"
 	source "package/s6/Config.in"
+	source "package/s6-linux-init/Config.in"
 	source "package/s6-linux-utils/Config.in"
 	source "package/s6-portable-utils/Config.in"
 	source "package/s6-rc/Config.in"
diff --git a/package/s6-linux-init/Config.in b/package/s6-linux-init/Config.in
new file mode 100644
index 0000000..db07e69
--- /dev/null
+++ b/package/s6-linux-init/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_S6_LINUX_INIT
+	bool "s6-linux-init"
+	select BR2_PACKAGE_S6
+	select BR2_PACKAGE_S6_LINUX_UTILS
+	select BR2_PACKAGE_S6_PORTABLE_UTILS
+	depends on BR2_USE_MMU # s6
+	help
+	  s6-linux-init is a set of minimalistic tools to create a s6-based
+	  init system, including a /sbin/init binary, on a Linux kernel.
+
+	  http://skarnet.org/software/s6-linux-init/
diff --git a/package/s6-linux-init/s6-linux-init.hash b/package/s6-linux-init/s6-linux-init.hash
new file mode 100644
index 0000000..e02e391
--- /dev/null
+++ b/package/s6-linux-init/s6-linux-init.hash
@@ -0,0 +1,2 @@
+# Locally generated
+sha256 131484e61eff0e671e112f0436b13e8e7d08752f810d8bec4924a68383eee2b9 s6-linux-init-0.2.0.0.tar.gz
diff --git a/package/s6-linux-init/s6-linux-init.mk b/package/s6-linux-init/s6-linux-init.mk
new file mode 100644
index 0000000..112e176
--- /dev/null
+++ b/package/s6-linux-init/s6-linux-init.mk
@@ -0,0 +1,36 @@
+################################################################################
+#
+# s6-linux-init
+#
+################################################################################
+
+S6_LINUX_INIT_VERSION = 0.2.0.0
+S6_LINUX_INIT_SITE = http://skarnet.org/software/s6-linux-init
+S6_LINUX_INIT_LICENSE = ISC
+S6_LINUX_INIT_LICENSE_FILES = COPYING
+S6_LINUX_INIT_DEPENDENCIES = s6 s6-linux-utils s6-portable-utils
+
+S6_LINUX_INIT_CONF_OPTS = \
+	--prefix=/usr \
+	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
+	--with-include=$(STAGING_DIR)/usr/include \
+	--with-dynlib=$(STAGING_DIR)/usr/lib \
+	--with-lib=$(STAGING_DIR)/usr/lib/execline \
+	--with-lib=$(STAGING_DIR)/usr/lib/s6 \
+	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
+	$(if $(BR2_STATIC_LIBS),,--disable-allstatic) \
+	$(SHARED_STATIC_LIBS_OPTS)
+
+define S6_LINUX_INIT_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_LINUX_INIT_CONF_OPTS))
+endef
+
+define S6_LINUX_INIT_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define S6_LINUX_INIT_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
+
+$(eval $(generic-package))
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 6/9] s6-rc: new package
  2016-12-10 19:20 ` [Buildroot] [Patch v2 6/9] s6-rc: " Eric Le Bihan
@ 2016-12-10 19:51   ` Baruch Siach
  2016-12-10 20:41     ` Eric Le Bihan
  0 siblings, 1 reply; 23+ messages in thread
From: Baruch Siach @ 2016-12-10 19:51 UTC (permalink / raw)
  To: buildroot

Hi Eric,

On Sat, Dec 10, 2016 at 08:20:47PM +0100, Eric Le Bihan wrote:
> This new package provides s6-rc, a service manager for s6-based systems,
> i.e. a suite of programs that can start and stop services, both
> long-running daemons and one-time initialization scripts, in the proper
> order according to a dependency tree.
> 
> Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>

[...]

> +$(eval $(generic-package))
> +$(eval $(host-generic-package))

What do you need the host build for? As far as I can see, no package in this 
series uses it.

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 6/9] s6-rc: new package
  2016-12-10 19:51   ` Baruch Siach
@ 2016-12-10 20:41     ` Eric Le Bihan
  2016-12-11 13:27       ` Thomas Petazzoni
  0 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-10 20:41 UTC (permalink / raw)
  To: buildroot

Hi!

On 16-12-10 21:51:44, Baruch Siach wrote:
> Hi Eric,
>
> On Sat, Dec 10, 2016 at 08:20:47PM +0100, Eric Le Bihan wrote:
> > This new package provides s6-rc, a service manager for s6-based systems,
> > i.e. a suite of programs that can start and stop services, both
> > long-running daemons and one-time initialization scripts, in the proper
> > order according to a dependency tree.
> >
> > Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
>
> [...]
>
> > +$(eval $(generic-package))
> > +$(eval $(host-generic-package))
>
> What do you need the host build for? As far as I can see, no package in this
> series uses it.

Yes, no package in the series uses the host variant, but it is provided
as it allows the user to build the service database offline and include
it into the root file system (e.g. in a post-build script).

See [1] and [2] for more examples.

[1] https://github.com/elebihan/br2-ext-skarnet/blob/master/package/s6-br2-init-skeleton/s6-br2-init-skeleton.mk
[2] https://github.com/elebihan/br2-ext-skarnet/blob/master/board/common/post-build.sh

--
ELB

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 1/9] skalibs: new package
  2016-12-10 19:20 ` [Buildroot] [Patch v2 1/9] skalibs: new package Eric Le Bihan
@ 2016-12-10 20:46   ` Thomas Petazzoni
  2016-12-11 18:18     ` Eric Le Bihan
  0 siblings, 1 reply; 23+ messages in thread
From: Thomas Petazzoni @ 2016-12-10 20:46 UTC (permalink / raw)
  To: buildroot

Hello,

On Sat, 10 Dec 2016 20:20:42 +0100, Eric Le Bihan wrote:
> This new package provides skalibs, a collection of free software / open
> source C development files used for building all software from
> skarnet.org.
> 
> Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>

This looks pretty good, I only have a few comments, see below.

> diff --git a/package/skalibs/0001-No-runtime-tests-for-endianness.patch b/package/skalibs/0001-No-runtime-tests-for-endianness.patch
> new file mode 100644
> index 0000000..7a711d5
> --- /dev/null
> +++ b/package/skalibs/0001-No-runtime-tests-for-endianness.patch
> @@ -0,0 +1,93 @@
> +From 1e6f0b094c6ce6454be572704b866d2ce0962e59 Mon Sep 17 00:00:00 2001
> +From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> +Date: Sun, 4 Dec 2016 19:10:40 +0100
> +Subject: [PATCH 1/2] No runtime tests for endianness

Please generate your patches with "git format-patch -N", because we
want [PATCH] instead of [PATCH 1/2].

> +Replace build and execution of runtime test programs for determining
> +the endianness of the target with compile time test programs.
> +
> +This improves support for cross-compilation.

Missing your SoB.

> diff --git a/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
> new file mode 100644
> index 0000000..c58af33
> --- /dev/null
> +++ b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
> @@ -0,0 +1,52 @@
> +From d868600a3f437750bc44a783d677a25a48100096 Mon Sep 17 00:00:00 2001
> +From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> +Date: Sun, 4 Dec 2016 19:11:25 +0100
> +Subject: [PATCH 2/2] No runtime tests for type sizes
> +
> +Replace build and execution of runtime test programs for determining
> +some type sizes of the target with compile time test programs.
> +
> +This improves support for cross-compilation.

Same comments: git format-patch -N + SoB.

Have you submitted those patches upstream?

> diff --git a/package/skalibs/Config.in b/package/skalibs/Config.in
> new file mode 100644
> index 0000000..307b016
> --- /dev/null
> +++ b/package/skalibs/Config.in
> @@ -0,0 +1,9 @@
> +config BR2_PACKAGE_SKALIBS
> +	bool "skalibs"
> +	depends on BR2_USE_MMU # fork()
> +	help
> +	  skalibs is a package centralizing the free software / open source C

This line looks too long. Lines should be wrapped at 72 characters.


> +define SKALIBS_REMOVE_STATIC_LIB_DIR
> +	rm -rf $(TARGET_DIR)/usr/lib/skalibs
> +endef
> +
> +SKALIBS_POST_INSTALL_TARGET_HOOKS += SKALIBS_REMOVE_STATIC_LIB_DIR

What is this static lib dir thing? If skalibs installs its static
libraries in $(STAGING_DIR)/usr/lib/skalibs/ instead of the default
$(STAGING_DIR)/usr/lib, then the linker will not find them.

> +HOST_SKALIBS_CONF_OPTS = \
> +	--prefix=/usr \

This should be:

	--prefix=$(HOST_DIR)/usr

> +	--disable-static \
> +	--enable-shared \
> +	--disable-allstatic
> +
> +define HOST_SKALIBS_CONFIGURE_CMDS
> +	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_SKALIBS_CONF_OPTS))
> +endef
> +
> +define HOST_SKALIBS_BUILD_CMDS
> +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)

Why do you have DESTDIR set at build time? You're not passing DESTDIR
when building the target variant.

> +endef
> +
> +define HOST_SKALIBS_INSTALL_CMDS
> +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install

If you pass --prefix=$(HOST_DIR)/usr as suggested above, then passing
DESTDIR here should no longer be needed.

In the commit log, it would be good to mention why a host variant of
the package is introduced.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 2/9] execline: new package
  2016-12-10 19:20 ` [Buildroot] [Patch v2 2/9] execline: " Eric Le Bihan
@ 2016-12-10 20:49   ` Thomas Petazzoni
  2016-12-11 18:30     ` Eric Le Bihan
  0 siblings, 1 reply; 23+ messages in thread
From: Thomas Petazzoni @ 2016-12-10 20:49 UTC (permalink / raw)
  To: buildroot

Hello,

On Sat, 10 Dec 2016 20:20:43 +0100, Eric Le Bihan wrote:

> diff --git a/package/execline/Config.in.host b/package/execline/Config.in.host
> new file mode 100644
> index 0000000..4e188e1
> --- /dev/null
> +++ b/package/execline/Config.in.host
> @@ -0,0 +1,7 @@
> +config BR2_PACKAGE_HOST_EXECLINE
> +	bool "host execline"
> +	help
> +	  Host version of execline, a (non-interactive) scripting language,
> +	  like sh.
> +
> +	  http://skarnet.org/software/execline/

Do we really a menuconfig-visible option for the host variant?

If so, then please explain why in the commit log. Also mentioning in
the commit log why a host variant is introduced would be nice.

> +EXECLINE_CONF_OPTS = \
> +	--prefix=/usr \
> +	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
> +	--with-include=$(STAGING_DIR)/usr/include \
> +	--with-dynlib=$(STAGING_DIR)/usr/lib \
> +	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \

Ah, ok, so that's how it finds the static libraries?

> +HOST_EXECLINE_DEPENDENCIES = host-skalibs
> +
> +HOST_EXECLINE_CONF_OPTS = \
> +	--prefix=/usr \

Should be --prefix=$(HOST_DIR)/usr

> +	--with-sysdeps=$(HOST_DIR)/usr/lib/skalibs/sysdeps \
> +	--with-include=$(HOST_DIR)/usr/include \
> +	--with-dynlib=$(HOST_DIR)/usr/lib \
> +	--disable-static \
> +	--enable-shared \
> +	--disable-allstatic
> +
> +define HOST_EXECLINE_CONFIGURE_CMDS
> +	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_EXECLINE_CONF_OPTS))
> +endef
> +
> +define HOST_EXECLINE_BUILD_CMDS
> +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)

DESTDIR= should not be needed.

> +endef
> +
> +define HOST_EXECLINE_INSTALL_CMDS
> +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install

DESTDIR= is no longer needed with --prefix=$(HOST_DIR)/usr.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 3/9] s6: new package
  2016-12-10 19:20 ` [Buildroot] [Patch v2 3/9] s6: " Eric Le Bihan
@ 2016-12-10 20:52   ` Thomas Petazzoni
  2016-12-11 18:38     ` Eric Le Bihan
  0 siblings, 1 reply; 23+ messages in thread
From: Thomas Petazzoni @ 2016-12-10 20:52 UTC (permalink / raw)
  To: buildroot

Hello,

On Sat, 10 Dec 2016 20:20:44 +0100, Eric Le Bihan wrote:
> This new package provides s6, a small suite of programs for UNIX,
> designed to allow process supervision (a.k.a service supervision), in
> the line of daemontools and runit.
> 
> Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>

Same comments as the previous patches: please fix the --prefix=/usr to
--prefix=$(HOST_DIR)/usr for the host variant. And there is the same
issue in the following patches as well.

> +define S6_INSTALL_STAGING_CMDS
> +	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
> +endef

You're doing a plain "make install" here.

> +define HOST_S6_INSTALL_CMDS
> +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) \
> +		install-dynlib \
> +		install-include
> +endef

but not here. Why?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 6/9] s6-rc: new package
  2016-12-10 20:41     ` Eric Le Bihan
@ 2016-12-11 13:27       ` Thomas Petazzoni
  0 siblings, 0 replies; 23+ messages in thread
From: Thomas Petazzoni @ 2016-12-11 13:27 UTC (permalink / raw)
  To: buildroot

Hello,

On Sat, 10 Dec 2016 21:41:12 +0100, Eric Le Bihan wrote:

> Yes, no package in the series uses the host variant, but it is provided
> as it allows the user to build the service database offline and include
> it into the root file system (e.g. in a post-build script).

Makes sense, but this should be explained in the commit log, and in the
help text of the Config.in.host option.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 1/9] skalibs: new package
  2016-12-10 20:46   ` Thomas Petazzoni
@ 2016-12-11 18:18     ` Eric Le Bihan
  2016-12-13 21:54       ` Thomas Petazzoni
  0 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-11 18:18 UTC (permalink / raw)
  To: buildroot

Hi!
On 16-12-10 21:46:41, Thomas Petazzoni wrote:

[...]

> > diff --git a/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
> > new file mode 100644
> > index 0000000..c58af33
> > --- /dev/null
> > +++ b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch
> > @@ -0,0 +1,52 @@
> > +From d868600a3f437750bc44a783d677a25a48100096 Mon Sep 17 00:00:00 2001
> > +From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > +Date: Sun, 4 Dec 2016 19:11:25 +0100
> > +Subject: [PATCH 2/2] No runtime tests for type sizes
> > +
> > +Replace build and execution of runtime test programs for determining
> > +some type sizes of the target with compile time test programs.
> > +
> > +This improves support for cross-compilation.
>
> Same comments: git format-patch -N + SoB.
>
> Have you submitted those patches upstream?

I'll re-check with the maintainer: skarnet software is made to be very
portable, so it should build with *ANY* C compiler. My patches may work
with GCC/Clang, but not with other compilers.

[...]

> > +define SKALIBS_REMOVE_STATIC_LIB_DIR
> > +	rm -rf $(TARGET_DIR)/usr/lib/skalibs
> > +endef
> > +
> > +SKALIBS_POST_INSTALL_TARGET_HOOKS += SKALIBS_REMOVE_STATIC_LIB_DIR
>
> What is this static lib dir thing? If skalibs installs its static
> libraries in $(STAGING_DIR)/usr/lib/skalibs/ instead of the default
> $(STAGING_DIR)/usr/lib, then the linker will not find them.

The skarnet libraries are installed in a subdirectory of /usr/lib and
the skarnet build system is able to find them properly. But they won't
be found when cleaning up the target file system, hence the custom hook.

> > +HOST_SKALIBS_CONF_OPTS = \
> > +	--prefix=/usr \
>
> This should be:
>
> 	--prefix=$(HOST_DIR)/usr
>
> > +	--disable-static \
> > +	--enable-shared \
> > +	--disable-allstatic
> > +
> > +define HOST_SKALIBS_CONFIGURE_CMDS
> > +	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_SKALIBS_CONF_OPTS))
> > +endef
> > +
> > +define HOST_SKALIBS_BUILD_CMDS
> > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)
>
> Why do you have DESTDIR set at build time? You're not passing DESTDIR
> when building the target variant.
>
> > +endef
> > +
> > +define HOST_SKALIBS_INSTALL_CMDS
> > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install
>
> If you pass --prefix=$(HOST_DIR)/usr as suggested above, then passing
> DESTDIR here should no longer be needed.

The use of --prefix=/usr and DESTDIR=$(HOST_DIR) was intentional. The
host variant of s6-rc provides s6-rc-compile, a tool to build the
service database for the target offline, as well as some execline
scripts, where the she-bang contains an absolute path to the execlineb
program.

If --prefix=$(HOST_DIR)/usr were to be used, the execline scripts on the
target file system would refer to the execline program installed on the
host. This is not what we want.

Besides, some execline helpers use hardcoded paths containing the
prefix.

Hence the trick to use --prefix=/usr and DESTDIR at installation time,
which would lead s6-rc-compile to generate proper scripts and avoid
helpers location problems (though that would lead to other host variants
of skarnet programs not working, but we are not interesting in those).

Anyway, it looks like --prefix=$(HOST_DIR)/usr can be used, as I've
noticed a very interesting --shebangdir= option in the ./configure
script of execline. So, I'll rework this part.

> In the commit log, it would be good to mention why a host variant of
> the package is introduced.

Will do!

Thanks for the review.

--
ELB

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 2/9] execline: new package
  2016-12-10 20:49   ` Thomas Petazzoni
@ 2016-12-11 18:30     ` Eric Le Bihan
  0 siblings, 0 replies; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-11 18:30 UTC (permalink / raw)
  To: buildroot

Hi!

On 16-12-10 21:49:01, Thomas Petazzoni wrote:
> Hello,
>
> On Sat, 10 Dec 2016 20:20:43 +0100, Eric Le Bihan wrote:
>
> > diff --git a/package/execline/Config.in.host b/package/execline/Config.in.host
> > new file mode 100644
> > index 0000000..4e188e1
> > --- /dev/null
> > +++ b/package/execline/Config.in.host
> > @@ -0,0 +1,7 @@
> > +config BR2_PACKAGE_HOST_EXECLINE
> > +	bool "host execline"
> > +	help
> > +	  Host version of execline, a (non-interactive) scripting language,
> > +	  like sh.
> > +
> > +	  http://skarnet.org/software/execline/
>
> Do we really a menuconfig-visible option for the host variant?
>
> If so, then please explain why in the commit log. Also mentioning in
> the commit log why a host variant is introduced would be nice.

I will remove the menuconfig entry. It is used by the host variants of s6
and s6-rc, but having host-execline in their respective dependency lists
is enough. It is very unlikely that the user want to write post-build
scripts using execline with having built host-s6 and friends.

> > +EXECLINE_CONF_OPTS = \
> > +	--prefix=/usr \
> > +	--with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \
> > +	--with-include=$(STAGING_DIR)/usr/include \
> > +	--with-dynlib=$(STAGING_DIR)/usr/lib \
> > +	--with-lib=$(STAGING_DIR)/usr/lib/skalibs \
>
> Ah, ok, so that's how it finds the static libraries?

Yep! The skarnet build system may follow the "./configure; make; make
install" convention, but internally, this is another story. So the
libraries are stored in a subdirectory.

> > +HOST_EXECLINE_DEPENDENCIES = host-skalibs
> > +
> > +HOST_EXECLINE_CONF_OPTS = \
> > +	--prefix=/usr \
>
> Should be --prefix=$(HOST_DIR)/usr
>
> > +	--with-sysdeps=$(HOST_DIR)/usr/lib/skalibs/sysdeps \
> > +	--with-include=$(HOST_DIR)/usr/include \
> > +	--with-dynlib=$(HOST_DIR)/usr/lib \
> > +	--disable-static \
> > +	--enable-shared \
> > +	--disable-allstatic
> > +
> > +define HOST_EXECLINE_CONFIGURE_CMDS
> > +	(cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_EXECLINE_CONF_OPTS))
> > +endef
> > +
> > +define HOST_EXECLINE_BUILD_CMDS
> > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)
>
> DESTDIR= should not be needed.
>
> > +endef
> > +
> > +define HOST_EXECLINE_INSTALL_CMDS
> > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install
>
> DESTDIR= is no longer needed with --prefix=$(HOST_DIR)/usr.

See the skalibs review for details about this topic.

Thanks for the review.

--
ELB

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 3/9] s6: new package
  2016-12-10 20:52   ` Thomas Petazzoni
@ 2016-12-11 18:38     ` Eric Le Bihan
  2016-12-13 21:55       ` Thomas Petazzoni
  0 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-11 18:38 UTC (permalink / raw)
  To: buildroot

Hi!

On 16-12-10 21:52:22, Thomas Petazzoni wrote:

[...]

> > +define S6_INSTALL_STAGING_CMDS
> > +	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
> > +endef
>
> You're doing a plain "make install" here.
>
> > +define HOST_S6_INSTALL_CMDS
> > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) \
> > +		install-dynlib \
> > +		install-include
> > +endef
>
> but not here. Why?

The host variant of s6 builds some process supervision programs that I
deemed unuseful for the user, and only the libraries and headers are
needed to build the host variants of execline and s6-rc. But it is true
that this also applies to the staging directory. So, I'll use
"install-dynlib install-include" in this case too.

Thanks for the review.

--
ELB

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 1/9] skalibs: new package
  2016-12-11 18:18     ` Eric Le Bihan
@ 2016-12-13 21:54       ` Thomas Petazzoni
  2016-12-17 13:40         ` Eric Le Bihan
  0 siblings, 1 reply; 23+ messages in thread
From: Thomas Petazzoni @ 2016-12-13 21:54 UTC (permalink / raw)
  To: buildroot

Hello,

On Sun, 11 Dec 2016 19:18:27 +0100, Eric Le Bihan wrote:

> > Have you submitted those patches upstream?  
> 
> I'll re-check with the maintainer: skarnet software is made to be very
> portable, so it should build with *ANY* C compiler. My patches may work
> with GCC/Clang, but not with other compilers.

Maybe they can accept that as an option, like if you're cross-compiling
you can pass an option to tell skalibs to use those tests that may work
only with gcc ?

> > What is this static lib dir thing? If skalibs installs its static
> > libraries in $(STAGING_DIR)/usr/lib/skalibs/ instead of the default
> > $(STAGING_DIR)/usr/lib, then the linker will not find them.  
> 
> The skarnet libraries are installed in a subdirectory of /usr/lib and
> the skarnet build system is able to find them properly. But they won't
> be found when cleaning up the target file system, hence the custom hook.

OK (it would be good to mention that in the commit log perhaps).

And so it's really only the static library that needs to be removed:
the shared library is really not built/installed when shared libraries
are not enabled in the Buildroot configuration?

> > > +define HOST_SKALIBS_BUILD_CMDS
> > > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)  
> >
> > Why do you have DESTDIR set at build time? You're not passing DESTDIR
> > when building the target variant.

I don't think you replied to this specific question. Did I miss
something?

> > > +endef
> > > +
> > > +define HOST_SKALIBS_INSTALL_CMDS
> > > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install  
> >
> > If you pass --prefix=$(HOST_DIR)/usr as suggested above, then passing
> > DESTDIR here should no longer be needed.  
> 
> The use of --prefix=/usr and DESTDIR=$(HOST_DIR) was intentional. The
> host variant of s6-rc provides s6-rc-compile, a tool to build the
> service database for the target offline, as well as some execline
> scripts, where the she-bang contains an absolute path to the execlineb
> program.

Which should be fixed afterwards.

> If --prefix=$(HOST_DIR)/usr were to be used, the execline scripts on the
> target file system would refer to the execline program installed on the
> host. This is not what we want.

Indeed, but it should be fixed afterwards. Using --prefix=/usr
DESTDIR=$(HOST_DIR) is really wrong, as it means that those host tools
will be tempted to open things in for example /usr/share/skalibs/,
while they should open in $(HOST_DIR)/usr/share/skalibs/.

So installing host tools with --prefix=$(HOST_DIR)/usr is really
important, even if it means that we have to fix up a few things like
shebangs in generated scripts.

Or better, the process to generate those scripts gets an additional
argument, which is the path of the execline program on the target.

> Besides, some execline helpers use hardcoded paths containing the
> prefix.
> 
> Hence the trick to use --prefix=/usr and DESTDIR at installation time,
> which would lead s6-rc-compile to generate proper scripts and avoid
> helpers location problems (though that would lead to other host variants
> of skarnet programs not working, but we are not interesting in those).
> 
> Anyway, it looks like --prefix=$(HOST_DIR)/usr can be used, as I've
> noticed a very interesting --shebangdir= option in the ./configure
> script of execline. So, I'll rework this part.

Ah, exactly what I was proposing earlier :-)

> > In the commit log, it would be good to mention why a host variant of
> > the package is introduced.  
> 
> Will do!

Thanks!

Do you think you can respin soon those patches? Your previous iteration
was from August this year. I know we are also not very fast at applying
patches, so it's hard to criticize anything here. But when there are
5-6 months between two iterations of a series, we completely lose the
context, and it's almost as-if the review restart from scratch. So if
you can post the new iterations a bit faster, the context is still
fresh, and there's a higher chance that it will get merged soon.

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 3/9] s6: new package
  2016-12-11 18:38     ` Eric Le Bihan
@ 2016-12-13 21:55       ` Thomas Petazzoni
  0 siblings, 0 replies; 23+ messages in thread
From: Thomas Petazzoni @ 2016-12-13 21:55 UTC (permalink / raw)
  To: buildroot

Hello,

On Sun, 11 Dec 2016 19:38:26 +0100, Eric Le Bihan wrote:

> > > +define S6_INSTALL_STAGING_CMDS
> > > +	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
> > > +endef  
> >
> > You're doing a plain "make install" here.
> >  
> > > +define HOST_S6_INSTALL_CMDS
> > > +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) \
> > > +		install-dynlib \
> > > +		install-include
> > > +endef  
> >
> > but not here. Why?  
> 
> The host variant of s6 builds some process supervision programs that I
> deemed unuseful for the user, and only the libraries and headers are
> needed to build the host variants of execline and s6-rc. But it is true
> that this also applies to the staging directory. So, I'll use
> "install-dynlib install-include" in this case too.

Or just use plain "make install" everywhere. We really don't care about
disk space in HOST_DIR or STAGING_DIR, so simplicity should win.

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 1/9] skalibs: new package
  2016-12-13 21:54       ` Thomas Petazzoni
@ 2016-12-17 13:40         ` Eric Le Bihan
  2016-12-17 13:47           ` Thomas Petazzoni
  0 siblings, 1 reply; 23+ messages in thread
From: Eric Le Bihan @ 2016-12-17 13:40 UTC (permalink / raw)
  To: buildroot

On 16-12-13 22:54:02, Thomas Petazzoni wrote:

[...]

> > > What is this static lib dir thing? If skalibs installs its static
> > > libraries in $(STAGING_DIR)/usr/lib/skalibs/ instead of the default
> > > $(STAGING_DIR)/usr/lib, then the linker will not find them.
> >
> > The skarnet libraries are installed in a subdirectory of /usr/lib and
> > the skarnet build system is able to find them properly. But they won't
> > be found when cleaning up the target file system, hence the custom hook.
>
> OK (it would be good to mention that in the commit log perhaps).
>
> And so it's really only the static library that needs to be removed:
> the shared library is really not built/installed when shared libraries
> are not enabled in the Buildroot configuration?

Yes. When shared libraries are disabled in Buildroot configuration, they
are not built.

[...]

> > Besides, some execline helpers use hardcoded paths containing the
> > prefix.
> >
> > Hence the trick to use --prefix=/usr and DESTDIR at installation time,
> > which would lead s6-rc-compile to generate proper scripts and avoid
> > helpers location problems (though that would lead to other host variants
> > of skarnet programs not working, but we are not interesting in those).
> >
> > Anyway, it looks like --prefix=$(HOST_DIR)/usr can be used, as I've
> > noticed a very interesting --shebangdir= option in the ./configure
> > script of execline. So, I'll rework this part.
>
> Ah, exactly what I was proposing earlier :-)

I've modified the package Makefiles for skalibs, execline, s6 and s6-rc
to use --prefix=$(HOST_DIR)/usr when building the host variants:

 - for execline: adding --shebangdir=/usr/bin makes it generates correct
   scripts for the target.
 - for s6-rc: adding --libexecdir=/usr/libexec makes it generates
   correct scripts/helpers for the target (thought some programs are not
   usable on the host, but they are not used, so they will not be
   installed).

So, I can get rid of the $(DESTDIR) trick in host variants.

> Do you think you can respin soon those patches? Your previous iteration
> was from August this year. I know we are also not very fast at applying
> patches, so it's hard to criticize anything here. But when there are
> 5-6 months between two iterations of a series, we completely lose the
> context, and it's almost as-if the review restart from scratch. So if
> you can post the new iterations a bit faster, the context is still
> fresh, and there's a higher chance that it will get merged soon.

There has been a long delay between iterations because it allowed the
maintainer to add proper support for uclibc-ng. And there are few
releases during a year. So I waited until the "Fall 2016 release", so I
could remove the libc limitations set in the previous patch series.

Next respin will be availble before Christmas :-D

Best regards,

--
ELB

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [Patch v2 1/9] skalibs: new package
  2016-12-17 13:40         ` Eric Le Bihan
@ 2016-12-17 13:47           ` Thomas Petazzoni
  0 siblings, 0 replies; 23+ messages in thread
From: Thomas Petazzoni @ 2016-12-17 13:47 UTC (permalink / raw)
  To: buildroot

Hello,

On Sat, 17 Dec 2016 14:40:02 +0100, Eric Le Bihan wrote:

> > And so it's really only the static library that needs to be removed:
> > the shared library is really not built/installed when shared libraries
> > are not enabled in the Buildroot configuration?  
> 
> Yes. When shared libraries are disabled in Buildroot configuration, they
> are not built.

OK, good!

> I've modified the package Makefiles for skalibs, execline, s6 and s6-rc
> to use --prefix=$(HOST_DIR)/usr when building the host variants:
> 
>  - for execline: adding --shebangdir=/usr/bin makes it generates correct
>    scripts for the target.
>  - for s6-rc: adding --libexecdir=/usr/libexec makes it generates
>    correct scripts/helpers for the target (thought some programs are not
>    usable on the host, but they are not used, so they will not be
>    installed).
> 
> So, I can get rid of the $(DESTDIR) trick in host variants.

Perfect!

> There has been a long delay between iterations because it allowed the
> maintainer to add proper support for uclibc-ng. And there are few
> releases during a year. So I waited until the "Fall 2016 release", so I
> could remove the libc limitations set in the previous patch series.
> 
> Next respin will be availble before Christmas :-D

Good. I'll try to have a look as soon as the patches are there and
hopefully apply them.

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2016-12-17 13:47 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-12-10 19:20 [Buildroot] [Patch v2 0/9] Introducing service supervision/management with s6 Eric Le Bihan
2016-12-10 19:20 ` [Buildroot] [Patch v2 1/9] skalibs: new package Eric Le Bihan
2016-12-10 20:46   ` Thomas Petazzoni
2016-12-11 18:18     ` Eric Le Bihan
2016-12-13 21:54       ` Thomas Petazzoni
2016-12-17 13:40         ` Eric Le Bihan
2016-12-17 13:47           ` Thomas Petazzoni
2016-12-10 19:20 ` [Buildroot] [Patch v2 2/9] execline: " Eric Le Bihan
2016-12-10 20:49   ` Thomas Petazzoni
2016-12-11 18:30     ` Eric Le Bihan
2016-12-10 19:20 ` [Buildroot] [Patch v2 3/9] s6: " Eric Le Bihan
2016-12-10 20:52   ` Thomas Petazzoni
2016-12-11 18:38     ` Eric Le Bihan
2016-12-13 21:55       ` Thomas Petazzoni
2016-12-10 19:20 ` [Buildroot] [Patch v2 4/9] s6-dns: " Eric Le Bihan
2016-12-10 19:20 ` [Buildroot] [Patch v2 5/9] s6-networking: " Eric Le Bihan
2016-12-10 19:20 ` [Buildroot] [Patch v2 6/9] s6-rc: " Eric Le Bihan
2016-12-10 19:51   ` Baruch Siach
2016-12-10 20:41     ` Eric Le Bihan
2016-12-11 13:27       ` Thomas Petazzoni
2016-12-10 19:20 ` [Buildroot] [Patch v2 7/9] s6-portable-utils: " Eric Le Bihan
2016-12-10 19:20 ` [Buildroot] [Patch v2 8/9] s6-linux-utils: " Eric Le Bihan
2016-12-10 19:20 ` [Buildroot] [Patch v2 9/9] s6-linux-init: " Eric Le Bihan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox