source: general/prog/doxygen.xml@ ccdcaa0f

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/soup3 xry111/xf86-video-removal
Last change on this file since ccdcaa0f was ccdcaa0f, checked in by Bruce Dubbs <bdubbs@…>, 20 months ago

Package updates.
Update to Log-Log4perl-1.56 (Perl Module).
Update to IO-Socket-SSL-2.075 (Perl Module).
Update to doxygen-1.9.5.
Update to libatomic_ops-7.6.14.

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