# Template file for 'runit'
pkgname=runit
version=2.1.2
revision=15
build_wrksrc="${pkgname}-${version}/src"
build_style="gnu-makefile"
short_desc="UNIX init scheme with service supervision"
maintainer="Orphaned <orphan@voidlinux.org>"
license="BSD-3-Clause"
homepage="http://smarden.org/runit/"
distfiles="http://smarden.org/runit/runit-${version}.tar.gz"
checksum=6fd0160cb0cf1207de4e66754b6d39750cff14bb0aa66ab49490992c0c47ba18
patch_args=-Np0
# FIXME: this is caused by some bonk tests that should be fixed in void-linux/runit at some point
make_check=no

build_options="static"

if [ "$build_option_static" ]; then
	CFLAGS="-static"
	LDFLAGS="-static"
fi

pre_build() {
	vsed -e 's,sbin/runit,usr/bin/runit,g' -i runit.h

	echo "$CC -D_GNU_SOURCE $CFLAGS" >conf-cc
	echo "$CC $LDFLAGS -Wl,-z -Wl,noexecstack" >conf-ld
	# set default service path to /var/service
	vsed -e 's:^char \*varservice ="/service/";$:char \*varservice ="/var/service/";:' -i sv.c
	# change type short to gid_t for getgroups(2) and setgroups(2)
	vsed -e 's:short x\[4\];$:gid_t x[4];:' -i chkshsgr.c
}

do_install() {
	vlicense ../package/COPYING

	# default services
	vmkdir var
	ln -s ../run/runit/runsvdir/current ${DESTDIR}/var/service

	local f
	for f in chpst runit runit-init runsv runsvchdir runsvdir \
		sv svlogd utmpset; do
		vbin $f
	done

	cd ..
	for f in man/*; do
		vman $f
	done

	vinstall ${FILESDIR}/sv  644 usr/share/bash-completion/completions
}
