Hi Vladimir,
"make objsizes" says:
text+data text+rodata rwdata bss filename
685517 685317 200 1414 TOTAL
45186 45158 28 342 shell/ash.o
30720 30716 4 9 libbb/appletlib.o
22629 22620 9 179 shell/msh.o
19769 19761 8 50 util-linux/fdisk.o
19371 19371 0 0 miscutils/hdparm.o
18821 18820 1 121 editors/vi.o
17843 17843 0 0 editors/awk.o
13671 13671 0 0 shell/hush.o
...
3338 3338 0 0 coreutils/stat.o
3337 3337 0 0 networking/route.o
3193 3193 0 12 libbb/xfuncs.o
3134 3098 36 8 networking/sendmail.o
...
sendmail is a blip on this radar.
# nm --size-sort sendmail.o | grep -vi ' t '
00000004 b helper_pid
00000004 b timeout
00000024 d args
And it's mostly args[]:
static const char *args[] = {
"openssl", "s_client", "-quiet", "-connect", NULL, "-tls1",
"-starttls", "smtp", NULL
};
#define opt_connect args[4]
#define opt_after_connect args[5]
Can you fix it? Say, by making it const (const char *const init_args[]),
having same-sized automatic array args[] in main, copying
init_args to args, and modifying/using args, not init_args?
--
vda
_______________________________________________
busybox mailing list
[email protected]
http://busybox.net/cgi-bin/mailman/listinfo/busybox