Mailing List Archive

1 2 3  View All
Re: vs. Debian [ In reply to ]
On Sun, 19 Sep 2004 19:01:10 +0200 Holly Bostick <motub@planet.nl>
wrote:
| Ciaran McCreesh wrote:
| > Think I'm being elitist? I suggest you look at the number of people
| > who have at least one of -msse*, -mno-ieee-fp, -fomit-frame-pointer
| > (on x86), -O3, -ffast-math, -funroll-all-loops or -finline-functions
| > (for example...) enabled at a global level. A certain portion of our
| > userbase seems to think that the length of their CFLAGS line is
| > proportional to the size of their wang, and this causes an awful lot
| > of time-wasting bugs (which is pretty much why we have flag-o-matic
| > at all...).
|
| I would just like to note that if -fomit-frame-pointer is considered
| to be somehow dangerous, it should not be mentioned as "popular"-- and
| thus implied to be "OK" for users like myself who don't know what
| these things mean-- in the x86 Handbook:

It's not dangerous on x86, it just means it's impossible to get a proper
stack backtrace for debugging when you build that way.

--
Ciaran McCreesh : Gentoo Developer (Sparc, MIPS, Vim, Fluxbox)
Mail : ciaranm at gentoo.org
Web : http://dev.gentoo.org/~ciaranm
Re: vs. Debian [ In reply to ]
Which people like me don't ungerstand anyway! ;-)

Personally I took your earlier list as a 'mostly complete, not
guaranteed, possibly done sort of fast' comment, and not as a
directive of the guaranteed right way to do things. From my point of
view I don't even know if it's safe to compile without any flags at
all. Possibly some bug pops up that way, and that bug would never be
seen while the package was ~x86 since no one would ever have checked
it. As a beginner and on my systems I just use those 'standard' flags
and hope for the best.

This whole flags issue was one reason I reported 6-8 months ago about
Codeweavers not supporting Gentoo since they didn't know what a Gentoo
platform really was. The more people that use the 'standard set'
(whatever that means) the better.

--
gentoo-user@gentoo.org mailing list
Re: vs. Debian [ In reply to ]
On Sun, 19 Sep 2004, Ciaran McCreesh wrote:

> On Sun, 19 Sep 2004 08:00:33 +0300 (EEST) Tero Grundström
> |
> | Sure there is a developers_way to do everything one could possibly
> | want. Afaikt, The real point in this discussion has been that there
> | should also be a users_way to do things like this, meaning these
> | should be included as features that are easy enough for everybody to
> | use.
>
> There *is* a straight forward way that this can be done as a user.
> However, I'm not going to go around advertising it, because people who
> don't know what they're doing will use it, break things, submit bugs and
> generally cause all sorts of problems. Anyone who can understand the
> implications of overriding replace-flags can easily figure out how to do
> so anyway.

I got it, and agree.

> | Aren't you being a little bit elitistic with this kind of comments
> | here, Ciaran? You are beginning to sound more like a Debian dev than a
> | Gentoo dev...
>
> Not really. The majority of our users can't code in asm and don't
> understand how optimising compilers work. That's fine, so long as they
> don't try to do really screwy stuff with CFLAGS which they don't
> understand. For those who *do* understand the implications of function
> inlining, non-IEEE compliant floating point, dropping the frame pointer
> to gain an extra register and so on, the option is there to do so on a
> per-package or a global basis without having to edit the ebuilds. It's
> even documented.

In that case it's time for me to read some documentation... :)

> To make this clear... The majority of users shouldn't tinker with CFLAGS
> beyond '-O2 -m{whatever your arch's "build for this CPU setting" is}=foo
> -pipe'. Any further flags *will* have side effects, and using those
> flags without understanding those side effects is a bad idea. Of course,
> for people who *do* know what they're doing, other options are
> available.
>
> Think I'm being elitist? I suggest you look at the number of people who
> have at least one of -msse*, -mno-ieee-fp, -fomit-frame-pointer (on
> x86), -O3, -ffast-math, -funroll-all-loops or -finline-functions (for
> example...) enabled at a global level.

IIRC, there used to be -O3 and -funroll-loops as an official example in
make.conf...

>A certain portion of our userbase
> seems to think that the length of their CFLAGS line is proportional to
> the size of their wang, and this causes an awful lot of time-wasting
> bugs (which is pretty much why we have flag-o-matic at all...).
>
> [. This is, of course, my opinion, not policy. Policy just states that we
> close any bugs which are submitted with silly CFLAGS as INVALID. Oh, and
> don't try faking emerge info output, we can usually tell when you do. ]

If so, could you please tell me why is it possible for users to set
whatever unstable flags globally? To me it would make more sense if users
could only use the known stable flags at global level and then set some
special cflags at package (or category) level. *A lot* of cflags related
bugs would have been avoided this way while users still would have some
of the much wanted freedom with cflags.

To sum it up:

1. Even though the usage of aggressive cflags globally...
- doesn't benefit the majority of software
- causes instability for systems
- causes alot of invalid bugs
...Gentoo has always made it possible to set them globally by user.

2. On the other hand *creative* usage of aggressive cflags can clearly
benefit, for instance multimedia and games, without causing much (if any)
instability etc problems but...
...Gentoo has never favored setting cflags per package (or category) by
user.

My logic says this should be just the other way around.

--
T.G.

--
gentoo-user@gentoo.org mailing list
Re: vs. Debian [ In reply to ]
Would somebody like to send me this "simple way this can be done"
I generally edit ebuilds, override flags and build manually to bypass
some of this stuff - this kinda makes gentoo a bit of a laughing stock
seeing this happen - I am not at all impressed that a distro that sells
itself as flexible and tunable is being subverted

How does this attitude fit with what is written on the gentoo web site:
"We produce Gentoo Linux, a special flavor of Linux that can be
automatically optimized and customized for just about any application or
need. Extreme performance, configurability and a top-notch user and
developer community are all hallmarks of the Gentoo experience."

The "right" way to do this in my opinion is to set sane defaults, advise
users why they are sane, and let them break things if they want to -
those who fiddle (like me) will generally break things anyway, hiding
the knobs to do so just makes it more likely to happen. I do agree that
then its not a dev responsibility after they depart the path - but the
devs SHOULD not mandate that path because of personnel opinion.


BillK


On Mon, 2004-09-20 at 00:21, Ciaran McCreesh wrote:
> On Sun, 19 Sep 2004 08:00:33 +0300 (EEST) Tero Grundström

> There *is* a straight forward way that this can be done as a user.
> However, I'm not going to go around advertising it, because people who
> don't know what they're doing will use it, break things, submit bugs and
> generally cause all sorts of problems. Anyone who can understand the
> implications of overriding replace-flags can easily figure out how to do
> so anyway.



--
gentoo-user@gentoo.org mailing list
Re: vs. Debian [ In reply to ]
On Mon, 20 Sep 2004 00:33:27 +0300 (EEST) Tero Grundström
<tero@vuosaari.hai.fi> wrote:
| > Think I'm being elitist? I suggest you look at the number of people
| > who have at least one of -msse*, -mno-ieee-fp, -fomit-frame-pointer
| > (on x86), -O3, -ffast-math, -funroll-all-loops or -finline-functions
| > (for example...) enabled at a global level.
|
| IIRC, there used to be -O3 and -funroll-loops as an official example
| in make.conf...

-funroll-loops is (mostly) ok. -funroll-all-loops isn't. And yes, we've
had some very silly things in our docs in the past, although that was
back in the days when all our users knew Linux inside out.

| > [. This is, of course, my opinion, not policy. Policy just states
| > that we close any bugs which are submitted with silly CFLAGS as
| > INVALID. Oh, and don't try faking emerge info output, we can usually
| > tell when you do. ]
|
| If so, could you please tell me why is it possible for users to set
| whatever unstable flags globally? To me it would make more sense if
| users could only use the known stable flags at global level and then
| set some special cflags at package (or category) level. *A lot* of
| cflags related bugs would have been avoided this way while users still
| would have some of the much wanted freedom with cflags.

Because we don't (always) go out of our way to stop users from doing
stupid things.

| ...Gentoo has never favored setting cflags per package (or category)
| by user.

Well, that's actually possible using portage 2.0.50 or later... But
then, any application which has been designed to use, say, -ffast-math
will turn that on in the Makefile anyway, and any application which has
not been explicitly designed to use -ffast-math cannot use it safely at
all.

--
Ciaran McCreesh : Gentoo Developer (Sparc, MIPS, Vim, Fluxbox)
Mail : ciaranm at gentoo.org
Web : http://dev.gentoo.org/~ciaranm

1 2 3  View All