File: build-system.dot

package info (click to toggle)
gimp-help 3.0.0-5
  • links: PTS, VCS
  • area: main
  • in suites: forky
  • size: 289,524 kB
  • sloc: xml: 115,826; sh: 3,852; python: 1,004; makefile: 585; perl: 134
file content (143 lines) | stat: -rw-r--r-- 4,090 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
/*
    gimp-help build system

    Shapes:
        - circle    main targets
        - ellipse   lang-dependent or auxiliary targets
        - box       file or directory targets
        - polygon   file list
    Colors:
        - magenta   PO & POT
        - green     XML
        - blue      HTML
        - grey      minor targets etc.
        - red       TODO
*/

digraph gimp_build_system {
    node[shape=box];

    subgraph cluster_legend {
        color=lightgrey;
        label="Legend";
        labeljust=l;

        target[color=grey shape=circle];
        prerequisite[color=grey shape=box];

        target -> prerequisite[color=grey];
    }

    all[label="all" color=magenta shape=circle];

    subgraph main_targets {
        rank=same;
        node[shape=circle];

        html[color=blue shape=circle];
        index[color=grey shape=circle];
        xml[color=green shape=circle];
        checks[color=yellow shape=circle]

        pot[color=magenta shape=circle];
        po[color=magenta shape=circle];
    }

    node[shape=box];

    all -> validate[label="TODO?" color=red style=dotted weight=1];
    all -> html[weight=5];
    all -> authors[weight=3];

    subgraph cluster_po {
        label="PO";
        labeljust=l;
        color=magenta;

        pot_files[label="POT_FILES\n----\npot/LANG/.../*.pot"
                  color=magenta shape=polygon side=4 skew=.2];
        po_files[label="LANG_PO_FILES\n----\npo/LANG/.../*.po"
                 color=magenta shape=polygon side=4 skew=.2];

        node[shape=ellipse];
        po_lang[label="po-LANG" color=magenta shape=ellipse];
        po_lang -> po_files -> pot_files;
    } /* subgraph cluster_po */

    src_files[label="SRC_FILES\n----\nsrc/.../*.xml"
              color=cyan shape=polygon side=4 skew=.2];

    pot_files -> src_files;
    src_files -> authors_src_file[color=grey label="inclusive"];

    po -> po_lang;
    pot -> pot_files;

    subgraph cluster_authors {
        color="grey";
        labeljust=l;

        authors[label="AUTHORS" color=grey shape=box]
        authors_data_file[label="stylesheets/\nauthors.xml"
                          color=grey shape=box]
        authors_src_file[label="src/preface/authors.xml" color=grey shape=box];
        authors -> authors_data_file[color=grey]
        authors_src_file -> authors_data_file[color=grey];
    } /* subgraph cluster_authors */


    xml[label="xml" shape=circle];

    subgraph cluster_xml {
        color="green";
        label="XML";
        labeljust=l;

        xml_lang[label="xml-LANG" color=green shape=ellipse];
        xml_dir[label="xml/LANG" shape=box];
        xml_files[label="LANG_XML_FILES\n----\nxml/LANG/.../*.xml"
                  shape=polygon side=4 skew=.2 color=green];
        xml_lang -> xml_dir -> xml_files;
    } /* subgraph cluster_xml */

    xml -> xml_lang[weight=4];
    xml_lang  -> po_lang;
    xml_files -> src_files[color=grey label="copy if\nLANG = en"];
    xml_files -> po_files[color=grey label="via\ninclude\n.deps.mk"];

    index -> index_lang;

    subgraph cluster_html {
        color="blue";
        label="HTML";
        labeljust=l;

        html_lang[label="html-LANG" color=blue shape=ellipse]
        html_main[label="html/LANG/index.html" shape=box]
        index_lang[label="index-LANG" color=grey shape=ellipse]
        xrefs_lang[label="html/LANG/gimp-xrefs.html" shape=box]
        help_lang[label="html/LANG/gimp-help.xml" shape=box]

        html_lang -> help_lang[style=dashed];
        html_lang -> html_main;
        html_main -> xml_dir;
        xrefs_lang -> html_main;

        index_lang -> help_lang -> xrefs_lang

    } /* subgraph cluster_html */

    html -> html_lang;
    html_lang  -> xml_lang;

    /* TODO */

    check1[label="check [...]" color=grey shape=ellipse]
    validate[color=grey shape=ellipse]
    xmllint[color=grey shape=ellipse]

    checks -> validate[color=grey style=dashed label=" ?"]
    checks -> check1[color=grey label=" TODO"]
    validate -> xmllint[color=red style=dashed label=" TODO"]

} /* digraph gimp_build_system */