source: x/lib/cairo.xml@ aed1e212

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 aed1e212 was aed1e212, checked in by Thomas Trepl (Moody) <thomas@…>, 3 years ago

Tags

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