Packages with optflags and/or debuginfo issues

Ralf Corsepius rc040203 at freenet.de
Tue Jan 30 18:30:15 UTC 2007


On Tue, 2007-01-30 at 19:48 +0200, Ville Skyttä wrote:
> On Tuesday 30 January 2007 16:31, Till Maas wrote:
> > On Monday 29 January 2007 22:06, Ville Skyttä wrote:
> >
> > What about -fomit-frame-pointer and -O3, that maybe breaks debuginfo, too:
> > https://www.redhat.com/archives/fedora-extras-list/2006-July/msg00712.html
> 
> That would be a good addition to the Wiki page, but: does -O3 break it alone, 
> or with -fomit-frame-pointer, or is it just -fomit-frame-pointer? 

-fomit-frame-pointer alone breaks debugging on many platforms (It causes
the compiler to omit code generation to support the frame-pointer.)

What -O3 does is subject to change at any time and therefore is unsafe.

Those people who implemented RPM_OPT_FLAGS have reasons why they chose
them the way they did - Any modification to code-generation related
additions to CFLAGS therefore can't be considered lightly.

>  What about 
> other flags that could result in the same?
Many -m* flags fall into same category. In most cases, they don't
necessarily break "debugging". In most cases they break the ABI.

> > > no sources is also quite likely not honoring $RPM_OPT_FLAGS, and if so,
> > > also very likely to have been built without compiler generated security
> >
> > Do $RPM_OPT_FLAGS need to be used in LDFLAGS, too?
> 
> I don't think I've ever seen it being used there. 

Depends on a packages details. In general, many flags also affect
linkage (e.g. -m* implies the library path in a multilib'ed
environment).

>  FWIW, unlike 
> CFLAGS/CXXFLAGS/FFLAGS, %configure doesn't set LDFLAGS at all.
Yes, most packages link through the compiler and do not explicitly
invoke the linker. Therefore, in most cases, linking also receives
CFLAGS, which makes tweaking LDFLAGS unnecessary.

In exotic cases (e.g. build-scripts), it can be necessary to also tweak
LDFLAGS.

Ralf






More information about the Fedora-maintainers mailing list