source: general/prog/doxygen.xml@ 3354477

10.0 10.1 11.0 ken/refactor-virt lazarus qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since 3354477 was 3354477, checked in by Bruce Dubbs <bdubbs@…>, 18 months ago

Update to xorgproto-2020.1.
Update to doxygen-1.8.18.
Update to Jinja2-2.11.2 (Python Module).
Update to glm-0.9.9.8.
Update to libsass-3.6.3.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@22996 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 9.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY doxygen-download-http "http://doxygen.nl/files/doxygen-&doxygen-version;.src.tar.gz">
8 <!ENTITY doxygen-download-ftp " ">
9 <!ENTITY doxygen-md5sum "eda8e82fcc58970894029b0399776cb5">
10 <!ENTITY doxygen-size "4.9 MB">
11 <!ENTITY doxygen-buildsize "153 MB (with tests)">
12 <!ENTITY doxygen-time "0.8 SBU (using parallelism=4; with tests)">
13]>
14
15<sect1 id="doxygen" xreflabel="Doxygen-&doxygen-version;">
16 <?dbhtml filename="doxygen.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Doxygen-&doxygen-version;</title>
24
25 <indexterm zone="doxygen">
26 <primary sortas="a-Doxygen">Doxygen</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Doxygen</title>
31
32 <para>
33 The <application>Doxygen</application> package contains a documentation
34 system for C++, C, Java, Objective-C, Corba IDL and to some extent PHP,
35 C# and D. It is useful for generating HTML documentation and/or an
36 off-line reference manual from a set of documented source files. There
37 is also support for generating output in RTF, PostScript, hyperlinked
38 PDF, compressed HTML, and Unix man pages. The documentation is extracted
39 directly from the sources, which makes it much easier to keep the
40 documentation consistent with the source code.
41 </para>
42
43 <para>
44 You can also configure <application>Doxygen</application> to extract
45 the code structure from undocumented source files. This is very useful
46 to quickly find your way in large source distributions. Used along with
47 <application>Graphviz</application>, you can also visualize the relations
48 between the various elements by means of include dependency graphs,
49 inheritance diagrams, and collaboration diagrams, which are all generated
50 automatically.
51 </para>
52
53 &lfs91_checked;
54
55 <bridgehead renderas="sect3">Package Information</bridgehead>
56 <itemizedlist spacing="compact">
57 <listitem>
58 <para>
59 Download (HTTP): <ulink url="&doxygen-download-http;"/>
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Download (FTP): <ulink url="&doxygen-download-ftp;"/>
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Download MD5 sum: &doxygen-md5sum;
70 </para>
71 </listitem>
72 <listitem>
73 <para>
74 Download size: &doxygen-size;
75 </para>
76 </listitem>
77 <listitem>
78 <para>
79 Estimated disk space required: &doxygen-buildsize;
80 </para>
81 </listitem>
82 <listitem>
83 <para>
84 Estimated build time: &doxygen-time;
85 </para>
86 </listitem>
87 </itemizedlist>
88<!--
89 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
90 <itemizedlist spacing='compact'>
91 <listitem>
92 <para>
93 Required patch: <ulink
94 url="&patch-root;/doxygen-&doxygen-version;-flex_2_6_0_fix-1.patch"/>
95 </para>
96 </listitem>
97 </itemizedlist>-->
98
99 <bridgehead renderas="sect3">Doxygen Dependencies</bridgehead>
100
101 <bridgehead renderas="sect4">Required</bridgehead>
102 <para role="required">
103 <xref linkend="cmake"/> and
104 <xref linkend="git"/>
105 </para>
106
107 <bridgehead renderas="sect4">Optional</bridgehead>
108 <para role="optional">
109 <xref linkend="graphviz"/>,
110 <xref linkend="gs"/>,
111 <xref linkend="libxml2"/> (required for the tests),
112 <xref linkend="llvm"/> (with clang),
113 <!-- Can someone check this? With LLVM7, it fails to build. -->
114 <xref linkend="python2"/>,
115 <xref linkend="qt5"/> (for doxywizard),
116 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>), and
117 <xref linkend="xapian"/> (for doxyindexer)
118 </para>
119
120 <para condition="html" role="usernotes">User Notes:
121 <ulink url="&blfs-wiki;/doxygen"/>
122 </para>
123 </sect2>
124
125 <sect2 role="installation">
126 <title>Installation of Doxygen</title>
127
128 <para>
129 Install <application>Doxygen</application> by running the following
130 commands:
131 </para>
132
133<screen><userinput>mkdir -v build &amp;&amp;
134cd build &amp;&amp;
135
136cmake -G "Unix Makefiles" \
137 -DCMAKE_BUILD_TYPE=Release \
138 -DCMAKE_INSTALL_PREFIX=/usr \
139 -Wno-dev .. &amp;&amp;
140
141make</userinput></screen>
142
143 <para>
144 To test the results, issue: <command>make tests</command>. One test,
145 012_cite.dox, is known to fail.
146 </para>
147
148 <para>
149 If you wish to generate the package documentation, you must have
150 <application>Python</application>, <application>TeX Live</application>
151 (for HTML docs) and <application>Ghostscript</application> (for PDF docs)
152 installed, then issue the following command:
153 </para>
154
155<screen remap="doc"><userinput>cmake -DDOC_INSTALL_DIR=share/doc/doxygen-&doxygen-version; -Dbuild_doc=ON .. &amp;&amp;
156
157make docs</userinput></screen>
158
159 <para>
160 Now, as the <systemitem class="username">root</systemitem> user:
161 </para>
162
163<screen role="root"><userinput>make install &amp;&amp;
164install -vm644 ../doc/*.1 /usr/share/man/man1</userinput></screen>
165
166 <para>
167 If you have generated the package documentation, then the man pages are
168 automatically installed, and you do not need to run the last
169 <command>install ...</command> command.
170 </para>
171
172 </sect2>
173
174 <sect2 role="commands">
175 <title>Command Explanations</title>
176
177 <para>
178 <option>-Dbuild_wizard=ON</option>: Use this switch if
179 <application>Qt5</application> is installed and you wish to build the GUI
180 front-end.
181 </para>
182
183 <para>
184 <option>-Dbuild_search=ON</option>: Use this switch if
185 <application>xapian</application> is installed and you wish to build
186 external search tools (<command>doxysearch.cgi</command> and
187 <command>doxyindexer)</command>.
188 </para>
189<!--
190 <para>
191 <option>-Dforce_qt4=ON</option>: Use this switch to build
192 <command>doxywizard</command> with Qt4 even if Qt5 is installed.
193 </para>-->
194
195 <para>
196 <option>-Duse_libclang=ON</option>: Use this switch if
197 <application>llvm</application> with <application>clang</application> are
198 installed, to add support for libclang parsing.
199 </para>
200
201 </sect2>
202
203 <sect2 role="configuration">
204 <title>Configuring Doxygen</title>
205
206 <para>
207 There is no real configuration necessary for the
208 <application>Doxygen</application> package although three additional
209 packages are required if you wish to use extended capabilities. If you
210 need to use the language translation features, you must have <xref
211 linkend="python2"/> installed. If you require formulas to create PDF
212 documentation, then you must have <xref linkend="texlive"/> installed.
213 If you require formulas to convert PostScript files to bitmaps, then
214 you must have <xref linkend="gs"/> installed.
215 </para>
216
217 </sect2>
218
219 <sect2 role="content">
220 <title>Contents</title>
221
222 <segmentedlist>
223 <segtitle>Installed Programs</segtitle>
224 <segtitle>Installed Libraries</segtitle>
225 <segtitle>Installed Directory</segtitle>
226
227 <seglistitem>
228 <seg>
229 doxygen and optionally,
230 doxywizard, doxyindexer and doxysearch.cgi
231 </seg>
232 <seg>
233 None
234 </seg>
235 <seg>
236 /usr/share/doc/doxygen-&doxygen-version;
237 </seg>
238 </seglistitem>
239 </segmentedlist>
240
241 <variablelist>
242 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
243 <?dbfo list-presentation="list"?>
244 <?dbhtml list-presentation="table"?>
245
246 <varlistentry id="doxygen-prog">
247 <term><command>doxygen</command></term>
248 <listitem>
249 <para>
250 is a command-line based utility used to generate template
251 configuration files and then generate documentation from these
252 templates. Use <command>doxygen --help</command> for an
253 explanation of the command-line parameters.
254 </para>
255 <indexterm zone="doxygen doxygen-prog">
256 <primary sortas="b-doxygen">doxygen</primary>
257 </indexterm>
258 </listitem>
259 </varlistentry>
260
261 <varlistentry id="doxywizard">
262 <term><command>doxywizard</command></term>
263 <listitem>
264 <para>
265 is a GUI front-end for configuring and
266 running <command>doxygen</command>.
267 </para>
268 <indexterm zone="doxygen doxywizard">
269 <primary sortas="b-doxywizard">doxywizard</primary>
270 </indexterm>
271 </listitem>
272 </varlistentry>
273
274 <varlistentry id="doxyindexer">
275 <term><command>doxyindexer</command></term>
276 <listitem>
277 <para>
278 generates a search index called <filename>doxysearch.db</filename>
279 from one or more search data files produced by
280 <command>doxygen</command>. See, e.g. <ulink
281 url="http://www.stack.nl/~dimitri/doxygen/manual/extsearch.html"/>.
282 </para>
283 <indexterm zone="doxygen doxyindexer">
284 <primary sortas="b-doxyindexer">doxyindexer</primary>
285 </indexterm>
286 </listitem>
287 </varlistentry>
288
289 <varlistentry id="doxysearch.cgi">
290 <term><command>doxysearch.cgi</command></term>
291 <listitem>
292 <para>
293 is a CGI program to search the data indexed by
294 <command>doxyindexer</command>.
295 </para>
296 <indexterm zone="doxygen doxysearch.cgi">
297 <primary sortas="b-doxysearch.cgi">doxysearch.cgi</primary>
298 </indexterm>
299 </listitem>
300 </varlistentry>
301
302 </variablelist>
303
304 </sect2>
305
306</sect1>
Note: See TracBrowser for help on using the repository browser.