source: general/genlib/libical.xml

trunk
Last change on this file was 9a3d519c, checked in by Bruce Dubbs <bdubbs@…>, 7 weeks ago

Update to libical-3.0.18.

  • Property mode set to 100644
File size: 9.7 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
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 libical-download-http "https://github.com/libical/libical/releases/download/v&libical-version;/libical-&libical-version;.tar.gz">
8 <!ENTITY libical-download-ftp " ">
9 <!ENTITY libical-md5sum "cc790ea49701df0335d42b89d57c04bc">
10 <!ENTITY libical-size "888 KB">
11 <!ENTITY libical-buildsize "24 MB (with tests)">
12 <!ENTITY libical-time "0.1 SBU (iusing parallelism=4; with tests)">
13<!-- run at -j1 because it fails at -j4 -->
14]>
15
16<sect1 id="libical" xreflabel="libical-&libical-version;">
17 <?dbhtml filename="libical.html"?>
18
19
20 <title>libical-&libical-version;</title>
21
22 <indexterm zone="libical">
23 <primary sortas="a-libical">libical</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to libical</title>
28
29 <para>
30 The <application>libical</application> package contains an implementation
31 of the iCalendar protocols and data formats.
32 </para>
33
34 &lfs121_checked;
35
36 <bridgehead renderas="sect3">Package Information</bridgehead>
37
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>
41 Download (HTTP): <ulink url="&libical-download-http;"/>
42 </para>
43 </listitem>
44 <listitem>
45 <para>
46 Download (FTP): <ulink url="&libical-download-ftp;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download MD5 sum: &libical-md5sum;
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download size: &libical-size;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Estimated disk space required: &libical-buildsize;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated build time: &libical-time;
67 </para>
68 </listitem>
69 </itemizedlist>
70
71 <bridgehead renderas="sect3">libical Dependencies</bridgehead>
72
73 <bridgehead renderas="sect4">Required</bridgehead>
74 <para role="required">
75 <xref linkend="cmake"/>
76 </para>
77
78 <bridgehead renderas="sect4">Recommended</bridgehead>
79 <para role="recommended">
80 &gobject-introspection; and
81 <xref linkend="vala"/> (both required for GNOME)
82 </para>
83
84 <bridgehead renderas="sect4">Optional</bridgehead>
85 <para role="optional">
86 <xref linkend="doxygen"/> (for the API documentation),
87 <xref linkend="graphviz"/> (for the API documentation),
88 <xref linkend="gtk-doc"/> (for the API documentation),
89 <xref linkend="icu"/>,
90 <xref linkend="pygobject3"/> (for some tests), and
91 &berkeley-db;
92 </para>
93
94 </sect2>
95
96 <sect2 role="installation">
97 <title>Installation of libical</title>
98
99 <para>
100 Install <application>libical</application> by running the
101 following commands:
102 </para>
103
104 <!-- Needs confirmation, but I got a race condition at -j8,
105 -j1 allowed the build to pass. Pierre 2019-12-06
106 I always have it actually. Hence the entity.
107
108 Works at -j8 and -j4 for version 3.0.18
109 &parallel_issues;-->
110<screen><userinput>mkdir build &amp;&amp;
111cd build &amp;&amp;
112
113cmake -D CMAKE_INSTALL_PREFIX=/usr \
114 -D CMAKE_BUILD_TYPE=Release \
115 -D SHARED_ONLY=yes \
116 -D ICAL_BUILD_DOCS=false \
117 -D ICAL_BUILD_EXAMPLES=false \
118 -D GOBJECT_INTROSPECTION=true \
119 -D ICAL_GLIB_VAPI=true \
120 .. &amp;&amp;
121make</userinput></screen>
122
123 <para>
124 If you have <xref linkend="doxygen"/>, <xref linkend="graphviz"/>,
125 and <xref linkend="gtk-doc"/>
126 installed and wish to build the API documentation, you should
127 remove the <parameter>-DICAL_BUILD_DOCS=false</parameter> switch
128 and issue:
129 </para>
130
131<screen remap="doc"><userinput>make docs</userinput></screen>
132
133 <para>
134 To test the results, issue: <command>make test</command>.
135 <!-- One test, timezones, is known to fail on SysV systems. -->
136 <!-- On systemd, we symlink the current timezone to
137 /etc/localtime, which is what libical expects.
138 This is now done on SysV as well.-->
139 </para>
140
141 <para>
142 Now, as the <systemitem class="username">root</systemitem> user:
143 </para>
144
145<screen role="root"><userinput>make install</userinput></screen>
146
147 <para>
148 If you have built the API documentation, install by issuing, as
149 <systemitem class="username">root</systemitem> user:
150 </para>
151
152<screen role="root"
153 remap="doc"><userinput>install -vdm755 /usr/share/doc/libical-&libical-version;/html &amp;&amp;
154cp -vr apidocs/html/* /usr/share/doc/libical-&libical-version;/html</userinput></screen>
155
156 </sect2>
157
158 <sect2 role="commands">
159 <title>Command Explanations</title>
160
161 <para>
162 <parameter>-D CMAKE_BUILD_TYPE=Release</parameter>: This switch is used
163 to apply higher level of the compiler optimizations.
164 </para>
165
166 <para>
167 <parameter>-D SHARED_ONLY=yes</parameter>: This switch is used
168 in order to only build the shared libraries.
169 </para>
170
171 <para>
172 <parameter>-D ICAL_BUILD_DOCS=false</parameter>: This switch prevents
173 building the <application>GTK</application> documentation. Remove
174 if you want to build the documentation.
175 </para>
176
177 <para>
178 <parameter>-D ICAL_BUILD_EXAMPLES=false</parameter>: This switch prevents
179 building examples. Remove if you want to build them.
180 </para>
181
182 <para>
183 <parameter>-D GOBJECT_INTROSPECTION=true</parameter>: This switch is used
184 to generate GObject metadata bindings.
185 </para>
186
187 <para>
188 <parameter>-D ICAL_GLIB_VAPI=true</parameter>: This switch is used
189 in order to build bindings for <xref linkend="vala"/>.
190 </para>
191
192 <para>
193 <option>-D USE_BUILTIN_TZDATA=yes</option>: This switch is used
194 in order to build using your own timezone data.
195 </para>
196
197 <!-- No CMake equivalents
198 <para>
199 <parameter>- -enable-cxx</parameter>: This switch enables
200 <application>libical</application> C++ library.
201 </para>
202
203 <para>
204 <option>- -enable-python</option>: This switch enables
205 <application>libical</application> Python bindings.
206 </para> -->
207
208 </sect2>
209
210 <sect2 role="content">
211 <title>Contents</title>
212
213 <segmentedlist>
214 <segtitle>Installed Programs</segtitle>
215 <segtitle>Installed Libraries</segtitle>
216 <segtitle>Installed Directory</segtitle>
217
218 <seglistitem>
219 <seg>
220 None
221 </seg>
222 <seg>
223 libical_cxx.so,
224 libical.so,
225 libical-glib.so,
226 libicalss_cxx.so,
227 libicalss.so,
228 and libicalvcal.so
229 </seg>
230 <seg>
231 /usr/include/libical,
232 /usr/include/libical-glib,
233 /usr/lib/cmake/LibIcal,
234 /usr/libexec/libical,
235 /usr/share/gtk-doc/html/libical-glib (optional),
236 and /usr/share/doc/libical-&libical-version;/html
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="libical-lib">
247 <term><filename class="libraryfile">libical.so</filename></term>
248 <listitem>
249 <para>
250 contains the <application>libical</application> API
251 functions
252 </para>
253 <indexterm zone="libical libical-lib">
254 <primary sortas="c-libical">libical.so</primary>
255 </indexterm>
256 </listitem>
257 </varlistentry>
258
259 <varlistentry id="libical_cxx-lib">
260 <term><filename class="libraryfile">libical_cxx.so</filename></term>
261 <listitem>
262 <para>
263 contains the <application>libical</application> C++ bindings
264 </para>
265 <indexterm zone="libical libical_cxx-lib">
266 <primary sortas="c-libical_cxx">libical_cxx.so</primary>
267 </indexterm>
268 </listitem>
269 </varlistentry>
270
271 <varlistentry id="libical-glib">
272 <term><filename class="libraryfile">libical-glib.so</filename></term>
273 <listitem>
274 <para>
275 contains the <application>libical</application> glib bindings
276 </para>
277 <indexterm zone="libical libical-glib">
278 <primary sortas="c-libical-glib">libical-glib.so</primary>
279 </indexterm>
280 </listitem>
281 </varlistentry>
282
283 <varlistentry id="libicalss">
284 <term><filename class="libraryfile">libicalss.so</filename></term>
285 <listitem>
286 <para>
287 is a library that allows you to store iCal component data
288 to disk in a variety of ways
289 </para>
290 <indexterm zone="libical libicalss">
291 <primary sortas="c-libicalss">libicalss.so</primary>
292 </indexterm>
293 </listitem>
294 </varlistentry>
295
296 <varlistentry id="libicalss_cxx">
297 <term><filename class="libraryfile">libicalss_cxx.so</filename></term>
298 <listitem>
299 <para>
300 contains the <application>libicalss</application> C++
301 bindings
302 </para>
303 <indexterm zone="libical libicalss_cxx">
304 <primary sortas="c-libicalss_cxx">libicalss_cxx.so</primary>
305 </indexterm>
306 </listitem>
307 </varlistentry>
308
309 <varlistentry id="libicalvcal">
310 <term><filename class="libraryfile">libicalvcal.so</filename></term>
311 <listitem>
312 <para>
313 is a vCard/vCalendar C interface
314 </para>
315 <indexterm zone="libical libicalvcal">
316 <primary sortas="c-libicalvcal">libicalvcal.so</primary>
317 </indexterm>
318 </listitem>
319 </varlistentry>
320
321 </variablelist>
322
323 </sect2>
324
325</sect1>
Note: See TracBrowser for help on using the repository browser.