diff options
| author | emmett1 <emmett1.2miligrams@protonmail.com> | 2025-05-25 12:48:15 +0800 |
|---|---|---|
| committer | emmett1 <emmett1.2miligrams@protonmail.com> | 2025-05-25 12:48:15 +0800 |
| commit | 0b386ca2ee22bb0ed2d60c0a358b67cddd4420df (patch) | |
| tree | 8777068bcb1db7627ad60037b94af9a566cd03a1 /repos/core/busybox/abuild | |
| parent | 3db891211c9380fde90c770a1f9e089edb826d0c (diff) | |
| download | alicelinux-0b386ca2ee22bb0ed2d60c0a358b67cddd4420df.tar.gz alicelinux-0b386ca2ee22bb0ed2d60c0a358b67cddd4420df.zip | |
busybox: updated to 1.37.0
Diffstat (limited to 'repos/core/busybox/abuild')
| -rw-r--r-- | repos/core/busybox/abuild | 89 |
1 files changed, 53 insertions, 36 deletions
diff --git a/repos/core/busybox/abuild b/repos/core/busybox/abuild index 4c777454..b1b92271 100644 --- a/repos/core/busybox/abuild +++ b/repos/core/busybox/abuild @@ -1,23 +1,24 @@ name=busybox -version=1.36.1 -release=4 +version=1.37.0 +release=1 source="https://${name}.net/downloads/${name}-${version}.tar.bz2 - busybox-suidwrapper.c - config - mdev.conf - fsck-resolve-uuid.patch + 0001-awk-fix-handling-of-literal-backslashes-in-replaceme.patch 0016-ping-make-ping-work-without-root-privileges.patch - install-fix-chown.patch + kernel-6.8-tca.patch + fsck-resolve-uuid.patch adduser-no-setgid.patch - lineedit-Handle-SIGWINCH-gracefully.patch - lsusb-vendor-product.patch print-unicode.patch modprobe-kernel-version.patch - 0007-nologin-Install-applet-to-sbin-instead-of-usr-sbin.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 @@ -30,40 +31,59 @@ 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() { - if [ "$BOOTSTRAP" ]; then - _opt="ARCH=$CARCH CROSS_COMPILE=$CTARGET-" - fi + make defconfig - cp $SRC/config .config - #make menuconfig - make $_opt - make $_opt CONFIG_PREFIX=$PKG install - mkdir -p $PKG/usr/share/busybox - cat .config > $PKG/usr/share/busybox/config + _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 - BIN="$BIN xzcat xz unxz unlzma lzcat lzma" #xz - #BIN="$BIN zcat gunzip gzip" #gzip - BIN="$BIN strings" #binutils - BIN="$BIN clear reset" #ncurses - BIN="$BIN patch" #patch - BIN="$BIN bzcat bunzip2 bzip2" #bzip2 - BIN="$BIN setfattr" #attr - BIN="$BIN chattr lsattr mke2fs findfs mkfs.ext2 blkid" #e2fsprogs - BIN="$BIN mkdosfs mkfs.vfat " #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 # - # XXX - for i in $BIN; do - rm $PKG/*/$i || true - rm $PKG/*/*/$i || true - done + _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 @@ -76,9 +96,6 @@ build() { mkdir -p $PKG/etc install -m644 $SRC/mdev.conf $PKG/etc/mdev.conf - rm $PKG/usr/bin/diff - ln -s busybox $PKG/bin/diff - ${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 |