From 1aa7e477b1b727db77cac2d717f0fcca40587f78 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Wed, 28 Nov 2007 06:49:03 +0000 Subject: reorganize applet table. Eliminates pointers to names. Should be a big win for libbusybox. busybox wins too: text data bss dec hex filename 776524 929 9100 786553 c0079 busybox_old 775903 929 9100 785932 bfe0c busybox_unstripped --- include/applets.h | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'include/applets.h') diff --git a/include/applets.h b/include/applets.h index 2f31a587f..f35a1d80b 100644 --- a/include/applets.h +++ b/include/applets.h @@ -59,12 +59,12 @@ s - suid type: # define APPLET_NOFORK(name,main,l,s,name2) LINK l name #else - const struct bb_applet applets[] = { /* name, main, location, need_suid */ -# define APPLET(name,l,s) { #name, name##_main USE_FEATURE_INSTALLER(,l) USE_FEATURE_SUID(,s) }, -# define APPLET_NOUSAGE(name,main,l,s) { #name, main##_main USE_FEATURE_INSTALLER(,l) USE_FEATURE_SUID(,s) }, -# define APPLET_ODDNAME(name,main,l,s,name2) { #name, main##_main USE_FEATURE_INSTALLER(,l) USE_FEATURE_SUID(,s) }, -# define APPLET_NOEXEC(name,main,l,s,name2) { #name, main##_main USE_FEATURE_INSTALLER(,l) USE_FEATURE_SUID(,s) USE_FEATURE_PREFER_APPLETS(,1) }, -# define APPLET_NOFORK(name,main,l,s,name2) { #name, main##_main USE_FEATURE_INSTALLER(,l) USE_FEATURE_SUID(,s) USE_FEATURE_PREFER_APPLETS(,1 ,1) }, + static struct bb_applet applets[] = { /* name, main, location, need_suid */ +# define APPLET(name,l,s) { #name, #name, l, s }, +# define APPLET_NOUSAGE(name,main,l,s) { #name, #main, l, s }, +# define APPLET_ODDNAME(name,main,l,s,name2) { #name, #main, l, s }, +# define APPLET_NOEXEC(name,main,l,s,name2) { #name, #main, l, s, 1 }, +# define APPLET_NOFORK(name,main,l,s,name2) { #name, #main, l, s, 1, 1 }, #endif #if ENABLE_INSTALL_NO_USR @@ -385,7 +385,6 @@ USE_GUNZIP(APPLET_ODDNAME(zcat, gunzip, _BB_DIR_BIN, _BB_SUID_NEVER, zcat)) USE_ZCIP(APPLET(zcip, _BB_DIR_SBIN, _BB_SUID_NEVER)) #if !defined(PROTOTYPES) && !defined(NAME_MAIN_CNAME) && !defined(MAKE_USAGE) - { NULL } }; #endif -- cgit v1.2.3