source: x/lib/cairo.xml@ 162ee71

10.1 11.0 11.1 11.2 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 upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 162ee71 was 1ea3b96, checked in by Thomas Trepl <thomas@…>, 3 years ago

Remove -i from autoreconf command to enable building without gtkdoc installed

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

  • Property mode set to 100644
File size: 9.7 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 <!--
8 <!ENTITY cairo-download-http "https://www.cairographics.org/releases/cairo-&cairo-version;.tar.xz">
9 -->
10 <!ENTITY cairo-download-http "&sources-anduin-http;/cairo/cairo-&cairo-version;.tar.xz">
11 <!ENTITY cairo-download-ftp " ">
12 <!ENTITY cairo-md5sum "23a9420780f74ad0ca1e9885e53ee022">
13 <!ENTITY cairo-size "40 MB">
14 <!ENTITY cairo-buildsize "148 MB">
15 <!ENTITY cairo-time "0.9 SBU">
16]>
17
18<sect1 id="cairo" xreflabel="Cairo-&cairo-version;">
19 <?dbhtml filename="cairo.html"?>
20
21 <sect1info>
22 <othername>$LastChangedBy$</othername>
23 <date>$Date$</date>
24 </sect1info>
25
26 <title>Cairo-&cairo-version;</title>
27
28 <indexterm zone="cairo">
29 <primary sortas="a-Cairo">Cairo</primary>
30 </indexterm>
31
32 <sect2 role="package">
33 <title>Introduction to Cairo</title>
34
35 <para>
36 <application>Cairo</application> is a 2D graphics library with support for
37 multiple output devices. Currently supported output targets include the
38 <application>X</application> Window System, win32, image buffers,
39 PostScript, PDF and SVG. Experimental backends include OpenGL, Quartz and
40 XCB file output. <application>Cairo</application> is designed to produce
41 consistent output on all output media while taking advantage of display
42 hardware acceleration when available (e.g., through the X Render
43 Extension). The <application>Cairo</application> API provides operations
44 similar to the drawing operators of PostScript and PDF. Operations in
45 <application>Cairo</application> include stroking and filling cubic
46 B&eacute;zier splines, transforming and compositing translucent images,
47 and antialiased text rendering. All drawing operations can be transformed
48 by any
49 <ulink url="http://en.wikipedia.org/wiki/Affine_transformation">affine
50 transformation</ulink> (scale, rotation, shear, etc.).
51 </para>
52
53 &lfs10_checked;
54
55 <bridgehead renderas="sect3">Package Information</bridgehead>
56 <itemizedlist spacing="compact">
57 <listitem>
58 <para>
59 Download (HTTP): <ulink url="&cairo-download-http;"/>
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Download (FTP): <ulink url="&cairo-download-ftp;"/>
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Download MD5 sum: &cairo-md5sum;
70 </para>
71 </listitem>
72 <listitem>
73 <para>
74 Download size: &cairo-size;
75 </para>
76 </listitem>
77 <listitem>
78 <para>
79 Estimated disk space required: &cairo-buildsize;
80 </para>
81 </listitem>
82 <listitem>
83 <para>
84 Estimated build time: &cairo-time;
85 </para>
86 </listitem>
87 </itemizedlist>
88
89 <bridgehead renderas="sect3">Cairo Dependencies</bridgehead>
90
91 <bridgehead renderas="sect4">Required</bridgehead>
92 <para role="required">
93 <xref linkend="libpng"/> and
94 <xref linkend="pixman"/>
95 </para>
96
97 <bridgehead renderas="sect4">Recommended</bridgehead>
98 <para role="recommended">
99 <xref linkend="fontconfig"/>,
100 <xref linkend="glib2"/> (required for most GUIs) and
101 <xref linkend="xorg7-lib"/>
102 </para>
103
104 <bridgehead renderas="sect4">Optional</bridgehead>
105 <para role="optional">
106 <xref linkend="cogl"/>,
107 <xref linkend="gs"/>,
108 <xref linkend="gtk3"/> and <xref linkend="gtk2"/>,
109 <xref linkend="gtk-doc"/>,
110 <xref linkend="libdrm"/>,
111 <xref linkend="librsvg"/>,
112 <xref linkend="libxml2"/>,
113 <xref linkend="lzo"/>,
114 <xref linkend="mesa"/>,
115 <xref linkend="poppler"/>,
116 <xref linkend="qt5"/>,
117 <xref linkend="valgrind"/>,
118 <ulink url="http://pkgs.fedoraproject.org/repo/pkgs/directfb/">DirectFB</ulink>,
119 <ulink url="https://github.com/rillian/jbig2dec/">jbig2dec</ulink>,
120 <ulink url="https://www.freedesktop.org/wiki/Software/libspectre/">libspectre</ulink>,
121 <ulink url="https://skia.org/">Skia</ulink>, and
122 <ulink url="http://download.qt.io/archive/qt/4.8/">Qt4</ulink>.
123 </para>
124
125 <note>
126 <para>
127 There is a circular dependency between cairo and harfbuzz.
128 If cairo is built before harfbuzz, it is necessary to rebuild cairo
129 after harfbuzz in order to build pango.
130 </para>
131 </note>
132
133 <para condition="html" role="usernotes">
134 User Notes: <ulink url="&blfs-wiki;/cairo"/>
135 </para>
136 </sect2>
137
138 <sect2 role="installation">
139 <title>Installation of Cairo</title>
140
141 <para>
142 Install <application>Cairo</application> by running the following
143 commands:
144 </para>
145
146<screen><userinput>autoreconf -fv &amp;&amp;
147./configure --prefix=/usr \
148 --disable-static \
149 --enable-tee &amp;&amp;
150make</userinput></screen>
151
152 <para>
153 This package does not have a working testsuite.
154 </para>
155
156 <para>
157 Now, as the <systemitem class="username">root</systemitem> user:
158 </para>
159
160<screen role="root"><userinput>make install</userinput></screen>
161 </sect2>
162
163 <sect2 role="commands">
164 <title>Command Explanations</title>
165
166 <para>
167 <parameter>autoreconf -fv</parameter>: This prevents
168 <command>configure</command> ending in error with the current version
169 of <application>automake</application> because the AM_INIT_AUTOMAKE
170 definitions came from a previous version.
171 </para>
172
173 <para>
174 <parameter>--enable-tee</parameter>: This switch enables the
175 experimental tee surface backend which is required if using
176 system-installed <application>Cairo</application> with Mozilla applications.
177 </para>
178
179 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
180 href="../../xincludes/static-libraries.xml"/>
181
182 <para>
183 <option>--enable-xlib-xcb</option>: This switch enables several
184 experimental Xlib/XCB functions used by some window managers. Note that
185 using this option will break some applications such as
186 <xref role="nodep" linkend="epiphany"/>.
187 </para>
188
189 <para>
190 <option>--enable-gl</option>: This switch enables
191 <application>Cairo</application>'s experimental
192 <application>OpenGL</application> surface which
193 is required for <application>Wayland</application>
194 compositor and some other packages that are not
195 part of BLFS.
196 </para>
197
198 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
199 href="../../xincludes/gtk-doc-rebuild.xml"/>
200
201 </sect2>
202
203 <sect2 role="content">
204 <title>Contents</title>
205
206 <segmentedlist>
207 <segtitle>Installed Programs</segtitle>
208 <segtitle>Installed Libraries</segtitle>
209 <segtitle>Installed Directories</segtitle>
210
211 <seglistitem>
212 <seg>
213 cairo-sphinx and cairo-trace
214 </seg>
215 <seg>
216 libcairo.so, libcairo-gobject.so and
217 libcairo-script-interpreter.so
218 </seg>
219 <seg>
220 /usr/{include,lib,share/gtk-doc/html}/cairo
221 </seg>
222 </seglistitem>
223 </segmentedlist>
224
225 <variablelist>
226 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
227 <?dbfo list-presentation="list"?>
228 <?dbhtml list-presentation="table"?>
229
230 <varlistentry id="cairo-sphinx">
231 <term><command>cairo-sphinx</command></term>
232 <listitem>
233 <para>
234 is an internal utility for regression analysis.
235 </para>
236 <indexterm zone="cairo cairo-sphinx">
237 <primary sortas="b-cairo-sphinx">cairo-sphinx</primary>
238 </indexterm>
239 </listitem>
240 </varlistentry>
241
242 <varlistentry id="cairo-trace">
243 <term><command>cairo-trace</command></term>
244 <listitem>
245 <para>
246 generates a log of all calls made by an application to
247 <application>Cairo</application>.
248 </para>
249 <indexterm zone="cairo cairo-trace">
250 <primary sortas="b-cairo-trace">cairo-trace</primary>
251 </indexterm>
252 </listitem>
253 </varlistentry>
254
255 <varlistentry id="libcairo">
256 <term><filename class="libraryfile">libcairo.so</filename></term>
257 <listitem>
258 <para>
259 contains the 2D graphics functions required for rendering to the
260 various output targets.
261 </para>
262 <indexterm zone="cairo libcairo">
263 <primary sortas="c-libcairo">libcairo.so</primary>
264 </indexterm>
265 </listitem>
266 </varlistentry>
267
268 <varlistentry id="libcairo-gobject">
269 <term><filename class="libraryfile">libcairo-gobject.so</filename></term>
270 <listitem>
271 <para>
272 contains functions that integrate
273 <application>Cairo</application> with
274 <application>Glib</application>'s GObject type system.
275 </para>
276 <indexterm zone="cairo libcairo-gobject">
277 <primary sortas="c-libcairo-gobject">libcairo-gobject.so</primary>
278 </indexterm>
279 </listitem>
280 </varlistentry>
281
282 <varlistentry id="libcairo-script-interpreter">
283 <term><filename class="libraryfile">libcairo-script-interpreter.so</filename></term>
284 <listitem>
285 <para>
286 contains the script interpreter functions for executing and
287 manipulating <application>Cairo</application> execution traces.
288 </para>
289 <indexterm zone="cairo libcairo-script-interpreter">
290 <primary sortas="c-libcairo-script-interpreter">libcairo-script-interpreter.so</primary>
291 </indexterm>
292 </listitem>
293 </varlistentry>
294
295 </variablelist>
296
297 </sect2>
298
299</sect1>
Note: See TracBrowser for help on using the repository browser.