summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Le Bihan <eric.le.bihan.dev@free.fr>2016-12-19 22:29:09 +0100
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2017-03-09 22:55:46 +0100
commitae47ed449c7ff92b41533ca5a91538622c519e60 (patch)
tree094172cea2ff4e8ed0d967b9062bee92eb5b88f1
parent5354a75eb12009162dad0bc3fe5dc9d20fe8183b (diff)
downloadbuildroot-ae47ed449c7ff92b41533ca5a91538622c519e60.tar.gz
buildroot-ae47ed449c7ff92b41533ca5a91538622c519e60.zip
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>
-rw-r--r--DEVELOPERS1
-rw-r--r--package/Config.in1
-rw-r--r--package/s6/Config.in11
-rw-r--r--package/s6/s6.hash2
-rw-r--r--package/s6/s6.mk70
5 files changed, 85 insertions, 0 deletions
diff --git a/DEVELOPERS b/DEVELOPERS
index 6c74cac84d..73413eb47d 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -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/
diff --git a/package/Config.in b/package/Config.in
index 9eb6a22f42..1cb584ca1d 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -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"
diff --git a/package/s6/Config.in b/package/s6/Config.in
new file mode 100644
index 0000000000..7c192c1de8
--- /dev/null
+++ b/package/s6/Config.in
@@ -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/
diff --git a/package/s6/s6.hash b/package/s6/s6.hash
new file mode 100644
index 0000000000..36526de956
--- /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 0000000000..de08f67848
--- /dev/null
+++ b/package/s6/s6.mk
@@ -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))
OpenPOWER on IntegriCloud