Bug 190358 - rpmbuild on EMT64 systems uses incorrect macros
rpmbuild on EMT64 systems uses incorrect macros
Product: Fedora
Classification: Fedora
Component: rpm (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Paul Nasrat
Mike McLean
Depends On:
  Show dependency treegraph
Reported: 2006-05-01 12:03 EDT by Tim Fletcher
Modified: 2007-11-30 17:11 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-05-04 14:51:09 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Tim Fletcher 2006-05-01 12:03:52 EDT
Description of problem:
A default install of FC5 on ia32e (ie the latest P4's in x86_64 mode) correctly
sets a platform (ia32e-redhat-linux) in /etc/rpm/platform that rpmbuild doesn't
know about meaning that any packages built using rpmbuild have incorrect paths
(eg _lib is set to lib not lib64) due to macro files not being found.

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

How reproducible:

Steps to Reproduce:
1. Install FC5 on a P4 in x86_64 mode
2. run rpmbuild --showrc
Actual results:
-14: _lib       lib

Expected results:
-14: _lib       lib64

Additional info:
This can be fixed by either setting the arch in /etc/rpm/platform to x86_64 or
symlinking /usr/lib/rpm/ia32e-linux to /usr/lib/rpm/x86_64-linux 

Neither of these options is well documented meaning that a newly installed EMT64
system can not be used to produce rpms that work on that system. There has
already been 1 bug (159684) opened for this against RHEL4 which was closed with
a WONTFIX, however I think these options should at least be noted somewhere and
it would be prefable that a default install produced a system that can actaully
be used to build working packages for that system.
Comment 1 Jeff Johnson 2006-05-02 18:56:35 EDT
Anaconda writes /etc/rpm/platform, so anaconda gets to write the value for EMT64 correctly.
Comment 2 Paul Nasrat 2006-05-03 11:09:59 EDT
This seems to be an oversight in rpm installplatform we just need an x86_64
SUBSTS line for the compat archs something like:

x86_64|amd64|ia32e) SUBSTS='s|x86_64|x86_64| s|x86_64|ia32e| s|x86_64|amd64|' ;;
Comment 3 Jeff Johnson 2006-05-04 14:51:09 EDT
AFAIK the name of the platform is "x86_64", not "ia32e", not "EMT64", not anything else.

Creating Yet Another Alias is not needed for engineering reasons, nor is distinguishing
Yet Another Arch likely to be useful for any known purpose.

But feel free to have at if you want, "EMT64" is just another string that needs to compare
correctly with existing uses of arch strings.

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