busybox/modutils
Explorer09 80172e4622 modprobe-small: optimizations for single applet build
(I'm requesting for a review first because I fear such an aggressive
change could lead to bugs. While I observe the sizes have reduced, I
haven't test the functionality of each applet after that. So please
test before merging.)

Aggressively cut off unneeded code when the relevant applets are not
built.

Correct dependencies of FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE and
FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED.

Don't bother with the '-r' option check if only rmmod is built (assume
true then), or when neither rmmod or mobprobe is built (assume false
then).

Size comparison before and after the change (single applet
configuration):

     text    data     bss     dec     hex filename
    34778     946     112   35836    8bfc old/busybox_DEPMOD
    34151     946     112   35209    8989 new/busybox_DEPMOD

    34903     946     112   35961    8c79 old/busybox_INSMOD
    28316     778     112   29206    7216 new/busybox_INSMOD

    35228     962     112   36302    8dce old/busybox_LSMOD
     5011     706      40    5757    167d new/busybox_LSMOD

    34830     946     112   35888    8c30 old/busybox_MODPROBE
    34795     946     112   35853    8c0d new/busybox_MODPROBE

    34718     946     112   35776    8bc0 old/busybox_RMMOD
     7502     714     104    8320    2080 new/busybox_RMMOD

Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-01-09 09:31:17 +01:00
..
Config.src Tweak some config defaults; fix MODPROBE_SMALL ordering in "make config" 2016-12-22 14:36:49 +01:00
depmod_process.sh depmod: fix handling of .gz modules 2009-05-18 13:08:04 +02:00
depmod.c depmod: don't build it if MODPROBE_SMALL=y 2017-01-01 13:12:48 +01:00
insmod.c Make INSMOD=y by default 2016-12-23 15:22:44 +01:00
Kbuild.src Convert all modutils/* applets to "new style" applet definitions 2016-11-23 07:54:52 +01:00
lsmod.c modprobe-small: make applets individually selectable 2016-12-23 15:13:16 +01:00
modinfo.c modinfo: fix "-F firmware", add "intree" field display 2015-10-28 18:07:46 +01:00
modprobe-small.c modprobe-small: optimizations for single applet build 2017-01-09 09:31:17 +01:00
modprobe.c modprobe-small: make applets individually selectable 2016-12-23 15:13:16 +01:00
modutils-24.c Convert all modutils/* applets to "new style" applet definitions 2016-11-23 07:54:52 +01:00
modutils.c modutils: remove special handling of uClibc 2017-01-04 13:32:09 +01:00
modutils.h modutils: merge module_entry and module_info to common 2015-11-05 18:54:55 +01:00
rmmod.c Make RMMOD=y by default 2016-12-23 15:57:26 +01:00