Bug 701568 - Can't build because of a missing BuildRequires
Summary: Can't build because of a missing BuildRequires
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: grub
Version: 6.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Peter Jones
QA Contact: Release Test Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-05-03 08:59 UTC by Mathieu Bridon
Modified: 2011-06-13 22:04 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-06-13 22:04:56 UTC
Target Upstream Version:


Attachments (Terms of Use)
Add a missing BR for grub to build on x86_64 (828 bytes, patch)
2011-05-03 09:00 UTC, Mathieu Bridon
no flags Details | Diff

Description Mathieu Bridon 2011-05-03 08:59:14 UTC
Description of problem:
grub-0.97-68 can't be rebuilt in RHEL 6.

A dependency is missing on glibc-static.i686, even for the x86_64 package. The actual missing requirement is on /usr/lib/libc.a

Unfortunately, that package doesn't seem to be included in the RHEL 6 x86_64 channels. (I only checked server and server-optional)

# yum repolist
Loaded plugins: changelog, rhnplugin
repo id                                                                  repo name                                                                                           status
epel                                                                     Extra Packages for Enterprise Linux 6 - x86_64                                                      5,877
rhel-x86_64-server-6                                                     Red Hat Enterprise Linux Server (v. 6 for 64-bit x86_64)                                            3,984
rhel-x86_64-server-optional-6                                            RHEL Server Optional (v. 6 64-bit x86_64)                                                           3,004

# yum whatprovides /usr/lib/libc.a
Loaded plugins: changelog, rhnplugin
No Matches found

As such, fixing the problem is two fold:
1. adding the missing Requires in grub.spec
2. including glibc-static.i686 in the x86_64 repository

Trivial patch for 1 is attached. As for 2, that's not something I can provide a patch for... :)

Note that for the patch, I added the BR on the file instead of the package. For some reason, installing glibc-static.{x86_64,i686} works with yum, but it doesn't when trying to build in mock with an EL6 chroot.

Comment 1 Mathieu Bridon 2011-05-03 09:00:47 UTC
Created attachment 496457 [details]
Add a missing BR for grub to build on x86_64

Comment 3 Mathieu Bridon 2011-05-03 11:11:16 UTC
So, out of curiosity, I tried rebuilding the Fedora 16 package in mock, and I get the exact same error.

Adding the missing BR allows me to build the package again.

However, there must be something more, as the package builds fine on Koji (or else, we would all have problems booting our Fedora machines :)

The Koji logs show that there is one package that gets installed by yum-builddep: glibc32. This is the package that provides /usr/lib/libc.a for the build system, and it's the one that makes the whole build succeed on Koji.

Now, where is this package coming from? It doesn't appear as a BR in grub.spec, so it must be something that gets pulled by Koji. But how?

After more investigation (and some help from #fedora-devel), it appears that Koji blocks all 32 bits packages when building a 64 bits one, so glibc-devel.i686 (which provides another BR, /usr/lib/crt1.o) is not available for the chroot.

Enters the glibc32.x86_64 package which provides both /usr/lib/{crt1.o,libc.a}.

I guess grub is just not meant to be built in mock outside of Koji, so this is not a bug after all.

Sorry for the spam.

(I can't seem to close the bug myself as NOTABUG, so not only did I spam developers, I'm also leaving one more open bug on their plate...)

Comment 4 RHEL Program Management 2011-05-04 06:01:15 UTC
Since RHEL 6.1 External Beta has begun, and this bug remains
unresolved, it has been rejected as it is not proposed as
exception or blocker.

Red Hat invites you to ask your support representative to
propose this request, if appropriate and relevant, in the
next release of Red Hat Enterprise Linux.

Comment 5 David Cantrell 2011-06-13 22:04:02 UTC
We're not going to change this in RHEL, but feel free to submit a patch for it in Fedora.

Comment 6 RHEL Program Management 2011-06-13 22:04:56 UTC
Development Management has reviewed and declined this request.  You may appeal
this decision by reopening this request.


Note You need to log in before you can comment on or make changes to this bug.