Bug 132633

Summary: redhat-rpm-config should require elfutils
Product: [Fedora] Fedora Reporter: Matthias Saou <matthias>
Component: redhat-rpm-configAssignee: Elliot Lee <sopwith>
Status: CLOSED RAWHIDE QA Contact:
Severity: low Docs Contact:
Priority: medium    
Version: rawhideCC: jbj, strobert
Target Milestone: ---Keywords: EasyFix
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-09-15 21:46:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 123268    

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):
redhat-rpm-config-8.0.31-1

How reproducible:
Always.

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
problem.
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.