Fedora 11 Mass Rebuild
rc040203 at freenet.de
Wed Feb 18 07:35:38 UTC 2009
Jesse Keating wrote:
> On Wed, 2009-02-18 at 04:48 +0100, Ralf Corsepius wrote:
>> Well, there is one change in F11, which introduces a need for an least
>> partial ordered rebuild:
>> rpm has started to automatically add
>> Provides: pkgconfig(foo)
>> and to automatically add
>> Requires: pkgconfig(foo)
>> This requires an ordered rebuild in cases, when a package is part of a
>> chain of (devel) package deps.
> Hrm, I think this would only matter if the rebuilt package that picks up
> a Requires: pkgconfig(foo) made it into the repodata that was then used
> by further builds, but before the packages that have Provides:
> pkgconfig(foo) also made it into the repodata.
Agreed, however this already is the case.
When upgrading OSG in rawhide last weekend, I had encountered this issue.
When rebuilding a chain of package osgal, osgcal, poker3d, I had
intended to rebuild against the new OSG, had failed because
pkgconfig(cal3d) had not been provided.
I.e. I had to rebuild cal3d to let cal3d-devel provide it, before this
package chain could be rebuilt.
> If we delayed tagging of
> all of these builds until the very end, we could avoid the breakage.
> Not sure this is completely desired though, but given the package set
> where this would hit, I can picture lots of loops that we wouldn't be
> able to fully order out.
AFAICT, the impact of this change can be reduced, by checking which
packages in current rawhide contain *.pc's but do not Provide nor
Require pkgconfig(foo) and to rebuild them (in manually presorted order)
in advance to the mass rebuild.
This all will likely get stuck if one of these packages doesn't survive
GCC44 (Which is what I expect to happen).
> Starting to think that delaying the tag events is what we want here, get
> the whole mess into the repodata at once rather than piecemeal as the
> builds progress.
More information about the fedora-devel-list