This is the first set of changes we talked about. A bit of cleanup, and some minor but important changes (not the rework we spoke of). Here's the example you asked for. Previously, specifying ABI_OPT_PROF=1 on the make commandline meant that setting ABI_OPT_OPTIMIZE=1 had no effect. This caused quite a bit of confusion between me and plam, wondering why certain things never got inlined. It is also very foolish because ***Rule 457: You don't profile what you don't ship. Anyway, now I can specify nearly any combination of profile,debug,gnome,etc. and have it be evaluated as intended. There are a couple places I might like to change that, mainly involving what types of build we can effectively debug, but that is another topic to be addressed shortly.
Other cleanups include separating the gnome and expat checks (fewer lines now, and easier to follow), and separating warning/pedanticity flags from optimization flags. Now we have ABI_OPT_COMPILER_QUIET, which can be true to turn off -Wall -ansi and -pedantic, It WFM without specifying anything. Naturally, cflags are now set to include WARNFLAGS, since they have been taken from $OPTIMIZER. Attached is a semi clean linux.mk.new3, abi_defs.mk.new, and funkified diffs for them. It actually saves a little space now (-: Regards -MG NOTE: This could really use someone with a lot more experience than me (not hard to find) to r= it.
stuff.tar.gz
Description: GNU Zip compressed data
