Gentoo Archives: gentoo-dev

From: "Harald van Dijk" <truedfx@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] automatically killing invalid CFLAGS/warning about bad CFLAGS
Date: Fri, 14 Apr 2006 06:29:39
Message-Id: 20060414062703.GA1111@gentoo.org
In Reply to: Re: [gentoo-dev] automatically killing invalid CFLAGS/warning about bad CFLAGS by Patrick McLean
1 On Thu, Apr 13, 2006 at 10:49:24PM -0400, Patrick McLean wrote:
2 > -----BEGIN PGP SIGNED MESSAGE-----
3 > Hash: SHA1
4 >
5 > Alec Warner wrote:
6 > >
7 > > Except you need a way for them to turn it off, and you do not currently
8 > > provide one. We can set default flags all we want, but I don't see
9 > > filtering 'bad' flags as necessarily our problem. If you want to say:
10 > >
11 > > "Hey we have had issues with people filing bogus bug reports with CFLAGS
12 > > that are completely inappropriate, so by default we check the sanity of
13 > > your CFLAGS, this is how you turn those checks off." then I'd be ok with it.
14 > >
15 > > Most of the Ricers won't read it, and maybe you can print a warning that
16 > > CFLAG checking is disabled.
17 > >
18 > > However leaving it on all the time merely imposes penalties on the power
19 > > users who wish to use your profile. Your profile is a tool that should
20 > > be useful to all classes of users.
21 > >
22 >
23 > The only flags that are actually removed are the _invalid_ flags. These are the
24 > flags that gcc does not accept, and will error out on. The "bad" flags, IE the
25 > ones that the developers consider to be broken, but that are accepted by gcc are
26 > not filtered, the profile simply prints a warning and pauses for 5 seconds to
27 > encourage users to read the warning, it does not automatically filter any flags
28 > that the compiler accepts.
29
30 The only flags that are actually removed are the flags that are invalid
31 _by themselves_. There are cases where flags are valid because of other
32 flags, such as anything following -X*.
33
34 Two other problems I see with the code:
35 CFLAGS=${CFLAGS//bad-flag} is in the ebuild quiz, if I recall correctly.
36 It's broken because it also removes valid flags that happen to contain
37 bad-flag as a substring.
38 Locale isn't forced to C, which means gcc may not spit out 'unrecognized
39 option' at all even for invalid flags.
40 --
41 gentoo-dev@g.o mailing list

Replies