Bug 132633 - redhat-rpm-config should require elfutils
Summary: redhat-rpm-config should require elfutils
Alias: None
Product: Fedora
Classification: Fedora
Component: redhat-rpm-config
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Elliot Lee
QA Contact:
Depends On:
Blocks: FC3Target
TreeView+ depends on / blocked
Reported: 2004-09-15 11:31 UTC by Matthias Saou
Modified: 2007-11-30 22:10 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2004-09-15 21:46:23 UTC

Attachments (Terms of Use)

Description Matthias Saou 2004-09-15 11:31:27 UTC
Description of problem:
When redhat-rpm-config is installed, creation of debuginfo packages is
automatically enabled, but this only works as expected if eu-strip is
available, but it isn't always since it's in the elfutils package
which isn't currently required, nor by rpm-build (see bug #111363
WONTFIX) nor redhat-rpm-config, but I think it should.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Install a minimal Fedora Core system
2. Install rpm-build, redhat-rpm-config and their dependencies
3. Rebuild a package
Actual results:
The resulting package doesn't get all its libraries stripped properly
and symbols moved to the debuginfo package.

Expected results:
The package should contains stripped files with symbols moved to the
debuginfo package.

Additional info:
AFAICT, and having seen Jeff Johnson's answer to bug #111363 the
correct solution seems to either add "Requires: elfutils" or
"Requires: /usr/bin/eu-strip" to this package.

Comment 1 Elliot Lee 2004-09-15 21:46:23 UTC
Although elfutils is needed in order to use the debuginfo feature, it
isn't required for basic use of redhat-rpm-config, so it doesn't make
sense to add a requirement. I _am_ adding elfutils to comps so that it
installs along with redhat-rpm-config by default. That should have the
same result for users.

Comment 2 Matthias Saou 2004-09-15 23:17:11 UTC
Unfortunately, this won't fix the problem for people like me who build
packages in minimal chroots and not actual installed systems. IMHO,
eu-strip is _required_ in order to get the proper redhat-rpm-config
behavior, thus should be a _requirement_ of redhat-rpm-config even
though this isn't a typical shared library or mandatory executable
Otherwise, why is eu-strip used instead of the regular strip in the
debuginfo woodoo macros? Maybe changing that would be another option,
although I doubt eu-strip wasn't explicitely used for a good
reason.... but who knows (not me!).

Comment 3 Jeff Johnson 2004-09-16 20:20:01 UTC
Matthias: This is exactly a case of what works for Red Hat
per-venodr config won't possibly work for everyone. IMHO,
you should use redhat-rpm-config as template to create
(and encapsulate) your own build configuration.

Per-vendor config has exsisted for quite some time now, and
it's nearly impossible to pretend that "One config for all."
makes any sense any more.

And eu-strip is used rather than strip from binutils because
there is some deep ELF voo-doo that eu-strip gets right, but
binutils strip does not. That was an issue on a RHL 9 time frame,
perhaps has changed, noone has looked.

Adding a Requires: elfutils serves little purpose (imho) because
the underlying need, sufficiently correct behavior from strip
to build packages reproducibly, is essentially and intrinsically
an attribute of the toolchain itself, not of packages that happen
to contain scripts that invoke elements of a tool chain that
needs to be considered and chosen carefully by the build master.

Note You need to log in before you can comment on or make changes to this bug.