# Build template for 'busybox'.
pkgname=busybox
version=1.23.2
revision=1
hostmakedepends="perl"
short_desc="The Swiss Army Knife of Embedded Linux"
maintainer="Juan RP <xtraeme@voidlinux.eu>"
license="GPL-2"
homepage="http://www.busybox.net"
distfiles="${homepage}/downloads/busybox-$version.tar.bz2"
checksum=05a6f9e21aad8c098e388ae77de7b2361941afa7157ef74216703395b14e319a

_cflags() {
	local t=$1
	local c="$CFLAGS"
	case $t in
		busybox-static) c="$c -static";;
	esac
	echo "$c"
}

pre_build() {
	mkdir -p src
	mv * src || true

	local t
	for t in busybox busybox-static busybox-ntpd; do
		mkdir -p $t
		make -C $t CFLAGS="$(_cflags $t)" KBUILD_SRC=${wrksrc}/src \
			-f ${wrksrc}/src/Makefile defconfig
		cp -f ${FILESDIR}/${t}.dotconfig ${t}/.config

		if [ "$CROSS_BUILD" ]; then
			sed -e \
				"s,\(CONFIG_CROSS_COMPILER_PREFIX\).*,\1=\"${XBPS_CROSS_TRIPLET}-\",g" \
				-i ${t}/.config
		fi
	done
}
do_build() {
	local t
	for t in busybox busybox-static busybox-ntpd; do
		make -C $t SKIP_STRIP=y CFLAGS="$(_cflags $t)" ${makejobs}
	done
}
do_install() {
	vbin busybox/busybox_unstripped busybox
	vman busybox/docs/busybox.1
}

busybox-static_package() {
	short_desc+=" (statically linked)"
	pkg_install() {
		vbin busybox-static/busybox busybox.static
	}
}

busybox-ntpd_package() {
	short_desc+=" (ntpd)"
	pkg_install() {
		vbin busybox-ntpd/busybox_unstripped busybox-ntpd
		vsv busybox-ntpd
	}
}