On Mon, 2011-10-10 at 10:22 +0100, Gordan Bobic wrote: > Hi, > > 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? > > Gordan Hi Gordan, You might want to take a look at Styrene, which is in the ARM git repo. It's a tool that lets you load up a database with deps (typically from another arch, such as one of the primary archs; this is done from a binary repo instead of a source repo because a lot of deps aren't expressed in the srpms), and then queues builds on a koji system based on that dependency information. Rather than solve the global dependency graph, it uses a pass-based approach -- it queues builds for all packages which have their build dependencies currently satisfied, and then collects the results from that pass, marking which packages built successfully. The process is then repeated until no more packages can be built. This allows the next pass to be queued even if some packages didn't build in the previous pass (which is a very common scenario). Besides actually queuing builds, it can simulate/model build passes, which will tell you how much of the target package set can be built starting from the current base. Styrene was written over the summer by Jon Chiappetta (fossjon on IRC) and was used to drive the F13 updates build. -Chris _______________________________________________ arm mailing list arm@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/arm