s6: new package

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.

The host variant is provided as it is required to build the host
variant of s6-rc. Only the libraries and headers are installed.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Eric Le Bihan 2016-12-19 22:29:09 +01:00 committed by Thomas Petazzoni
parent 5354a75eb1
commit ae47ed449c
5 changed files with 85 additions and 0 deletions

View file

@ -440,6 +440,7 @@ F: package/execline/
F: package/hicolor-icon-theme/
F: package/jemalloc/
F: package/ninja/
F: package/s6/
F: package/skalibs/
F: package/smack/
F: package/xvisor/

View file

@ -1800,6 +1800,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"

11
package/s6/Config.in Normal file
View file

@ -0,0 +1,11 @@
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/

2
package/s6/s6.hash Normal file
View file

@ -0,0 +1,2 @@
# Locally generated
sha256 5e788d5935dbcce76ac9a99cfcf6ee46a2ffb84220c84225df7589e9a3585560 s6-2.4.0.0.tar.gz

70
package/s6/s6.mk Normal file
View file

@ -0,0 +1,70 @@
################################################################################
#
# 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=$(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_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)
endef
define HOST_S6_INSTALL_CMDS
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) install-dynlib install-include
endef
$(eval $(generic-package))
$(eval $(host-generic-package))