[fedora-arm] Package Dependency Tree from SRPMs?

Jon Masters jonathan at jonmasters.org
Tue Oct 11 15:28:34 UTC 2011


On Tue, 2011-10-11 at 13:56 +0100, Steve McIntyre wrote:
> On Mon, Oct 10, 2011 at 02:10:28PM -0400, Jon Masters wrote:
> >On Mon, 2011-10-10 at 10:22 +0100, Gordan Bobic wrote:
> >
> >>  Is there a script already available that generates a package dependency 
> >>  tree from src.rpms? At the moment, rebuilding a distro is quite 
> >>  inefficient because for each mock run the setup takes a non-trivial 
> >>  amount of time. What I'm thinking about doing is writing a script that 
> >>  generates a dependency tree which can then be used, for example, to 
> >>  generate a Makefile. That would allow for building all the packages in 
> >>  the correct order with no wasted time on multiple passes in which most 
> >>  package builds fail due to dependencies.
> >> 
> >>  Anyway, my question is, before I set out to write it, is there such a 
> >>  script already?
> >
> >There are several attempts at this, including something DJ put together
> >during the F15 bootstrap, and e.g. rpmgraph but there isn't a real
> >solution to the problem of the kind that we will need longer term.
> >
> >The real solution to this problem necessitates changing packages to add
> >explicit bootstrap dependencies to them. That is the only way to do this
> >properly. Otherwise you have to do what we did in the early stages to
> >get going. A real fix (that I have raised initially and will be more
> >vocal about - thanks for the indirect ping) is to regularly
> >automatically bootstrap Fedora using automation, and bootstrap deps.
> >Then we should notify package maintainers who break the ability to
> >bootstrap in adding hundreds of deps to the minimal set (I'm looking at
> >systemd as an example that would have perhaps caused such a reaction).
> 
> As Jon know, this is very like the process we're working on in Debian
> as well.

Ok. You get to hear this just once ;) I'm sufficiently envious of the
approach Debian is using for bootstrap that I want it fixed in Fedora.
There, now let us never speak of that again :P

> Our normal philosophy of building most packages with all
> features enabled is useful, but can make bootstrapping difficult.
> There are some common bootstrapping loops where it's impossible to
> simply find the correct order for package builds, so the best answer
> is to build cut-down bootstrap versions of packages and use them as a
> base for satisfying build dependencies until everything is fulfilled
> properly. See
> 
>   http://wiki.debian.org/DebianBootstrap
> 
> for more details.

Right. This is the correct approach we should be adopting generally, and
not just for ARM. I would like it if after we some world domination
sorted we could clean up by automating bootstrap builds on a few
builders that can sit and make sure bootstrapping always works.

Jon.




More information about the arm mailing list