README.rst
1CastXML
2*******
3
4Introduction
5============
6
7CastXML is a C-family abstract syntax tree XML output tool.
8
9This project is maintained by `Kitware`_ in support of `ITK`_,
10the Insight Segmentation and Registration Toolkit.
11
12.. _`Kitware`: http://www.kitware.com
13.. _`ITK`: http://www.itk.org
14
15Manual
16======
17
18See the `castxml(1)`_ manual page for instructions to run the tool.
19
20.. _`castxml(1)`: doc/manual/castxml.1.rst
21
22License
23=======
24
25CastXML is licensed under the `Apache License, Version 2.0`_.
26See the `<LICENSE>`__ and `<NOTICE>`__ files for details.
27
28.. _`Apache License, Version 2.0`: http://www.apache.org/licenses/LICENSE-2.0
29
30Community
31=========
32
33Subscribe and post to the `CastXML Mailing List`_ for discussion of CastXML.
34
35.. _`CastXML Mailing List`: http://public.kitware.com/mailman/listinfo/castxml
36
37Build
38=====
39
40To build CastXML from source, first obtain the prerequisites:
41
42* A C++ compiler supporting the ``c++11`` standard language level.
43
44* `CMake`_ cross-platform build system generator.
45
46* `LLVM/Clang`_ compiler SDK install tree built using the C++ compiler.
47 This version of CastXML has been tested with LLVM/Clang
48
49 - SVN revision ``346978`` (trunk)
50 - Release ``7.0``
51 - Release ``6.0``
52 - Release ``5.0``
53 - Release ``4.0``
54 - Release ``3.9``
55 - Release ``3.8``
56 - Release ``3.7``
57 - Release ``3.6``
58
59* Optionally, the `Sphinx`_ documentation generator to build documentation.
60
61Run CMake on the CastXML source tree to generate a build tree using
62a C++ compiler compatible with that used to build the LLVM/Clang SDK.
63CMake options include:
64
65``Clang_DIR``
66 Location of the LLVM/Clang SDK. Set to ``<prefix>/lib/cmake/clang``,
67 where ``<prefix>`` is the top of the LLVM/Clang SDK install tree.
68 Alternatively, ``LLVM_DIR`` may be set to ``<prefix>/lib/cmake/llvm``.
69
70``SPHINX_EXECUTABLE``
71 Location of the ``sphinx-build`` executable.
72 Required only if building documentation.
73
74``SPHINX_HTML``
75 Build documentation in ``html`` format.
76
77``SPHINX_MAN``
78 Build documentation in ``man`` format.
79
80Run the corresponding native build tool (e.g. ``make``) in the CastXML
81build tree, and optionally build the ``install`` target. The ``castxml``
82command-line tool may be used either from the build tree or the install tree.
83The install tree is relocatable.
84
85.. _`CMake`: http://www.cmake.org/
86.. _`LLVM/Clang`: http://clang.llvm.org/
87.. _`Sphinx`: http://sphinx-doc.org/
88