Red Hat Bugzilla – Bug 63796
Automatic multi-arch builds no longer work.
Last modified: 2008-05-01 11:38:02 EDT
The fix for rpm -q bug #27589 introduced a side effect of disabling automatic
multi-architecture builds by rpm -bb and -ba (and -tb and -ta). Prior to 4.0.3,
running an 'rpm -bb' on a
BuildArch: i386 noarch
resulted in rpmb making two passes over the spec file automatically, one for
each listed architecture. After 4.0.3 rpmb would run a single pass only, for i386.
As a result, it is no longer possible to distribute packages that are to be
built against multiple architectures without additional out-of-band instructions
specifying that rpm should be executed multiple times with different --target
options. The problem with the rpm --query really didn't affect building, before
The only issue with multi-arch builds is the generation of the source RPM.
There are three options:
* Leave it as it is. Before 4.0.3 the source RPM was created after the last
arch pass. Explicitly define this as the official behavior.
* Introduce a SourceArch: header that specifies a single architecture. rpm -ba
would create a source RPM only after a pass for the architecture specified by
SoruceArch: (in absence of SourceArch: the platform build is defaulted).
* Introduce an ExtraArch: header, listing multiple architectures to run
additional spec file passes for, after processing -ba or -bb.
Closing bugs on older, no longer supported, releases. Apologies for any lack of
For RPM issues, please try a current release such as Fedora Core 4; if bugs
persist, please open a new issue.