- List modules defined within a directory
- Generate a graphviz dot based diagram file to show dependency relationship
libprotobuf-java-2.3.0-micro
libprotobuf-cpp-2.3.0-lite
host-libprotobuf-java-2.3.0-micro
libprotobuf-cpp-2.3.0-full
host-libprotobuf-java-2.3.0-lite
aprotoc
libprotobuf-java-2.3.0-lite
libprotobuf-cpp-2.3.0-lite
host-libprotobuf-java-2.3.0-micro
libprotobuf-cpp-2.3.0-full
host-libprotobuf-java-2.3.0-lite
aprotoc
libprotobuf-java-2.3.0-lite
To generate a dependency diagram for a particular module, we can use this command: "adepends.py -o output.dot -m module_name". For example, if we're interested in the dependency diagram for charger module, we can use this command: "adepends.py -o output.dot -m charger". After the command finished, we have output.dot in current directory. Then we run "dot -Tpng -ooutput.png output.dot" to generate a png file for the diagram. And the diagram is shown below:
Each ellipse represents a module, the top line shows the module name, and the bottom line shows the directory that the module is defined. The arrowed edge represents the dependency relationship between two modules.
3 comments:
That's very cool utility, thanks! I actually doing a bit of hacking on it, will submit if anything useful comes out.
Ok, I git-svn'ed your repo as https://github.com/pfalcon/android-depends , changes I did so far is allow multiple --module's, and add option to ignore specific modules and/or their dependencies. Commit log (master vs upstream branch) should show my changes with info in commit messages.
Ah, and if you considered migrating your repo to git (and splitting so community could easier reuse them), then +1 ;-)
Thanks.
I'm glad you find this idea helpful and very pleased to see your improvements made on it.
Post a Comment