Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Subject: [gentoo-amd64] Re: Another package that doesn't like GCC 4
Date: Thu, 23 Nov 2006 06:49:32
Message-Id: ek3g66$b0v$2@sea.gmane.org
In Reply to: Re: [gentoo-amd64] Another package that doesn't like GCC 4 by "Michael Weyershäuser"
1 Michael Weyershäuser <thedude0001@×××.de> posted 4564F0D8.8030904@×××.de,
2 excerpted below, on Thu, 23 Nov 2006 01:52:40 +0100:
3
4 > Jack Lloyd wrote:
5 >> I would think it would still be useful to have know, so the ebuild
6 >> could use filter-flags to prevent this problem from occuring for
7 >> others (if it is in fact a CFLAGS problem).
8 >
9 > It might depend on the flag we're talking about, but filter-flags and
10 > replace-flags is mostly used for ebuilds that don't work with supported
11 > flags (like an ebuild that doesn't like -Os but needs -O2). There has
12 > been a debate a couple of weeks back if ebuilds should even filter
13 > -ffast-math as this is a flag that breaks dozens of packages, sometimes
14 > in sneaky, hard-to-debug ways, or if the ebuild should just die if it
15 > finds that flag.
16 >
17 > You're free to try, but the idea is that while you have a lot of choices
18 > when using Gentoo it is not the devs duty to stop you from making bad
19 > choices or protect you from their effects.
20
21 FWIW, while I use somewhat "interesting" cflags, I'd certainly be for
22 dieing at a global portage level (so the ebuild doesn't have to worry
23 about it at all) with -ffast-math. That one's simply not safe for general
24 use, as the gcc manpage makes quite clear. Individual builds can and do
25 often add it themselves if it's safe and useful for the package to do (as
26 is the case with many video or visualization packages, for instance).
27
28 For others, it depends on the dev/maintainer. Some of them are OK with
29 certain flags, some not. It helps if one is aware of the situation and
30 already knows to try with the accepted-safe -O2 -pipe -march=<arch> flags,
31 only, before reporting a bug. If it's a bug that might be CFLAG
32 sensitive, I do so. Only once have I had a bug closed incorrectly, for
33 CFLAGS that quite obviously had nothing at all to do with the problem.
34 (In that case, it was a multilib-strict error due to a file going to lib
35 that should have gone to lib64, obviously a file placement error unrelated
36 to CFLAGS. I refiled at the next version bump when the issue still wasn't
37 fixed, and it was fixed within minutes... literally.) The rest of the
38 time, I've usually tried before filing if it looks to be CFLAG sensitive,
39 tho I think I've had one closed where it was questionable early on -- I
40 simply tried with the requested CFLAGS and reopened.
41
42 More often, I don't file bugs because there's no way to isolate the issue
43 given my CFLAGs. The latest example, I was having issues with glibc-2.5
44 and reverted to 2.4-r4 (gotta hack portage to do it, due to a sanity check
45 normally preventing glibc downgrade, but it worked), that I didn't file a
46 bug on as I could never satisfy myself that there wasn't a dependency I'd
47 missed and I didn't want to emerge --emptytree the packages in question to
48 find the issue. I /suspect/ the problem is a memory allocation race
49 condition, probably SMP specific and possibly amd64 specific, with
50 optimizations in glibc-2.5 that weren't there in 2.4. The affected
51 packages here were all audio/visual, amarok, xmms (before its removal),
52 kaffeine, but NOT kmplayer, for whatever reason. It wasn't xine-lib
53 specific since xmms was affected and kmplayer wasn't. Note that glibc
54 itself is already filter-flagged to nearly -O2 -pipe -march=<arch> on its
55 own, so it's not likely to be the problem. Never-the-less, I remerged
56 glibc, gcc, kdelibs, kaffeine, amarok, and xine-lib, all with "safe"
57 cflags, bug still existed with glibc-2.5 but /not/ glibc-2.4-rX, but I
58 couldn't isolate it beyond that, so I didn't file the bug. I
59 package.masked =glibc-2.5, so when 2.5-r1 comes out I'll tackle the
60 problem again.
61
62 --
63 Duncan - List replies preferred. No HTML msgs.
64 "Every nonfree program has a lord, a master --
65 and if you use the program, he is your master." Richard Stallman
66
67 --
68 gentoo-amd64@g.o mailing list