# 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 " 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 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 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 } }