1 |
this topic has come up before too many times and has yet to be solved, and we |
2 |
have too many hacks in place |
3 |
|
4 |
the issues: |
5 |
- USE=debug is way too vague; sometimes it builds different code (i.e. |
6 |
additional runtime checks, debugging output, yada yada) and sometimes it |
7 |
forces debugging gcc flags into CFLAGS |
8 |
- debug.eclass: it sucks, we all know it, enough said |
9 |
- no easy way for users/developers to quickly emerge a package and have it |
10 |
contain useful debugging information, running `FEATURES=nostrip CFLAGS="-g |
11 |
-O" emerge booga` is petarded |
12 |
|
13 |
the one true solution: |
14 |
- USE=debug *never* changes CFLAGS or LDFLAGS or what have you, it *only* |
15 |
enables additional runtime code (such as assert()'s or helpful debug |
16 |
output) ... if you're confused by what i mean, run `USE=debug emerge nano` |
17 |
and then run `nano` |
18 |
- we add an emerge flag (say '--debug-build') which adds "nostrip" to FEATURES |
19 |
and auto sets CFLAGS to DEBUG_CFLAGS and LDFLAGS to DEBUG_LDFLAGS |
20 |
- portage will add sane debug defaults to make.globals (DEBUG_CFLAGS="-O -g" |
21 |
and DEBUG_LDFLAGS="") |
22 |
|
23 |
so what have i missed ? |
24 |
-mike |
25 |
-- |
26 |
gentoo-dev@g.o mailing list |