]> rtime.felk.cvut.cz Git - boost-statechart-viewer.git/blob - README
Update readme
[boost-statechart-viewer.git] / README
1 Boost Statechart Viewer
2 =======================
3
4 This clang plugin can visualize simple state machines implemented with
5 Boost Statechart library. It is able to visualize states (except for
6 orthogonal states) and transitions. The examples folder contains some
7 source code of state machines that can be visualized using this tool.
8
9 The input file for the tool is the source code of the state machine.
10 On the command line you need to specify all source locations for
11 finding header files in the same way as you do for normal compilation
12 (e.g. -I options for include files). As this is plugin for compiler
13 the program line works the same as normal compiler. The output format
14 is dot (part of Graphvis project) and the output file can be
15 transformed into the picture using classic dot commands.
16
17 Usage
18 -----
19
20 Example of command line invocation:
21
22     clang++ -Xclang -load -Xclang visualizer.so -Xclang -plugin -Xclang visualize-statechart -c file.cpp
23     dot -Tpng file.dot > file.png
24
25
26 Installation
27 ------------
28
29 For compiling and running the plugin you need to have LLVM and clang
30 installed. The program should work with packages distributed with
31 common Linux distributions or you can download LLVM and clang from
32 repositories and compile it.
33
34 On Debian/Ubuntu the dependencies can be installed with:
35
36     sudo apt-get install clang-5.0 libclang-5.0-dev build-essential graphviz
37
38 To compile the the plugin, simply run:
39
40     make
41
42 If you want to use a different clang/llvm version, run configure
43 before running make. For example:
44
45   LLVM_CONFIG=llvm-config-5.0 ./configure
46
47 This program was tested with LLVM/Clang 5.0.
48
49 Reporting bugs
50 --------------
51
52 Please report bugs to boost-statechart-viewer@rtime.felk.cvut.cz.