Mercurial > docs > master
view scripts/makedeps2dot @ 236:49d3aa0d128a default tip
style: Removed unused macro code.
author | markus schnalke <meillo@marmaro.de> |
---|---|
date | Mon, 16 Jul 2012 11:31:25 +0200 |
parents | eba3744fb238 |
children |
line wrap: on
line source
#!/usr/bin/env awk # # List dependencies in Makefile input, # ignore a set of default targets and 1:1 dependencies # and generate dot graph output BEGIN { FS = " *: *" ignore["all"] = 1 ignore["configure"] = 1 ignore["Makefile"] = 1 ignore["install"] = 1 ignore["uninstall"] = 1 ignore["clean"] = 1 ignore["distclean"] = 1 ignore["realclean"] = 1 ignore["mostlyclean"] = 1 ignore["superclean"] = 1 ignore["mmhdist"] = 1 ignore["lint"] = 1 print "digraph foo {" } /^\t/ { next } $1 ~ /^[a-zA-Z_]+$/ { if ($1 in ignore) { next } split($2, dep, /[ \t]+/) for (i in dep) { if (dep[i] ~ /^\$/) { continue } if (dep[i] ~ "^"$1"\\.(o|sh)$") { continue } sub(/\.o$/, ".c", dep[i]); print "\t\"" dep[i] "\" [shape=box];" print "\t\"" dep[i] "\" -> \"" $1 "\";" } print "" } END { print "}" }