Cflow is the program that takes C files and prints out the call graph.

Some useful options:

One way to get a reasonable graph is:

cflow -r main -d 4 $(ALL_INCLUDES) $(LTLIBRARY_SOURCES) > cflow.out
cflow2dot < cflow.out >
dot -Grankdir=LR -Tps < >

This is in Makefile and using the includes and stuff helps with getting everything we need as cflow is just using CPP and friends to do its work. It's really a compiler that doesn't produce objects as an output.

Platforms: All Unix

Location: cflow: Various, often part of OS

dot: Part of Graphviz