Yup, the main case for isa in BuildRequires is getting sensible behavior when doing rpmbuild for a secondary arch, eg:
[pmatilai@dhcp102 SPECS]$ uname -m
x86_64
[pmatilai@dhcp102 SPECS]$ rpmbuild -bb --target i686 rpm.spec
Building target platforms: i686
Building for target i686
error: Failed build dependencies:
db4-devel(x86-32) is needed by rpm-4.8.0-2.fc12.i686
elfutils-devel(x86-32) >= 0.112 is needed by rpm-4.8.0-2.fc12.i686
elfutils-libelf-devel(x86-32) is needed by rpm-4.8.0-2.fc12.i686
readline-devel(x86-32) is needed by rpm-4.8.0-2.fc12.i686
...
Without isa, you'd get varying errors in the middle of the build despite rpm seeming happy about buildrequires.
Of course whether %{_isa} is in src.rpm or not, this doesn't work with something like yum-builddep - as has been noted here the only meaningful place to figure buildrequires is at build, not src.rpm generation time. I wasn't joking about dropping distribution of source rpms and pointing people to dist-cvs instead.
Oh and adding an API to rpm-python for resolving build-requires from a spec wouldn't be hard at all, it's just not there yet.
Yup, the main case for isa in BuildRequires is getting sensible behavior when doing rpmbuild for a secondary arch, eg: 0-2.fc12. i686 devel(x86- 32) >= 0.112 is needed by rpm-4.8. 0-2.fc12. i686 libelf- devel(x86- 32) is needed by rpm-4.8. 0-2.fc12. i686 devel(x86- 32) is needed by rpm-4.8. 0-2.fc12. i686
[pmatilai@dhcp102 SPECS]$ uname -m
x86_64
[pmatilai@dhcp102 SPECS]$ rpmbuild -bb --target i686 rpm.spec
Building target platforms: i686
Building for target i686
error: Failed build dependencies:
db4-devel(x86-32) is needed by rpm-4.8.
elfutils-
elfutils-
readline-
...
Without isa, you'd get varying errors in the middle of the build despite rpm seeming happy about buildrequires.
Of course whether %{_isa} is in src.rpm or not, this doesn't work with something like yum-builddep - as has been noted here the only meaningful place to figure buildrequires is at build, not src.rpm generation time. I wasn't joking about dropping distribution of source rpms and pointing people to dist-cvs instead.
Oh and adding an API to rpm-python for resolving build-requires from a spec wouldn't be hard at all, it's just not there yet.