From 6a6c64426f544fcd376f2eabdb5aecc0ab04e541 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 29 Apr 2021 19:45:59 -0700 Subject: busybox: Enable long options for enabled applets certain applets are enabled but the long options are not enabled for them, it results in subtle failures in ptests where its expecting these options e.g. gzip --best is commonly used in many package tests e.g. root@qemux86-64:/usr/lib# grep -r "\-\-best" * acl/ptest/Makefile:GZIP_ENV = --best attr/ptest/Makefile:GZIP_ENV = --best coreutils/ptest/Makefile:GZIP_ENV = --best ethtool/ptest/Makefile:GZIP_ENV = --best libxml2/ptest/Makefile:GZIP_ENV = --best lttng-tools/ptest/Makefile:GZIP_ENV = --best opkg/ptest/Makefile:GZIP_ENV = --best perl/ptest/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm: COMPRESS ('gzip --best') python3.9/test/test_gzip.py: for compress_level in ('--fast', '--best'): ... this ensures that these options are enabled by default, which makes them more compatible than now with coreutils provided utilities busybox size grows by 4K which perhaps is acceptable --rwxr-xr-x root root 817704 ./bin/busybox.nosuid +-rwxr-xr-x root root 821800 ./bin/busybox.nosuid This makes autopoint-3/gettext pass This patch add all the long options to this fragment. The long options for a tool will only get enabled if the corresponding tool/feature is enabled in main defconfig, otherwise it will be ignored in final .config Signed-off-by: Khem Raj Signed-off-by: Richard Purdie --- meta/recipes-core/busybox/busybox/longopts.cfg | 15 +++++++++++++++ meta/recipes-core/busybox/busybox_1.33.0.bb | 1 + 2 files changed, 16 insertions(+) create mode 100644 meta/recipes-core/busybox/busybox/longopts.cfg diff --git a/meta/recipes-core/busybox/busybox/longopts.cfg b/meta/recipes-core/busybox/busybox/longopts.cfg new file mode 100644 index 0000000000..dcfab99919 --- /dev/null +++ b/meta/recipes-core/busybox/busybox/longopts.cfg @@ -0,0 +1,15 @@ +CONFIG_FEATURE_GUNZIP_LONG_OPTIONS=y +CONFIG_FEATURE_GZIP_LONG_OPTIONS=y +CONFIG_FEATURE_TAR_LONG_OPTIONS=y +CONFIG_FEATURE_CHOWN_LONG_OPTIONS=y +CONFIG_FEATURE_CP_LONG_OPTIONS=y +CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y +CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS=y +CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y +CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y +CONFIG_FEATURE_DIFF_LONG_OPTIONS=y +CONFIG_FEATURE_BC_LONG_OPTIONS=y +CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y +CONFIG_FEATURE_IPCALC_LONG_OPTIONS=y +CONFIG_FEATURE_NSLOOKUP_LONG_OPTIONS=y +CONFIG_FEATURE_WGET_LONG_OPTIONS=y diff --git a/meta/recipes-core/busybox/busybox_1.33.0.bb b/meta/recipes-core/busybox/busybox_1.33.0.bb index 58e9cf7fce..a92fa2fe5f 100644 --- a/meta/recipes-core/busybox/busybox_1.33.0.bb +++ b/meta/recipes-core/busybox/busybox_1.33.0.bb @@ -31,6 +31,7 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \ file://sha1sum.cfg \ file://sha256sum.cfg \ file://getopts.cfg \ + file://longopts.cfg \ file://resize.cfg \ ${@["", "file://init.cfg"][(d.getVar('VIRTUAL-RUNTIME_init_manager') == 'busybox')]} \ ${@["", "file://rcS.default"][(d.getVar('VIRTUAL-RUNTIME_init_manager') == 'busybox')]} \ -- cgit 1.2.3-korg