Bug 195487 - rpmbuild not being consistant with noarch
rpmbuild not being consistant with noarch
Product: Fedora
Classification: Fedora
Component: rpm (Show other bugs)
x86_64 Linux
medium Severity medium
: ---
: ---
Assigned To: Paul Nasrat
Mike McLean
: Reopened
Depends On:
  Show dependency treegraph
Reported: 2006-06-15 10:23 EDT by Paul F. Johnson
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-06-17 12:07:36 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 Paul F. Johnson 2006-06-15 10:23:10 EDT
Description of problem:
If you define BuildArch: noarch on an x86_64 box (and presumably ia64) and then
define %configure --target=sparc86x (to satisfy configure), the final rpm check
fails as it thinks %_libdir should be /usr/lib64 rather than /usr/lib.

This is only apparant on non x86 builds.

It looks like it may only happen as well for mono applications.

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

How reproducible:

Steps to Reproduce:
1. grab lat (BZ #177580), remove the %define libdir line from the spec and build
on x86 and x86_64
Actual results:
The build fails on x86_64 while checking the contents of the rpm built as
/usr/lib64/lat cannot be found

Expected results:
The rpm check should be fine

Additional info:
I've not tested this on anything other than mono applications
Comment 1 Jeff Johnson 2006-06-16 18:18:14 EDT
Hmmm, if you force install a sparcx86 package on a s390 then none of the executables
from the package will function either.

The use of arch for building (or installing) has certain conventions/rules. Break the rules all you want.
Comment 2 Paul F. Johnson 2006-06-16 18:33:18 EDT
The target is there to shut %configure up (it complains that
noarch-gcc-redhat-linux doesn't exist and dies). As the package being built is a
mono one, it never uses gcc, so there isn't really a target.

It also doesn't address the problem that noarch should (if I've read it
correctly) place everything in /usr/lib, but on 64 bit systems, things are going
into /usr/lib64
Comment 3 Jeff Johnson 2006-06-17 12:07:36 EDT
rpm and autoconf have different conceptions of arch.

Feeding rpm's "noarch" to autoconf is like cursing at a Russian in Swahili.

There are only conventions setting the value of %{_libdir}. Since you invoked
rpmbuild on a x86_64 you have initialized to a x86_64 appropriate value.

If you don't like that, then configure rpm differently.

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