void-packages/srcpkgs/busybox/template

72 lines
1.6 KiB
Bash

# Build template for 'busybox'.
pkgname=busybox
version=1.24.1
revision=3
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=37d03132cc078937360b392170b7a1d0e5b322eee9f57c0b82292a8b1f0afe3d
alternatives="
awk:awk:/usr/bin/busybox
hostname:hostname:/usr/bin/busybox
sh:sh:/usr/bin/busybox
ntpd:ntpd:/usr/bin/busybox
ntpd:ntpd:/etc/sv/busybox-ntpd
vi:vi:/usr/bin/busybox"
_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; 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
case "$XBPS_TARGET_MACHINE" in
*-musl) sed -i -e /CONFIG_FEATURE_VI_REGEX_SEARCH/s/y/n/ \
-e /CONFIG_FEATURE_MOUNT_NFS/s/y/n/ \
${t}/.config;;
esac
if [ "$CROSS_BUILD" ]; then
sed -e \
"s,\(CONFIG_CROSS_COMPILER_PREFIX\).*,\1=\"${XBPS_CROSS_TRIPLET}-\",g" \
-i ${t}/.config
fi
#make -C $t oldconfig
done
}
do_build() {
local t
for t in busybox busybox-static; do
make -C $t SKIP_STRIP=y CFLAGS="$(_cflags $t)" ${makejobs}
done
}
do_install() {
vbin busybox/busybox_unstripped busybox
vman busybox/docs/busybox.1
vsv busybox-ntpd
}
busybox-static_package() {
short_desc+=" (statically linked)"
pkg_install() {
vbin busybox-static/busybox busybox.static
}
}