Red Hat Bugzilla – Bug 667144
Source RPM spec file doesn't obey %__cc, %__cpp, %__cxx compiler macros
Last modified: 2017-12-06 05:49:53 EST
Created attachment 471689 [details]
Patch to add correct passing of compiler settings specified in the rpm macros
Description of problem:
The spec file in the source rpm package ignores the compiler rpm macros (or rather, doesn't specify them, so the build defaults to gcc whatever the rpm macros are set to. The macros %__cc, %__cpp, %__cxx, etc. should always be passed to the build process in the appropriate way (environment variables, parameters, whatever) - that's what they are for.
bzip2 spec file, for example, does this correctly, as do a number of other packages, so there is ample precedent for doing this right.
Version-Release number of selected component (if applicable):
gzip-1.3.12-18.el6.src.rpm from RHEL6
Steps to Reproduce:
1. Use a different compiler, or build a custom gcc and call the binaries something different, e.g. mygcc
2. Specify it in /usr/lib/rpm/rpmmacros or ~/.rpmmacros
3. rpm -ivh gzip-1.3.12-18.el6.src.rpm; cd ~/rpmbuild/SPECS; rpmbuild -bb gzip.spec
gzip builds using gcc regardless of what is specified in the rpm macros.
rpm macros should be obeyed and the specified compiler should be used.
gzip builds and works correctly with Intel ICC / XE compiler (and runs a few percent faster), so as a package, it isn't very GCC specific.
A rather trivial patch to fix this is attached.
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unfortunately unable to
address this request at this time. Red Hat invites you to
ask your support representative to propose this request, if
appropriate and relevant, in the next release of Red Hat
Enterprise Linux. If you would like it considered as an
exception in the current release, please ask your support
Red Hat Enterprise Linux 6 is in the Production 3 Phase. During the Production 3 Phase, Critical impact Security Advisories (RHSAs) and selected Urgent Priority Bug Fix Advisories (RHBAs) may be released as they become available.
The official life cycle policy can be reviewed here:
This issue does not meet the inclusion criteria for the Production 3 Phase and will be marked as CLOSED/WONTFIX. If this remains a critical requirement, please contact Red Hat Customer Support to request a re-evaluation of the issue, citing a clear business justification. Note that a strong business justification will be required for re-evaluation. Red Hat Customer Support can be contacted via the Red Hat Customer Portal at the following URL:
Great job. Sit on a bug with patch supplied to resolve it for just under 6 years until the release goes phase 3. How am I supposed to recommend RHEL to my customers with that level of commitment?
I understand that acrimony, but the bug haven't got ever all 3acks to be applied in RHEL. The patch was applied at least in Fedora because of this bug, if I remember it well.