svn commit: trunk/busybox: include scripts
landley at busybox.net
landley at busybox.net
Mon Feb 13 19:16:43 UTC 2006
Author: landley
Date: 2006-02-13 11:16:41 -0800 (Mon, 13 Feb 2006)
New Revision: 13955
Log:
New USE() macros
For each CONFIG_SYMBOL, include/bb_config.h now has both ENABLE_SYMBOL
and USE_SYMBOL(x). ENABLE_SYMBOL is still always defined (1 or 0) so that
if(ENABLE) should optimize out when it's zero. The USE_SYMBOL(X) will only
splice in X if the symbol is defined, otherwise it'll be empty.
Thus we can convert this:
#ifdef CONFIG_ARGS
opt = bb_getopt_ulflags(argc, argv, "ab:c"
#ifdef CONFIG_THINGY
"d:"
#endif
, &bvalue
#ifdef CONFIG_THINGY
, &thingy
#endif
);
#endif
into this:
if (ENABLE_ARGS) {
opt = bb_getopt_ulflags(argc, argv, "ab:c" USE_THINGY("d:"), &bvalue
USE_THINGY(, &thingy));
}
And it should produce the same code.
Unlike the old versions in include/_usage.h, the new USE_SYMBOL(x) can handle
commas in its arguments (as shown above). (The _usage.h file is obsolete and
no longer generated.)
Nobody should need to include config.h directly anymore, bb_config.h should
define all the configuration stuff we need. Someday, the CONFIG_SYMBOL
versions should go away in favor of ENABLE_SYMBOL and USE_SYMBOL().
Thanks to vodz for the new version of bb_mkdep.c that works with function
macros.
Modified:
trunk/busybox/Makefile
trunk/busybox/include/platform.h
trunk/busybox/scripts/bb_mkdep.c
Changeset:
Sorry, the patch is too large to include (1242 lines).
Please use ViewCVS to see it!
http://busybox.net/cgi-bin/viewcvs.cgi?view=rev&root=svn&rev=13955
More information about the busybox-cvs
mailing list