Bug 190358

Summary: rpmbuild on EMT64 systems uses incorrect macros
Product: [Fedora] Fedora Reporter: Tim Fletcher <tim>
Component: rpmAssignee: Paul Nasrat <nobody+pnasrat>
Status: CLOSED WONTFIX QA Contact: Mike McLean <mikem>
Severity: medium Docs Contact:
Priority: medium    
Version: 5   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-05-04 18:51:09 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:

Description Tim Fletcher 2006-05-01 16:03:52 UTC
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):
rpm-4.4.2-15.2

How reproducible:
Always

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 22:56:35 UTC
Anaconda writes /etc/rpm/platform, so anaconda gets to write the value for EMT64 correctly.

Comment 2 Paul Nasrat 2006-05-03 15:09:59 UTC
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 18:51:09 UTC
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.