On 10 October 2014 18:16, Rich Felker <dal...@libc.org> wrote: > On Fri, Oct 10, 2014 at 08:43:15AM -0700, Isaac Dunham wrote: >> > > The code I have is currently using dirtree_read(), which corresponds to >> > > recursive_action(). >> > > Basically it looks in /sys/class/*/*/, /sys/class/power_supply, >> > > and /sys/class/thermal for device status. >> > > I could make it shorter if I use glob() instead of a recursive callback; >> > > does anyone know whether glob() is likely to be a bloat problem? >> > >> > There's a cut-down glob function you could borrow from the linux >> > kernel ( lib/glob.c ) if you really wanted it slim. >> >> That would make a smaller static binary where only the "acpi" applet is >> concerned, but it might well increase the net size; glob uses fnmatch, >> which is use in several parts of busybox. > > Yes, I would think replacing glob would be a net increase in size > unless you have an extremely minimal bb config to begin with.
Ah yes, you're both right, I'd somehow forgotten about the whole multicall thing! If curious how much difference there is (I was): [all tests done using musl libc, static] Standalone: ~15k for glob.c test program ~28k for fnmatch.h test program Busybox: === fnmatch.h test === function old new delta globA_main - 132 +132 === linux kernel glob.c test === function old new delta glob_match - 255 +255 globB_main - 107 +107 Steven _______________________________________________ busybox mailing list busybox@busybox.net http://lists.busybox.net/mailman/listinfo/busybox