On 05/22/2018 07:06 PM, Andre McCurdy wrote:
...
Building before and after Armin's patch and then diffing .config files
in each build directory gives:


I didn't know what all of these configs were so I've
listed them below and stated a straw-man opinion as
to whether to keep them or not.

Old 1.27.2 specific config options removed:

-CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS=y
-CONFIG_FEATURE_ADDUSER_LONG_OPTIONS=y
-CONFIG_FEATURE_ENV_LONG_OPTIONS=y
-CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
-CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y

I'm okay with following upstream busybox wrt long options so
we can drop this.


New 1.28.3 specific options added:

+CONFIG_BB_ARCH=y

Adds 'arch' which is the same output as 'uname -m' but
I always use arch and didn't know off-hand that uname -m was the same.

Keep it.

+CONFIG_FEATURE_CATN=y
  This adds an option to cat:
   -n numbers all output lines while -b numbers nonempty output lines.
  The commit that added this feature says:
     a2bdc5c55 cat: allow compiling out -n and -b
  so since previously the feature was always available,

I'm okay with keeping it.

+CONFIG_FEATURE_SH_READ_FRAC=y

  Enables a fractional second read timeout for the shell builtin.
  bool "read -t N.NNN support (+110 bytes)"
  Enable support for fractional second timeout in read builtin.

Potentially useful, keep it.

+CONFIG_FEATURE_SWAPONOFF_LABEL=y

  This allows for specifying a device by label or uuid, rather than by
  name. This feature utilizes the same functionality as blkid/findfs.

Useful. Keep it.

+CONFIG_FEATURE_VOLUMEID_MINIX=y

I don't know of a case where this would be generally useful.

Omit.

+CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE=y
    xargs: support -a FILE

    The GNU-specific option -a lets xargs read the arguments from a file
    rather than from stdin.

    This is particularly convenient when debugging in gdb interactively,
    and it might be of more general use.

Huh... what?
Digging through the findutils repo, I see that there's a better explaination in the findutils/NEWS file from 2004(!):

*** xargs can now read a list of arguments from a named file, allowing
    the invoked program to use the same stdin as xargs started with
    (for example ``xargs --arg-file=todo emacs'').

Keep it (I suppose).

+CONFIG_FEATURE_XARGS_SUPPORT_PARALLEL=y

From: https://bugs.busybox.net/show_bug.cgi?id=9511
Example:
find samplegz | xargs -n1 -P4 sh parse.sh

Costs 241 bytes.

Keep it.

The next group are described below but
I've put my conclusions after each config.

+CONFIG_HEXEDIT=y
Drop it.

+CONFIG_NUKE=y
Drop it.

+CONFIG_RESUME=y
Drop it -- maybe?

+CONFIG_RUN_INIT=y
Drop it.

+CONFIG_SETFATTR=y
Drop it.


So new applets hexedit, nuke, etc, are going to sneak in to our builds
unless we refresh our defconfig to disable them.



Here is the rough estimate of the new applet sizes:

$ git show 38da4c4420ea6d7b3cf120c0902458e7d8256560 | \
   grep "^+//config:.*bool"
+//config:      bool "nuke (2.4 kb)"
+//config:      bool "resume (3.3 kb)"
+//config:      bool "run-init (7.5 kb)"
+//config:      bool "hexedit (20 kb)"
+//config:      bool "setfattr (3.6 kb)"


and the commit that added most of the applets that includes
a brief explanation of the applet's function:

commit ab77e81a8527fa11a4f9392d97c2da037d6f4f98
Author: Denys Vlasenko <vda.li...@googlemail.com>
Date:   Fri Aug 18 19:15:29 2017 +0200

    klibc-utils: new applets: resume, nuke, minips

    minips is a pure alias to ps,
    just in case someone needs 100% klibc-utils compat.

    nuke is a primitive version of "rm -rf" without
    options and error checks. ~30 bytes.

    resume is a tool for initramfs which resumes from
    a given block device.

    function                                         old     new   delta
    resume_main                                        -     582    +582
    packed_usage                                   31640   31712     +72
    nuke_main                                          -      28     +28
    xstrtoull                                          -      24     +24
    applet_names                                    2646    2665     +19
    applet_main                                     1532    1544     +12
    applet_suid                                       96      97      +1
    applet_install_loc                               192     193      +1
    applet_flags                                      96      97      +1

------------------------------------------------------------------------
    (add/remove: 5/0 grow/shrink: 6/0 up/down: 740/0)   Total: 740 bytes

    Signed-off-by: Denys Vlasenko <vda.li...@googlemail.com>



While these are useful utilities,
I don't see a need for any of the new applets in the oe-core defconfig.

Armin,
If no one objects to my suggestions, please change the defconfig
in the next update or ping me and I'll do it.

--
# Randy MacLeod
# Wind River Linux
--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to