On Thursday 06 July 2006 14:49, Ciaran McCreesh wrote: > Well, you're assuming that Properly listing, what an arcane science. > a) everyone's using a C compiler, No, I assume that everyone is using a compiler. You cannot have a C++ compiler without a C compiler. The first person I see that sets CXXFLAGS but not CFLAGS I'm personally going to give him the "doesn't have a clue" prize. > b) that gcc has the slightest clue what it's doing, No, I assume that gcc has a big clue about which capabilities are available to the -march switch. I might be assuming that users have a clue on what they are doing, but that's an assumption I do have to do, or I shouldn't be working on Gentoo but on Debian, which seems pretty good at optimising for i386 still. > c) that the user has no problem using nasty hacks to regain control, Where "regain control" is "doing something that could have done before but made actually no sense to do before. And the bashrc thing is not a big nasty hack, works quite well for me. > d) that this information is only needed at compile time, Well of course use flags are available at runtime for the packages built to know, this is perfectly logic of you. You really was getting out of arguments, don't you? If I have to enable a configure switch I need it only at buildtime. If it has to be known at runtime there's the cpuid function! > e) that various gcc internal definitions won't change... It's like assuming that gcc will always output the correct hello world for int main() { printf("Hello, world!\n"); return 0; } If it does change those values, it's going to be a killer for way more than just Portage. > You're adding a lot of complexity, and thus > room for very weird breakages, to something that doesn't need it. You're not exposing any of such breakages, I find it to reduce complexity to users that cannot try to enable SSE3 on an Athlon-TBird system. -- Diego "Flameeyes" Pettenò - http://farragut.flameeyes.is-a-geek.org/ Gentoo/Alt lead, Gentoo/FreeBSD, Video, AMD64, Sound, PAM, KDE