From 8df1d35909ec2d57a6845f5b2c26ee1e83cfd032 Mon Sep 17 00:00:00 2001 From: Woodpecker CI Date: Tue, 3 Jun 2025 14:32:34 +0000 Subject: Woodpecker CI 5171f1fdd74e7137c305450dd69a29fa5be4143f [SKIP CI] --- busybox/abuild | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 busybox/abuild (limited to 'busybox/abuild') diff --git a/busybox/abuild b/busybox/abuild new file mode 100644 index 00000000..b1b92271 --- /dev/null +++ b/busybox/abuild @@ -0,0 +1,102 @@ +name=busybox +version=1.37.0 +release=1 +source="https://${name}.net/downloads/${name}-${version}.tar.bz2 + 0001-awk-fix-handling-of-literal-backslashes-in-replaceme.patch + 0016-ping-make-ping-work-without-root-privileges.patch + kernel-6.8-tca.patch + fsck-resolve-uuid.patch + adduser-no-setgid.patch + print-unicode.patch + modprobe-kernel-version.patch + busybox-suidwrapper.c + mdev.conf + acpid.run + crond.run + ntpd.run + syslogd.run + klogd.run + inetd.run + httpd.run + mdev.run + tty1.run + tty2.run + tty3.run + tty4.run + tty5.run + ttyS0.run + pause.c + pause.1" +sv="acpid.run + crond.run + ntpd.run + syslogd.run + klogd.run + inetd.run + httpd.run + mdev.run + tty1.run + tty2.run + tty3.run + tty4.run + tty5.run + ttyS0.run" + +_disable() { + while [ "$1" ]; do + sed "s/^CONFIG_${1}=y/# CONFIG_${1} is not set/" -i .config + shift + done +} + +_enable() { + while [ "$1" ]; do + sed "s/^# CONFIG_${1}.*/CONFIG_${1}=y/" -i .config + shift + done +} + +build() { + make defconfig + + _disable XZCAT XZ UNXZ UNLZMA LZCAT LZMA # provided by xz + _disable STRINGS # provided by llvm + _disable CLEAR RESET # provided by ncurses + _disable PATCH # provided by patch (GNU patch works better) + _disable BZCAT BUNZIP2 BZIP2 # provided by bzip2 + _disable CHATTR LSATTR MKE2FS FINDFS MKFS_EXT2 BLKID # provided by e2fsprogs + _disable MKDOSFS MKFS_VFAT # provided by dosfstools + + _disable FSCK_MINIX MKFS_MINIX DPKG DPKG_DEB MAN # + _disable MODPROBE_SMALL HUSH SHELL_HUSH RPM2CPIO # JUNKS + _disable RX CHAT LINUXRC RPM RUN_PARTS # + + _enable STATIC # enable static build + _enable FEATURE_MODUTILS_ALIAS FEATURE_MODUTILS_SYMBOLS # enable some kmod features + + # install nologin to /sbin + sed 's/BB_DIR_USR_SBIN/BB_DIR_SBIN/' -i util-linux/nologin.c + + # install diff to /bin + sed 's/BB_DIR_USR_BIN/BB_DIR_BIN/' -i editors/diff.c + + make + make CONFIG_PREFIX=$PKG install + mkdir -p $PKG/usr/share/busybox + cat .config > $PKG/usr/share/busybox/config + + ${CC:-cc} -o $PKG/bin/busybox-suidwrapper $SRC/busybox-suidwrapper.c + chmod u+s $PKG/bin/busybox-suidwrapper + + for i in $($PKG/bin/busybox-suidwrapper -l); do + [ -e /bin/$i ] && ln -svf busybox-suidwrapper $PKG/bin/$i + [ -e /usr/bin/$i ] && ln -svf ../../bin/busybox-suidwrapper $PKG/usr/bin/$i + done + + mkdir -p $PKG/etc + install -m644 $SRC/mdev.conf $PKG/etc/mdev.conf + + ${CC:-gcc} ${CFLAGS} $SRC/pause.c -o $PKG/usr/bin/pause + install -d $PKG/usr/share/man/man1 + install -m644 $SRC/pause.1 $PKG/usr/share/man/man1/pause.1 +} -- cgit v1.2.3