diff options
author | Leon Woestenberg <leon@sidebranch.com> | 2009-03-29 03:26:07 +0200 |
---|---|---|
committer | Leon Woestenberg <leon@sidebranch.com> | 2009-03-29 13:42:04 +0200 |
commit | 69d1bc9c60d59862106c69f6caaa0059e049b32d (patch) | |
tree | 379659d2ef4e915e885297d547882d686b850a4b | |
parent | 12ae47696185565a627ffa6eeccc51e45a5b9ea3 (diff) |
contrib/dependsgraph: Shell script showing simple depends graph.
-rwxr-xr-x | contrib/dependsgraph/dependsgraph.sh | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/contrib/dependsgraph/dependsgraph.sh b/contrib/dependsgraph/dependsgraph.sh new file mode 100755 index 0000000000..b5526f9d39 --- /dev/null +++ b/contrib/dependsgraph/dependsgraph.sh @@ -0,0 +1,51 @@ +#!/bin/bash +# +# This script attempts to repair the use of creating +# dependency graphs of packages. +# +# This got unusuable, (and broken beyond repair?) with +# enhancements to bitbake in its dependency tracking. +# +# This script is a hack. It works for me. +# +# Apply the patch from this bug report to bitbake +# (if not yet upstream), tested against r1152 of +# svn://svn.berlios.de/bitbake/branches/bitbake-1.8 +# +# http://bugs.openembedded.net/show_bug.cgi?id=5002 +# + +IGNORE_DEPENDS=" \ +-native -dbg -dev -doc -info -locale -cross -initial -r[0-9]* \ +-intermediate -linux-gcc -linux-binutils -linux-libc-for-gcc linux-libc-headers \ +" + +IGNORE_DASHED="dashed]" + +if [ ! -f depends.dot ]; then + echo "Cannot find ./depends.dot" +# exit +fi + +which dot +if [ ! $? -eq 0 ]; then + echo "Install graphviz on your host." + exit +fi + +echo -n >/tmp/delete.sed +for IGNORE in $IGNORE_DEPENDS $IGNORE_DASHED ; +do + echo /$IGNORE/d >>/tmp/delete.sed +done + +#cat /tmp/delete.sed + +# first, delete a lot of (noisy) nodes and edges. +sed -f /tmp/delete.sed depends.dot >reduced.dot + +# create a PNG +neato -v -Tpng -o depends.png reduced.dot + +# show it +gthumb depends.png |