On Tuesday 17 December 2013 18:16:35 Martin Jansa wrote: > On Tue, Dec 17, 2013 at 02:56:21PM +0000, Paul Eggleton wrote: > > A simple script I put together for getting the paths from one node to > > another in a dot graph. This is useful for example in working out why > > a particular recipe is getting built in conjunction with dot graph files > > produced by bitbake -g. > > > > For example: > > > > $ bitbake -g core-image-minimal > > ... > > $ graph-tool find-paths pn-depends.dot core-image-minimal sqlite3-native > > core-image-minimal -> packagegroup-core-boot -> udev -> libxslt-native -> > > libxml2-native -> python-native -> sqlite3-native > Nice addition, thanks. > > Can it show multiple paths? Maybe it would be better example to show it > on multiple-path case.
It can, yes: $ graph-tool find-paths pn-depends.dot core-image-minimal util-linux core-image-minimal -> packagegroup-core-boot -> udev -> glib-2.0 -> python-dbus -> dbus-glib -> dbus -> libsm -> e2fsprogs -> util-linux core-image-minimal -> packagegroup-core-boot -> udev -> glib-2.0 -> python-dbus -> dbus -> libsm -> e2fsprogs -> util-linux core-image-minimal -> packagegroup-core-boot -> udev -> util-linux I've updated the branch to use this example. > As future improvement it would be nice to be able to filter some paths, > e.g. sometimes I'm interested in runtime-dependencies, sometimes finding > path through runtime isn't enough (e.g. when my recipe has runtime > dependency of "foo" but actually needs "foo" at build time). Well, this script isn't very intelligent - it only operates on single graphs, and isn't a complete tool, hence why I added it to contrib. There's certainly scope for more work in this area, but I suspect it would be in a different tool which is closer to the build system itself (such as Toaster). Cheers, Paul -- Paul Eggleton Intel Open Source Technology Centre _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core