On Sunday 15 January 2006 01:11, Mike Frysinger wrote: > this topic has come up before too many times and has yet to be solved, and > we have too many hacks in place
ok, so after sitting on the list for a while and accumulating feedback, how about this: - USE=debug *never* changes CFLAGS or LDFLAGS or what have you, it *only* enables additional runtime code (such as assert()'s or helpful debug output) ... if you're confused by what i mean, run `USE=debug emerge nano` and then run `nano` - we add an emerge flag (say '--debug-build') which adds "debug-build" to FEATURES - if "debug-build" is in FEATURES, then the following happens: * auto sets CFLAGS to DEBUG_CFLAGS, LDFLAGS to DEBUG_LDFLAGS, CXXFLAGS to DEBUG_CXXFLAGS (and in the future, we can add more variables as the need comes up) * if user already has FEATURES=splitdebug, then do not add "nostrip" * if user does not have FEATURES=splitdebug, then add "nostrip" to FEATURES - we will set sane debug defaults in the base profile: * DEBUG_CFLAGS=DEBUG_CXXFLAGS="-O -g" * DEBUG_LDFLAGS="" - subprofiles can tweak these values as they see fit (or as required) i'll go ahead and start implementing framework for this in the meantime -mike -- gentoo-dev@gentoo.org mailing list