[Fedora-packaging] arched BuildRequires?

Konstantin Andreev andreev at swemel.ru
Tue Jan 27 22:01:29 UTC 2015


On 14/06/2013 17:07, Michael Schwendt wrote:
> On Fri, 14 Jun 2013 15:26:59 +0300, Panu Matilainen wrote:
>> [... skip ...]
>> The requires of src.rpm only reflect what build-requires were active during the creation of that specific src.rpm file, ...
>
> Which is nearly what I've been preaching. "The spec file's BuildRequires become the src.rpm's Requires" depending on the environment the src.rpm is built within.

Michael,

building 32-bit software on x86_64 systems is *very* important, completely legal, and fully supported use case, right ? (RedHat-provided gcc, binutils, etc for x86_64 always support 32-bit targets.)

Given that, on x86_64 system, obviously,

   * building 32-bit `foo' package requires 32-bit glibc-devel.
   * building 64-bit `foo' package requires 64-bit glibc-devel.

Given that, how would I write a single spec for these to work on the same x86_64 system :

    $ rpmbuild --rebuild               foo.src.rpm
    $ rpmbuild --rebuild --target i686 foo.src.rpm

without arched BR's ?

Dont' mention mock and preparing same-target build environment. If rpmbuild had not designed for [target arch != build arch] condition, it wouldn't has had `--target' option.

As regards storing build requirements in *.src.rpm files. It's wrong asking

   - What this .src.rpm requires ?

Correct asking is

   - What this .src.rpm requires when building *for <some particular> arch* ?

Kind regards,
Konstantin Andreev.


More information about the packaging mailing list