Handling architecture limitations

Stephen Gallagher sgallagh at redhat.com
Tue Jun 18 18:28:57 UTC 2013

Hash: SHA1

On 05/29/2013 09:55 PM, T.C. Hollingsworth wrote:
> On Wed, May 29, 2013 at 5:19 AM, Stephen Gallagher
> <sgallagh at redhat.com> wrote:
>> FYI, Panu has added the patch to redhat-rpm-config and pushed a
>> Bodhi update to testing: 
>> https://admin.fedoraproject.org/updates/redhat-rpm-config-9.1.0-45.fc19
Please add the %nodejs_arches to the ExclusiveArch line in your
>> nodejs-* packages and rebuild against them locally with this
>> package and give karma. I can also tag it into a buildroot
>> override if we want to start rebuilding all of the official
>> nodejs packages.
> Okay, so this doesn't seem to work with noarch packages:
> [tc at zathras]~/fedpkg/npm/nodejs-ini% grep -e ExclusiveArch -e 
> BuildArch nodejs-ini.spec BuildArch:  noarch ExclusiveArch:
> %{nodejs_arches} [tc at zathras]~/fedpkg/npm/nodejs-ini% fedpkg local 
> error: Architecture is not included: noarch
> Could not execute local: Non zero exit

Sorry for the long turnaround on this, but I had a long conversation
with Dennis Gilmore, Toshio Kuratomi, Kevin Fenzi and Bill Nottingham
about this today and we figured out the correct approach.

So with noarch packages, we will want to do:

BuildArch: noarch
ExclusiveArch: %{nodejs_arches} noarch

This will yield the correct result (building it noarch and only
putting it in the %{nodejs_arches} repositories. (Confirmed by Dennis
Gilmore; this is how the Intel WiFi firmware does things too).

For archful builds we can leave off BuildArch and just use:
ExclusiveArch: %{nodejs_arches}

Obviously, this will only work on F19 and later. For Fedora 18 and
EPEL 6, we need to do:

BuildArch: noarch
ExclusiveArch: %{ix86} %{arm} x86_64 noarch


ExclusiveArch: %{ix86} %{arm} x86_64


This can also work:
%{?nodejs_arches: ExclusiveArch: %{nodejs_arches}}%{!nodejs_arches:
ExclusiveArch: %{ix86} x86_64 %{arm}}

But it's ugly, and I'd recommend just splitting the package RPMs
between branches to keep each branch simpler to understand.
Version: GnuPG v1.4.13 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/


More information about the nodejs mailing list