source: x/lib/cairo.xml@ b8a081c

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since b8a081c was b8a081c, checked in by Krejzi <krejzi@…>, 12 years ago

glib 2.32.1, gdk-pixbuf 2.26.1, gsettings-desktop-schemas 3.4.1, glibmm 2.32.0, cairomm 1.10.0, gtkmm 3.4.0 and some xml fixes

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

  • Property mode set to 100644
File size: 9.1 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 "http://cairographics.org/releases/cairo-&cairo-version;.tar.gz">
8 <!ENTITY cairo-download-ftp " ">
9 <!ENTITY cairo-md5sum "e6c85575ba7094f88b637bdfd835a751">
10 <!ENTITY cairo-size "61 MB">
11 <!ENTITY cairo-buildsize "170 MB (up to an additional 454 MB to run the test suite)">
12 <!ENTITY cairo-time "0.8 SBU (up to an additional 2 SBU to run the test suite)">
13]>
14
15<sect1 id="cairo" xreflabel="cairo-&cairo-version;">
16 <?dbhtml filename="cairo.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
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><application>Cairo</application> is a 2D graphics library with
33 support for multiple output devices. Currently supported output targets
34 include the <application>X</application> Window System, win32, image
35 buffers, PostScript, PDF and SVG. Experimental backends include OpenGL
36 Quartz and XCB file output. cairo is designed to produce consistent output
37 on all output media while taking advantage of display hardware acceleration
38 when available (e.g., through the X Render Extension). The
39 <application>Cairo</application> API provides operations similar to the
40 drawing operators of PostScript and PDF. Operations in
41 <application>Cairo</application> include stroking and filling cubic
42 B&eacute;zier splines, transforming and compositing translucent images, and
43 antialiased text rendering. All drawing operations can be transformed by
44 any <ulink url="http://en.wikipedia.org/wiki/Affine_transformation">affine
45 transformation</ulink> (scale, rotation, shear, etc.).</para>
46
47 &lfs71_checked;
48
49 <bridgehead renderas="sect3">Package Information</bridgehead>
50 <itemizedlist spacing="compact">
51 <listitem>
52 <para>Download (HTTP): <ulink url="&cairo-download-http;"/></para>
53 </listitem>
54 <listitem>
55 <para>Download (FTP): <ulink url="&cairo-download-ftp;"/></para>
56 </listitem>
57 <listitem>
58 <para>Download MD5 sum: &cairo-md5sum;</para>
59 </listitem>
60 <listitem>
61 <para>Download size: &cairo-size;</para>
62 </listitem>
63 <listitem>
64 <para>Estimated disk space required: &cairo-buildsize;</para>
65 </listitem>
66 <listitem>
67 <para>Estimated build time: &cairo-time;</para>
68 </listitem>
69 </itemizedlist>
70
71 <bridgehead renderas="sect3">cairo Dependencies</bridgehead>
72
73 <!-- Cairo is here only because GTK+ and friends, so I'll make Xorg Libraries
74 a dependency here -->
75 <bridgehead renderas="sect4">Required</bridgehead>
76 <para role="required">
77 <xref linkend="fontconfig"/>,
78 <xref linkend="libpng"/>,
79 <xref linkend="pixman"/>,
80 <xref linkend="pkgconfig"/> and
81 <xref linkend="xorg7-lib"/>
82 </para>
83
84 <!-- I've never seen any package that needs Cairo GL backend -->
85 <bridgehead renderas="sect4">Optional</bridgehead>
86 <para role="optional">
87 <xref linkend="cogl"/>,
88 <ulink url="http://www.directfb.org/">DirectFB</ulink>,
89 <xref linkend="libdrm"/>,
90 <xref linkend="gtk-doc"/>,
91 <xref linkend="mesalib"/>,
92 <xref linkend="qt4"/>,
93 <ulink url="http://code.google.com/p/skia/">Skia</ulink> and
94 <ulink url="http://www.valgrind.org">Valgrind</ulink>
95 </para>
96
97 <bridgehead renderas="sect4">Optional (to provide extended test suite
98 coverage)</bridgehead>
99 <para role="optional">
100 <xref linkend="gs"/> (to test the postscript backend),
101 <xref linkend="gtk2"/> (for testing the PDF backend),
102 <xref linkend="poppler"/> (for testing the PDF backend),
103 <ulink url="http://libspectre.freedesktop.org">libspectre</ulink> (to test
104 the PDF backend) and
105 <xref linkend="librsvg"/> (for testing the SVG backend)
106 </para>
107
108 <note><para>There is a reciprocal dependency with cairo and libdrm. Best
109 practice is to install cairo without the OpenGL backend, and return to
110 re-install cairo after the full Xorg installation has been completed. Also
111 note that the GTK, Poppler and librsvg packages are also reciprocal. As the
112 test suite is currently unreliable, it is best to simply skip it at this
113 time.</para></note>
114
115 <para condition="html" role="usernotes">User Notes:
116 <ulink url="&blfs-wiki;/cairo"/></para>
117
118 </sect2>
119
120 <sect2 role="installation">
121 <title>Installation of cairo</title>
122
123 <para>Install <application>Cairo</application> by running the following
124 commands:</para>
125
126<screen><userinput>./configure --prefix=/usr \
127 --enable-tee --enable-xcb &amp;&amp;
128make</userinput></screen>
129
130 <para>To test the results, issue: <command>make -k check</command>.</para>
131
132 <para>Note that the tests take a long time to run and many of them fail for
133 unknown reasons.</para>
134
135 <para>Now, as the <systemitem class="username">root</systemitem>
136 user:</para>
137
138<screen role="root"><userinput>make install</userinput></screen>
139
140 </sect2>
141
142 <sect2 role="commands">
143 <title>Command Explanations</title>
144
145 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
146 href="../../xincludes/gtk-doc-rebuild.xml"/>
147
148 <para><option>--enable-tee</option>: This is used by
149 <application>Firefox</application>. If you don't enable the Cairo's tee
150 surface backend you won't be able to build
151 <application>Firefox</application> with
152 <option>--enable-system-cairo</option>.</para>
153
154 <para><option>--enable-drm</option>: Enable
155 <application>Cairo</application>'s libdrm backend.</para>
156
157 <para><option>--enable-gl</option>: Enable
158 <application>Cairo</application>'s OpenGL backend.</para>
159
160 <para><option>--enable-xcb</option>: Enable
161 <application>Cairo</application>'s libxcb backend.
162 </para>
163
164 <para><option>--enable-vg</option>: Enable the
165 <application>Cairo</application>
166 <ulink url="http://en.wikipedia.org/wiki/OpenVG">OpenVG</ulink> backend
167 (requires <xref linkend="mesalib"/> installed, configured with
168 --enable-gallium-egl and --enable-openvg).</para>
169
170 <para><option>--disable-static</option>: Prevent static libraries being
171 built and installed.</para>
172
173 </sect2>
174
175 <sect2 role="content">
176 <title>Contents</title>
177
178 <segmentedlist>
179 <segtitle>Installed Programs</segtitle>
180 <segtitle>Installed Library</segtitle>
181 <segtitle>Installed Directories</segtitle>
182
183 <seglistitem>
184 <seg>
185 cairo-sphinx and cairo-trace
186 </seg>
187 <seg>
188 libcairo.{so,a}, libcairo-gobject.{so,a} and
189 libcairo-script-interpreter.{so,a}
190 </seg>
191 <seg>
192 /usr/include/cairo, /usr/lib/cairo and
193 /usr/share/gtk-doc/html/cairo
194 </seg>
195 </seglistitem>
196 </segmentedlist>
197
198 <variablelist>
199 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
200 <?dbfo list-presentation="list"?>
201 <?dbhtml list-presentation="table"?>
202
203 <varlistentry id="cairo-trace">
204 <term><command>cairo-trace</command></term>
205 <listitem>
206 <para>generates a log of all calls made by an application to
207 <application>Cairo</application>.</para>
208 <indexterm zone="cairo cairo-trace">
209 <primary sortas="b-cairo-trace">cairo-trace</primary>
210 </indexterm>
211 </listitem>
212 </varlistentry>
213
214 <varlistentry id="libcairo">
215 <term><filename class='libraryfile'>libcairo.{so,a}</filename></term>
216 <listitem>
217 <para>contains the 2D graphics functions required for rendering to
218 the various output targets.</para>
219 <indexterm zone="cairo libcairo">
220 <primary sortas="c-libcairo">libcairo.{so,a}</primary>
221 </indexterm>
222 </listitem>
223 </varlistentry>
224
225 <varlistentry id="libcairo-gobject">
226 <term><filename class='libraryfile'>libcairo-gobject.{so,a}</filename></term>
227 <listitem>
228 <para>contains functions that integrate
229 <application>Cairo</application> with <xref linkend="glib2"/>'s
230 GObject type system.</para>
231 <indexterm zone="cairo libcairo-gobject">
232 <primary sortas="c-libcairo-gobject">libcairo-gobject.{so,a}</primary>
233 </indexterm>
234 </listitem>
235 </varlistentry>
236
237 <varlistentry id="libcairo-script-interpreter">
238 <term><filename class='libraryfile'>libcairo-script-interpreter.{so,a}</filename></term>
239 <listitem>
240 <para>contains the script interpreter functions for executing and
241 manipulating <application>Cairo</application> execution traces.</para>
242 <indexterm zone="cairo libcairo-script-interpreter">
243 <primary sortas="c-libcairo-script-interpreter">libcairo-script-interpreter.{so,a}</primary>
244 </indexterm>
245 </listitem>
246 </varlistentry>
247
248 </variablelist>
249
250 </sect2>
251
252</sect1>
Note: See TracBrowser for help on using the repository browser.