buildroot/package/s6-rc/s6-rc.mk
Eric Le Bihan 6b4be1a3e0 s6-rc: new package
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.

The host variant is provided so s6-rc-compile is available and can
be used to build the services database offline, either in a package
Makefile or a post-build script.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-09 23:28:37 +01:00

74 lines
1.9 KiB
Makefile

################################################################################
#
# 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=$(HOST_DIR)/usr \
--libexecdir=/usr/libexec \
--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)
endef
define HOST_S6_RC_INSTALL_CMDS
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) install-dynlib install-bin
rm -f $(HOST_DIR)/usr/bin/s6-rc-dryrun
endef
$(eval $(generic-package))
$(eval $(host-generic-package))