On 2013-08-08, Paul Howarth <paul@xxxxxxxxxxxx> wrote: > On 08/08/13 10:01, Phil Knirsch wrote: >> >> Just like Seth's script it has a few obviously problems as for really >> correct build ordering you need to flip-flop between srpms/specfiles and >> binary rpms, but that will need a bit of a different approach. As it >> stands right now some of the dependencies it can't detect and resolve >> are build time generated ones, which might a showstopper for some uses >> of it. >> >> I've tested the version i have here with several complete past Fedora >> trees, for texlive and KDE rebuilds and updates and for all the cases >> the output look pretty sane. >> >> Hope this helps, > > We already know where it's beneficial to break build dependency cycles > and have built that into the spec files, triggered by the > %{perl_bootstrap} macro being set (which it is in the current Rawhide > perl). So a build ordering script for perl bootstrapping should take > that into account. > And therefore my slow script considers SRPM as well as binary packages distinctively. Therefore it clones git repostories, creates SRPMs in mock environment (because data from koji will differ from to-rebuild packages due to the perl_bootstrap macro), retrieves just built binary packages, extracts the requires/provides and solves them on its own. Of course it submits whole groups of packages to rebuild and it waits for build root rotation. It does prety much everything what is needed. (Curriously, this year I could not build in 16 threads as last year, becuse dist-git starts refusing on 10 threads. Also after ausil started his mass rebuild, my koji client started getting host unreachable errors.) However the really slow part is the dependency solver. I had no time to improve it before this rebuild. I will do before next time. But now I'm not going to change it becuse it's to complicated. Neverthless we are looming to the point where no new packages will be possible to rebuild due to unsatisified depenencies. We are now at 95 % done. The rest will need fixing or dropping <https://fedoraproject.org/wiki/Changes/perl5.18#Items_to_be_done>. Once we get there, I will publish list of failed and unfinished packages together with dependency graph. I have already done 169 changes in the F20 packages to achieve those 95 % and I'm quite tired and sick of all of that. (Mainly because maintainers do not upgrade their packages or because they do not declare all needed dependencies). (I'm thinking of running dummy rebuilds during a year regularly, to find all these buggy packages before next Perl rebuild.) -- Petr -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct