Skip to content

Commit

Permalink
busybox: update to 1.35.0 (coolsnowwolf#8389)
Browse files Browse the repository at this point in the history
* Revert "busybox: update to 1.33.2 bugfix release (coolsnowwolf#8386)"

This reverts commit a6f79ac.

* busybox: fix compilation with GCC 10

When compiling busybox with GCC 10 and CONFIG_PKG_ASLR_PIE_ALL=y, there
are hundreds of errors like:

relocation R_MIPS16_26 against `xzalloc' cannot be used when making a
shared object; recompile with -fPIC

Simply solve this by no longer disabling PKG_ASLR_PIE, so that $(FPIC)
is properly added to the CFLAGS and LDFLAGS.

Signed-off-by: Stijn Tintel <[email protected]>
Acked-by: Hauke Mehrtens <[email protected]>

* busybox: update to version 1.34.0

Update busybox to version 1.34.0

* Remove upstreamed patches (205, 530, 540)

* Remove one old patch that does not apply any more. (203)
  That was originally introduced in 2008 with 563d234,
  but does not apply after busybox restructuring with
  https://git.busybox.net/busybox/commit/networking/udhcp/dhcpc.c?h=1_34_stable&id=e6007c4911c3ea26925f9473b9f156a692585f30
  and
  https://git.busybox.net/busybox/commit/networking/udhcp/dhcpc.c?h=1_34_stable&id=1c7253726fcbab09917f143f0b703efbd2df55c3

* Refresh config and patches.

* Backport upstream fixes for
   - MIPS compilation breakage and
   - process substitution regression

Config refresh:

Refresh commands, run after busybox is first built once:

cd utils/busybox/
cd config/
../convert_menuconfig.pl ../../../../build_dir/target-aarch64_cortex-a53_musl/busybox-default/busybox-1.34.0
cd ..
./convert_defaults.pl < ../../../build_dir/target-aarch64_cortex-a53_musl/busybox-default/busybox-1.34.0/.config > Config-defaults.in

Manual edits needed afterward:

* Config-defaults.in:  OpenWrt config symbol IPV6 logic applied to
  BUSYBOX_DEFAULT_FEATURE_IPV6
* Config-defaults.in:  OpenWrt configTARGET_bcm53xx logic applied to
  BUSYBOX_DEFAULT_TRUNCATE (commit 547f1ec)
* Config-defaults.in:  OpenWrt logic applied to
  BUSYBOX_DEFAULT_LOGIN_SESSION_AS_CHILD (commit dc92917)
  BUSYBOX_DEFAULT_UDHCPC_DEFAULT_INTERFACE (just "")
* config/editors/Config.in: Add USE_GLIBC dependency to
  BUSYBOX_CONFIG_FEATURE_VI_REGEX_SEARCH (commit f141090)
* config/shell/Config.in : change at "Options common to all shells"  the symbol
  SHELL_ASH  -->  BUSYBOX_CONFIG_SHELL_ASH
   (discussion in http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033140.html
     Apparently our script does not see the hidden option while
     prepending config options with "BUSYBOX_CONFIG_" which leads to a
     missed dependency when the options are later evaluated.)
* Edit Config.in files by adding quotes to sourced items in
  config/Config.in, config/networking/Config.in and config/util-linux/Config.in (commit 1da014f)

Signed-off-by: Hannu Nyman <[email protected]>

* busybox: update to 1.34.1

Update busybox to version 1.34.1, which is a minor
maintenance release. It contains just the two post-1.34.0
upstream patches that we earlier backported plus a few fixes
to awk.

* Remove the two backported upstream patches that are
  now unnecessary.

Signed-off-by: Hannu Nyman <[email protected]>

* busybox: fix compatibility with BUSYBOX_CONFIG_INSTALL_NO_USR

Signed-off-by: aakkll <[email protected]>

* busybox: update to 1.35.0

Update busybox to 1.35.0

* refresh patches

Config refresh:

Refresh commands, run after busybox is first built once:

cd package/utils/busybox/config/
../convert_menuconfig.pl ../../../../build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/busybox-default/busybox-1.35.0
cd ..
./convert_defaults.pl ../../../build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/busybox-default/busybox-1.35.0/.config > Config-defaults.in

Manual edits needed after config refresh:

* Config-defaults.in: OpenWrt config symbol IPV6 logic applied to
  BUSYBOX_DEFAULT_FEATURE_IPV6

* Config-defaults.in: OpenWrt configTARGET_bcm53xx logic applied to
  BUSYBOX_DEFAULT_TRUNCATE (commit 547f1ec)

* Config-defaults.in: OpenWrt logic applied to
  BUSYBOX_DEFAULT_LOGIN_SESSION_AS_CHILD (commit dc92917)

* config/editors/Config.in: Add USE_GLIBC dependency to
  BUSYBOX_CONFIG_FEATURE_VI_REGEX_SEARCH (commit f141090)

* config/shell/Config.in : change at "Options common to all shells" the symbol
  SHELL_ASH --> BUSYBOX_CONFIG_SHELL_ASH
  (discussion in http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033140.html
  Apparently our script does not see the hidden option while
  prepending config options with "BUSYBOX_CONFIG_" which leads to a
  missed dependency when the options are later evaluated.)

* Edit Config.in files by adding quotes to sourced items in
  config/Config.in, config/networking/Config.in and config/util-linux/Config.in (commit 1da014f)

Signed-off-by: Hannu Nyman <[email protected]>

Co-authored-by: Stijn Tintel <[email protected]>
Co-authored-by: Hannu Nyman <[email protected]>
Co-authored-by: Marius Dinu <[email protected]>
  • Loading branch information
4 people authored Jan 14, 2022
1 parent fc6eba0 commit 47266d3
Show file tree
Hide file tree
Showing 23 changed files with 423 additions and 414 deletions.
149 changes: 100 additions & 49 deletions package/utils/busybox/Config-defaults.in
Original file line number Diff line number Diff line change
Expand Up @@ -211,15 +211,24 @@ config BUSYBOX_DEFAULT_MD5_SMALL
config BUSYBOX_DEFAULT_SHA3_SMALL
int
default 1
config BUSYBOX_DEFAULT_FEATURE_FAST_TOP
config BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP
bool
default y
config BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS
config BUSYBOX_DEFAULT_FEATURE_VERBOSE_CP_MESSAGE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_ETC_SERVICES
config BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE
bool
default n
default y
config BUSYBOX_DEFAULT_FEATURE_COPYBUF_KB
int
default 4
config BUSYBOX_DEFAULT_MONOTONIC_SYSCALL
bool
default y
config BUSYBOX_DEFAULT_IOCTL_HEX2STR_ERROR
bool
default y
config BUSYBOX_DEFAULT_FEATURE_EDITING
bool
default y
Expand Down Expand Up @@ -289,30 +298,6 @@ config BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE
config BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN
bool
default n
config BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP
bool
default y
config BUSYBOX_DEFAULT_FEATURE_VERBOSE_CP_MESSAGE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE
bool
default y
config BUSYBOX_DEFAULT_FEATURE_COPYBUF_KB
int
default 4
config BUSYBOX_DEFAULT_FEATURE_SKIP_ROOTFS
bool
default n
config BUSYBOX_DEFAULT_MONOTONIC_SYSCALL
bool
default y
config BUSYBOX_DEFAULT_IOCTL_HEX2STR_ERROR
bool
default y
config BUSYBOX_DEFAULT_FEATURE_HWIB
bool
default n
config BUSYBOX_DEFAULT_FEATURE_SEAMLESS_XZ
bool
default n
Expand Down Expand Up @@ -381,7 +366,7 @@ config BUSYBOX_DEFAULT_BZIP2_SMALL
default 0
config BUSYBOX_DEFAULT_FEATURE_BZIP2_DECOMPRESS
bool
default y
default n
config BUSYBOX_DEFAULT_CPIO
bool
default n
Expand All @@ -391,6 +376,12 @@ config BUSYBOX_DEFAULT_FEATURE_CPIO_O
config BUSYBOX_DEFAULT_FEATURE_CPIO_P
bool
default n
config BUSYBOX_DEFAULT_FEATURE_CPIO_IGNORE_DEVNO
bool
default n
config BUSYBOX_DEFAULT_FEATURE_CPIO_RENUMBER_INODES
bool
default n
config BUSYBOX_DEFAULT_DPKG
bool
default n
Expand Down Expand Up @@ -484,6 +475,18 @@ config BUSYBOX_DEFAULT_FEATURE_UNZIP_XZ
config BUSYBOX_DEFAULT_FEATURE_LZMA_FAST
bool
default n
config BUSYBOX_DEFAULT_FEATURE_VERBOSE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_TIMEZONE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_PRESERVE_HARDLINKS
bool
default y
config BUSYBOX_DEFAULT_FEATURE_HUMAN_READABLE
bool
default y
config BUSYBOX_DEFAULT_BASENAME
bool
default y
Expand Down Expand Up @@ -514,6 +517,9 @@ config BUSYBOX_DEFAULT_CHROOT
config BUSYBOX_DEFAULT_CKSUM
bool
default n
config BUSYBOX_DEFAULT_CRC32
bool
default n
config BUSYBOX_DEFAULT_COMM
bool
default n
Expand All @@ -529,6 +535,9 @@ config BUSYBOX_DEFAULT_FEATURE_CP_REFLINK
config BUSYBOX_DEFAULT_CUT
bool
default y
config BUSYBOX_DEFAULT_FEATURE_CUT_REGEX
bool
default n
config BUSYBOX_DEFAULT_DATE
bool
default y
Expand Down Expand Up @@ -562,6 +571,9 @@ config BUSYBOX_DEFAULT_DF
config BUSYBOX_DEFAULT_FEATURE_DF_FANCY
bool
default n
config BUSYBOX_DEFAULT_FEATURE_SKIP_ROOTFS
bool
default n
config BUSYBOX_DEFAULT_DIRNAME
bool
default y
Expand Down Expand Up @@ -829,9 +841,6 @@ config BUSYBOX_DEFAULT_TIMEOUT
config BUSYBOX_DEFAULT_TOUCH
bool
default y
config BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF
bool
default n
config BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3
bool
default y
Expand Down Expand Up @@ -905,15 +914,6 @@ config BUSYBOX_DEFAULT_WHOAMI
config BUSYBOX_DEFAULT_YES
bool
default y
config BUSYBOX_DEFAULT_FEATURE_VERBOSE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_PRESERVE_HARDLINKS
bool
default y
config BUSYBOX_DEFAULT_FEATURE_HUMAN_READABLE
bool
default y
config BUSYBOX_DEFAULT_CHVT
bool
default n
Expand Down Expand Up @@ -1058,6 +1058,9 @@ config BUSYBOX_DEFAULT_FEATURE_VI_8BIT
config BUSYBOX_DEFAULT_FEATURE_VI_COLON
bool
default y
config BUSYBOX_DEFAULT_FEATURE_VI_COLON_EXPAND
bool
default n
config BUSYBOX_DEFAULT_FEATURE_VI_YANKMARK
bool
default y
Expand Down Expand Up @@ -1097,6 +1100,9 @@ config BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE
config BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE_MAX
int
default 0
config BUSYBOX_DEFAULT_FEATURE_VI_VERBOSE_STATUS
bool
default n
config BUSYBOX_DEFAULT_FEATURE_ALLOW_EXEC
bool
default y
Expand All @@ -1109,9 +1115,21 @@ config BUSYBOX_DEFAULT_FEATURE_FIND_PRINT0
config BUSYBOX_DEFAULT_FEATURE_FIND_MTIME
bool
default y
config BUSYBOX_DEFAULT_FEATURE_FIND_ATIME
bool
default n
config BUSYBOX_DEFAULT_FEATURE_FIND_CTIME
bool
default n
config BUSYBOX_DEFAULT_FEATURE_FIND_MMIN
bool
default y
config BUSYBOX_DEFAULT_FEATURE_FIND_AMIN
bool
default n
config BUSYBOX_DEFAULT_FEATURE_FIND_CMIN
bool
default n
config BUSYBOX_DEFAULT_FEATURE_FIND_PERM
bool
default y
Expand All @@ -1133,6 +1151,9 @@ config BUSYBOX_DEFAULT_FEATURE_FIND_NEWER
config BUSYBOX_DEFAULT_FEATURE_FIND_INUM
bool
default n
config BUSYBOX_DEFAULT_FEATURE_FIND_SAMEFILE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_FIND_EXEC
bool
default y
Expand Down Expand Up @@ -1895,6 +1916,9 @@ config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_XFS
config BUSYBOX_DEFAULT_ADJTIMEX
bool
default n
config BUSYBOX_DEFAULT_ASCII
bool
default n
config BUSYBOX_DEFAULT_BBCONFIG
bool
default n
Expand Down Expand Up @@ -2183,6 +2207,9 @@ config BUSYBOX_DEFAULT_VOLNAME
config BUSYBOX_DEFAULT_WATCHDOG
bool
default n
config BUSYBOX_DEFAULT_FEATURE_WATCHDOG_OPEN_TWICE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_IPV6
bool
default y if IPV6
Expand All @@ -2196,6 +2223,15 @@ config BUSYBOX_DEFAULT_FEATURE_PREFER_IPV4_ADDRESS
config BUSYBOX_DEFAULT_VERBOSE_RESOLUTION_ERRORS
bool
default y
config BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS
bool
default n
config BUSYBOX_DEFAULT_FEATURE_ETC_SERVICES
bool
default n
config BUSYBOX_DEFAULT_FEATURE_HWIB
bool
default n
config BUSYBOX_DEFAULT_FEATURE_TLS_SHA1
bool
default n
Expand Down Expand Up @@ -2250,6 +2286,9 @@ config BUSYBOX_DEFAULT_DNSDOMAINNAME
config BUSYBOX_DEFAULT_HTTPD
bool
default n
config BUSYBOX_DEFAULT_FEATURE_HTTPD_PORT_DEFAULT
int
default 80
config BUSYBOX_DEFAULT_FEATURE_HTTPD_RANGES
bool
default n
Expand Down Expand Up @@ -2529,6 +2568,9 @@ config BUSYBOX_DEFAULT_TELNETD
config BUSYBOX_DEFAULT_FEATURE_TELNETD_STANDALONE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_TELNETD_PORT_DEFAULT
int
default 23
config BUSYBOX_DEFAULT_FEATURE_TELNETD_INETD_WAIT
bool
default n
Expand Down Expand Up @@ -2589,6 +2631,9 @@ config BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS
config BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR
bool
default n
config BUSYBOX_DEFAULT_FEATURE_WGET_FTP
bool
default n
config BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION
bool
default n
Expand Down Expand Up @@ -2652,6 +2697,9 @@ config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4833
config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC5970
bool
default n
config BUSYBOX_DEFAULT_UDHCPC_DEFAULT_INTERFACE
string
default ""
config BUSYBOX_DEFAULT_FEATURE_UDHCP_PORT
bool
default n
Expand Down Expand Up @@ -2679,6 +2727,9 @@ config BUSYBOX_DEFAULT_LPR
config BUSYBOX_DEFAULT_LPQ
bool
default n
config BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET
string
default ""
config BUSYBOX_DEFAULT_MAKEMIME
bool
default n
Expand All @@ -2697,9 +2748,12 @@ config BUSYBOX_DEFAULT_FEATURE_REFORMIME_COMPAT
config BUSYBOX_DEFAULT_SENDMAIL
bool
default n
config BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET
string
default ""
config BUSYBOX_DEFAULT_FEATURE_FAST_TOP
bool
default y
config BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS
bool
default n
config BUSYBOX_DEFAULT_FREE
bool
default y
Expand Down Expand Up @@ -2814,9 +2868,6 @@ config BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT
config BUSYBOX_DEFAULT_WATCH
bool
default n
config BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS
bool
default n
config BUSYBOX_DEFAULT_CHPST
bool
default n
Expand Down Expand Up @@ -2985,10 +3036,10 @@ config BUSYBOX_DEFAULT_HUSH_BASH_COMPAT
config BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION
bool
default n
config BUSYBOX_DEFAULT_HUSH_LINENO_VAR
config BUSYBOX_DEFAULT_HUSH_BASH_SOURCE_CURDIR
bool
default n
config BUSYBOX_DEFAULT_HUSH_BASH_SOURCE_CURDIR
config BUSYBOX_DEFAULT_HUSH_LINENO_VAR
bool
default n
config BUSYBOX_DEFAULT_HUSH_INTERACTIVE
Expand Down
7 changes: 2 additions & 5 deletions package/utils/busybox/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,19 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=busybox
PKG_VERSION:=1.33.2
PKG_VERSION:=1.35.0
PKG_RELEASE:=$(AUTORELEASE)
PKG_FLAGS:=essential

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.busybox.net/downloads \
http://sources.buildroot.net
PKG_HASH:=6843ba7977081e735fa0fdb05893e3c002c8c5ad7c9c80da206e603cc0ac47e7
PKG_HASH:=faeeb244c35a348a334f4a59e44626ee870fb07b6884d68c10ae8bc19f83a694

PKG_BUILD_DEPENDS:=BUSYBOX_CONFIG_PAM:libpam
PKG_BUILD_PARALLEL:=1
PKG_CHECK_FORMAT_SECURITY:=0

#Busybox use it's own PIE config flag and LDFLAGS are used with ld, not gcc.
PKG_ASLR_PIE:=0

PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=LICENSE archival/libarchive/bz/LICENSE
PKG_CPE_ID:=cpe:/a:busybox:busybox
Expand Down
14 changes: 14 additions & 0 deletions package/utils/busybox/config/archival/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,20 @@ config BUSYBOX_CONFIG_FEATURE_CPIO_P
depends on BUSYBOX_CONFIG_FEATURE_CPIO_O
help
Passthrough mode. Rarely used.

config BUSYBOX_CONFIG_FEATURE_CPIO_IGNORE_DEVNO
bool "Support --ignore-devno like GNU cpio"
default BUSYBOX_DEFAULT_FEATURE_CPIO_IGNORE_DEVNO
depends on BUSYBOX_CONFIG_FEATURE_CPIO_O && BUSYBOX_CONFIG_LONG_OPTS
help
Optionally ignore device numbers when creating archives.

config BUSYBOX_CONFIG_FEATURE_CPIO_RENUMBER_INODES
bool "Support --renumber-inodes like GNU cpio"
default BUSYBOX_DEFAULT_FEATURE_CPIO_RENUMBER_INODES
depends on BUSYBOX_CONFIG_FEATURE_CPIO_O && BUSYBOX_CONFIG_LONG_OPTS
help
Optionally renumber inodes when creating archives.
config BUSYBOX_CONFIG_DPKG
bool "dpkg (43 kb)"
default BUSYBOX_DEFAULT_DPKG
Expand Down
Loading

0 comments on commit 47266d3

Please sign in to comment.