Tennix 1.3.4
[tennix.git] / doc / callgraph.txt
blob1cbbc5068a1c5532ce3ffaab8e05203e7cbf024f
1 Generating call graphs from Tennix source code
2 ==============================================
4 A tutorial motivated by the optimization work done in the Effiziente
5 Programme course at TU Vienna.
7 http://www.complang.tuwien.ac.at/anton/lvas/effiziente-programme.html
10 PREPARATIONS
11 ------------
13 1. Download codeviz from http://www.csn.ul.ie/~mel/projects/codeviz/
14 2. Unpack (we use: ~/pkg/codeviz/)
15 3. Edit scripts "genfull" and "gengraph":
16    After this line:
17       use lib "$Bin/../lib/";
18    add this one:
19       use lib "$ENV{HOME}/pkg/codeviz/lib/";
20 4. Install required packages (on Debian/Ubuntu):
21       sudo aptitude install graphviz ncc
22 5. Make sure "genfull" and "gengraph" is in your $PATH
25 Build with nccgen (see "man nccgen")
26 ------------------------------------
28 make clean
29 make MKCALLGRAPH=1
32 BUILD THE full.graph FILE
33 -------------------------
35 genfull -g cncc
38 GENERATING SPECIFIC CALL GRAPHS
39 -------------------------------
41 gengraph -f font_draw_string_alpha -d 10
42 evince font_draw_string_alpha.ps
43 gengraph -f font_get_metrics -r
44 evince font_get_metrics.ps
46 See "gengraph --help" for more options
49 HTML CALLGRAPHS
50 ---------------
52 sudo aptitude install source-highlight
53 source-highlight --line-number-ref= *.c *.h
54 gengraph -f font_draw_string_alpha -r --output-type=html --shighlight --base-url %f.html#%l
55 firefox font_draw_string_alpha.html
58 -- Thomas Perl <thpinfo.com/about>
59    Sat, 31 Jan 2009 13:44:17 +0100