Description of problem: Can't build driver update model packages Version-Release number of selected component (if applicable): redhat-rpm-config-8.0.45-17.0.1.el5 How reproducible: Try building the attached source rpm. brew build --scratch dist-5E xenpv-3.1_15040-0.src.rpm Actual results: Build fails, complaining about build dependencies not being satisfied. Expected results: Build works. Additional info: Local build fails on i386 too, with a slightly different error message. Local build on x86_64 works (this is how the source rpm was created).
Created attachment 156092 [details] src rpm
brew error message: Executing /usr/sbin/mock-helper chroot /var/lib/mock/dist-5E-build-255119-51671/root /sbin/runuser - root -c "/sbin/runuser -c 'rpmbuild -bs --target ia64 --nodeps /builddir/build/SPECS/xenpv.spec' brewbuilder" Building target platforms: ia64 Building for target ia64 Wrote: /builddir/build/SRPMS/xenpv-3.1_15040-0.src.rpm Executing /usr/sbin/mock-helper yum --installroot /var/lib/mock/dist-5E-build-255119-51671/root resolvedep 'kernel-devel-ia64 = package' 'kernel-devel' No Package Found for kernel-devel-ia64 = package 0:kernel-devel-2.6.18-8.1.4.el5.ia64 Cleaning up...
local build on i386: error: Failed build dependencies: kernel-devel-i386 = 2.6.18-20.el5.kraxel.3 is needed by xenpv-3.1_15040-0.i386 Building target platforms: i686-linux Building for target i686-linux rhel5 kraxel ~/packages/xenpv# rpm -q --provides kernel-devel kernel-devel-i686 = 2.6.18-20.el5.kraxel.2 kernel-devel = 2.6.18-20.el5.kraxel.2 kernel-devel-i686 = 2.6.18-20.el5.kraxel.3 kernel-devel = 2.6.18-20.el5.kraxel.3
local build using mock fails too, due to the same strange dependency ("kernel-devel-%{_target_cpu} = package" instead of "kernel-devel-%{_target_cpu} = kernelversion"), looks like mock is the culpit here.
Uhm, mock fails to resolve build dependencies due to some trickery in /usr/lib/rpm/redhat/macros which works only with kernel-devel being installed. kernel-devel isn't part of the buildsys-build build dependencies -> Oops.
Closing as this is not actually a bug in the driver update program, but a "bug" in ensuring the right packages are installed and that the build is for the appropriate target (i686 not i386). Jon.
Having kernel-devel installed works for local builds. As explained in comment #5 it doesn't work with mock and thus also fails for brew/koji builds -> reopening bug. Obvious trivial fix would be to add a "Requires: kernel-devel" to the buildsys-build package. But that has the drawback to pull in the kernel-devel package for each and every package build.
Er...it doesn't fail for brew builds because we do them all the time! Hmmm...I'm wondering what's up here. Jon.