source: x/lib/cairo.xml@ 4115817

xry111/soup3
Last change on this file since 4115817 was 87fc185, checked in by Xi Ruoyao <xry111@…>, 22 months ago

x: URL updates

  • Property mode set to 100644
File size: 10.6 KB
RevLine 
[bb41bc7]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[bb41bc7]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[a5fe42a]7 <!ENTITY cairo-download-http "&gnome-download-http;/cairo/&cairo-minor;/cairo-&cairo-version;.tar.xz">
8 <!--<!ENTITY cairo-download-http "https://www.cairographics.org/snapshots/cairo-&cairo-version;.tar.xz">
9 <!ENTITY cairo-download-http "&sources-anduin-http;/cairo/cairo-&cairo-version;.tar.xz">-->
[97ccf511]10 <!ENTITY cairo-download-ftp " ">
[3c51a6e]11 <!ENTITY cairo-md5sum "c5a6f255af72a2e5faa8e6a53dd882e2">
12 <!ENTITY cairo-size "33 MB">
13 <!ENTITY cairo-buildsize "137 MB">
14 <!ENTITY cairo-time "0.4 SBU (Using parallelism=4)">
[bb41bc7]15]>
16
[a2912ff]17<sect1 id="cairo" xreflabel="Cairo-&cairo-version;">
[bb41bc7]18 <?dbhtml filename="cairo.html"?>
19
20 <sect1info>
21 <date>$Date$</date>
22 </sect1info>
23
[a2912ff]24 <title>Cairo-&cairo-version;</title>
[bb41bc7]25
26 <indexterm zone="cairo">
[a2912ff]27 <primary sortas="a-Cairo">Cairo</primary>
[bb41bc7]28 </indexterm>
29
30 <sect2 role="package">
[4db1ba6]31 <title>Introduction to Cairo</title>
[bb41bc7]32
[521cea0]33 <para>
34 <application>Cairo</application> is a 2D graphics library with support for
35 multiple output devices. Currently supported output targets include the
36 <application>X</application> Window System, win32, image buffers,
37 PostScript, PDF and SVG. Experimental backends include OpenGL, Quartz and
[68d01360]38 XCB file output. <application>Cairo</application> is designed to produce
39 consistent output on all output media while taking advantage of display
40 hardware acceleration when available (e.g., through the X Render
41 Extension). The <application>Cairo</application> API provides operations
42 similar to the drawing operators of PostScript and PDF. Operations in
[521cea0]43 <application>Cairo</application> include stroking and filling cubic
44 B&eacute;zier splines, transforming and compositing translucent images,
45 and antialiased text rendering. All drawing operations can be transformed
46 by any
[87fc185]47 <ulink url="https://en.wikipedia.org/wiki/Affine_transformation">affine
[521cea0]48 transformation</ulink> (scale, rotation, shear, etc.).
49 </para>
[bb41bc7]50
[d8fd588]51 &lfs112_checked;
[3af39b1]52
[bb41bc7]53 <bridgehead renderas="sect3">Package Information</bridgehead>
54 <itemizedlist spacing="compact">
55 <listitem>
[521cea0]56 <para>
57 Download (HTTP): <ulink url="&cairo-download-http;"/>
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download (FTP): <ulink url="&cairo-download-ftp;"/>
63 </para>
[bb41bc7]64 </listitem>
65 <listitem>
[521cea0]66 <para>
67 Download MD5 sum: &cairo-md5sum;
68 </para>
[bb41bc7]69 </listitem>
70 <listitem>
[521cea0]71 <para>
72 Download size: &cairo-size;
73 </para>
[bb41bc7]74 </listitem>
75 <listitem>
[521cea0]76 <para>
77 Estimated disk space required: &cairo-buildsize;
78 </para>
[bb41bc7]79 </listitem>
80 <listitem>
[521cea0]81 <para>
82 Estimated build time: &cairo-time;
83 </para>
[bb41bc7]84 </listitem>
[521cea0]85 </itemizedlist>
86
[4db1ba6]87 <bridgehead renderas="sect3">Cairo Dependencies</bridgehead>
[bb41bc7]88
89 <bridgehead renderas="sect4">Required</bridgehead>
[b8a081c]90 <para role="required">
[1cfd61d]91 <xref linkend="libpng"/> and
[b0ae5b7]92 <xref linkend="pixman"/>
[4db1ba6]93 </para>
94
[f575476]95 <bridgehead renderas="sect4">Recommended</bridgehead>
[4db1ba6]96 <para role="recommended">
[1cfd61d]97 <xref linkend="fontconfig"/>,
[3df8ea47]98 <xref linkend="glib2"/> (required for most GUIs), and
[a2912ff]99 <xref linkend="xorg7-lib"/>
[b8a081c]100 </para>
[bc9c1def]101
[bb41bc7]102 <bridgehead renderas="sect4">Optional</bridgehead>
[b8a081c]103 <para role="optional">
104 <xref linkend="cogl"/>,
[11d14a27]105 <xref linkend="gs"/>,
106 <xref linkend="gtk3"/> and <xref linkend="gtk2"/>,
[b8a081c]107 <xref linkend="gtk-doc"/>,
[521cea0]108 <xref linkend="libdrm"/>,
[11d14a27]109 <xref linkend="librsvg"/>,
[f68e46f]110 <xref linkend="libxml2"/>,
[652b18b]111 <xref linkend="lzo"/>,
[7a395d1]112 <xref linkend="mesa"/>,
[11d14a27]113 <xref linkend="poppler"/>,
[f68e46f]114 <xref linkend="qt5"/>,
[ae629f3]115 <xref linkend="valgrind"/>,
[87fc185]116 <ulink url="https://pkgs.fedoraproject.org/repo/pkgs/directfb/">DirectFB</ulink>,
[11d14a27]117 <ulink url="https://github.com/rillian/jbig2dec/">jbig2dec</ulink>,
118 <ulink url="https://www.freedesktop.org/wiki/Software/libspectre/">libspectre</ulink>,
119 <ulink url="https://skia.org/">Skia</ulink>, and
[87fc185]120 <ulink url="https://download.qt.io/archive/qt/4.8/">Qt4</ulink>.
[b8a081c]121 </para>
[6e08fa52]122
[baac59c]123 <note>
124 <para>
125 There is a circular dependency between cairo and harfbuzz.
126 If cairo is built before harfbuzz, it is necessary to rebuild cairo
127 after harfbuzz in order to build pango.
128 </para>
129 </note>
[e641675]130
[521cea0]131 <para condition="html" role="usernotes">
132 User Notes: <ulink url="&blfs-wiki;/cairo"/>
133 </para>
[bb41bc7]134 </sect2>
135
136 <sect2 role="installation">
[4db1ba6]137 <title>Installation of Cairo</title>
[bb41bc7]138
[35a179c8]139 <!-- /usr/include/ansidecl.h says "This file is part of the GNU C
140 Library", but it's actually installed by Binutils. -->
[ba3b0498]141 <para>
[35a179c8]142 Adapt this package for Binutils-2.39 or later:
[ba3b0498]143 </para>
144
145<screen><userinput>sed 's/PTR/void */' -i util/cairo-trace/lookup-symbol.c</userinput></screen>
146
[8969d72]147 <para>
148 Fix a pkg-config file that may cause errors later:
149 </para>
150
151<screen><userinput>sed -e "/@prefix@/a exec_prefix=@exec_prefix@" \
152 -i util/cairo-script/cairo-script-interpreter.pc.in</userinput></screen>
153
[521cea0]154 <para>
155 Install <application>Cairo</application> by running the following
156 commands:
157 </para>
[bb41bc7]158
[a2ce753]159<screen><userinput>./configure --prefix=/usr \
[9ad08f8]160 --disable-static \
161 --enable-tee &amp;&amp;
[bb41bc7]162make</userinput></screen>
163
[f575476]164 <para>
165 This package does not have a working testsuite.
[a2ce753]166 <!-- The test suite can be run with 'make check', but 488 tests fail and
167 59 tests pass. This seems to be due to minute changes in the expected
168 output, similar to librsvg's tests. Since it's a huge chunk of the tests,
169 let's keep it as "broken" for now.-->
[521cea0]170 </para>
[bb41bc7]171
[521cea0]172 <para>
173 Now, as the <systemitem class="username">root</systemitem> user:
174 </para>
[bb41bc7]175
176<screen role="root"><userinput>make install</userinput></screen>
177 </sect2>
178
[15a4fb4c]179 <sect2 role="commands">
180 <title>Command Explanations</title>
181
[a2ce753]182<!-- Not needed with 1.17.4
[e24dbc2]183 <para>
[1ea3b96]184 <parameter>autoreconf -fv</parameter>: This prevents
[e24dbc2]185 <command>configure</command> ending in error with the current version
186 of <application>automake</application> because the AM_INIT_AUTOMAKE
187 definitions came from a previous version.
188 </para>
[a2ce753]189-->
[e24dbc2]190
[7251b1d]191 <para>
[8558044]192 <parameter>--enable-tee</parameter>: This switch enables the
193 experimental tee surface backend which is required if using
[11d14a27]194 system-installed <application>Cairo</application> with Mozilla applications.
[7251b1d]195 </para>
196
[a98acfe7]197 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
198 href="../../xincludes/static-libraries.xml"/>
[827336dc]199
[74520e8]200 <para>
[11d14a27]201 <option>--enable-xlib-xcb</option>: This switch enables several
[5ec23d4]202 experimental Xlib/XCB functions used by some window managers.
[74520e8]203 </para>
204
[521cea0]205 <para>
[f575476]206 <option>--enable-gl</option>: This switch enables
207 <application>Cairo</application>'s experimental
208 <application>OpenGL</application> surface which
209 is required for <application>Wayland</application>
[a98acfe7]210 compositor and some other packages that are not
211 part of BLFS.
[521cea0]212 </para>
[bc9c1def]213
[f25b2c03]214<!--<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
[a2912ff]215 href="../../xincludes/gtk-doc-rebuild.xml"/>
[f25b2c03]216 NOTE: For this version, no docs are installed by default -->
217
218 <para>
219 <option>--enable-gtk-doc</option>: Use this parameter if GTK-Doc is
220 installed and you wish to create and install the documentation.
221 </para>
[a2912ff]222
[15a4fb4c]223 </sect2>
224
[bb41bc7]225 <sect2 role="content">
226 <title>Contents</title>
227
228 <segmentedlist>
229 <segtitle>Installed Programs</segtitle>
[742b99e]230 <segtitle>Installed Libraries</segtitle>
[bb41bc7]231 <segtitle>Installed Directories</segtitle>
232
233 <seglistitem>
[b8a081c]234 <seg>
[a2ce753]235 cairo-trace
[b8a081c]236 </seg>
237 <seg>
[4db1ba6]238 libcairo.so, libcairo-gobject.so and
239 libcairo-script-interpreter.so
[b8a081c]240 </seg>
241 <seg>
[49a38a1]242 /usr/{include,lib,share/gtk-doc/html}/cairo
[b8a081c]243 </seg>
[bb41bc7]244 </seglistitem>
245 </segmentedlist>
246
247 <variablelist>
248 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
249 <?dbfo list-presentation="list"?>
250 <?dbhtml list-presentation="table"?>
251
[a2ce753]252<!--
[298fee30]253 <varlistentry id="cairo-sphinx">
254 <term><command>cairo-sphinx</command></term>
255 <listitem>
256 <para>
[4c24eb0a]257 is an internal utility for regression analysis
[298fee30]258 </para>
259 <indexterm zone="cairo cairo-sphinx">
260 <primary sortas="b-cairo-sphinx">cairo-sphinx</primary>
261 </indexterm>
262 </listitem>
263 </varlistentry>
[a2ce753]264-->
[298fee30]265
[827336dc]266 <varlistentry id="cairo-trace">
267 <term><command>cairo-trace</command></term>
268 <listitem>
[521cea0]269 <para>
270 generates a log of all calls made by an application to
[4c24eb0a]271 <application>Cairo</application>
[521cea0]272 </para>
[827336dc]273 <indexterm zone="cairo cairo-trace">
274 <primary sortas="b-cairo-trace">cairo-trace</primary>
275 </indexterm>
276 </listitem>
277 </varlistentry>
278
[bb41bc7]279 <varlistentry id="libcairo">
[f575476]280 <term><filename class="libraryfile">libcairo.so</filename></term>
[bb41bc7]281 <listitem>
[521cea0]282 <para>
283 contains the 2D graphics functions required for rendering to the
[4c24eb0a]284 various output targets
[521cea0]285 </para>
[bb41bc7]286 <indexterm zone="cairo libcairo">
[4db1ba6]287 <primary sortas="c-libcairo">libcairo.so</primary>
[bb41bc7]288 </indexterm>
289 </listitem>
290 </varlistentry>
291
[827336dc]292 <varlistentry id="libcairo-gobject">
[7ca0e36]293 <term><filename class="libraryfile">libcairo-gobject.so</filename></term>
[827336dc]294 <listitem>
[521cea0]295 <para>
296 contains functions that integrate
[8558044]297 <application>Cairo</application> with
[4c24eb0a]298 <application>Glib</application>'s GObject type system
[521cea0]299 </para>
[827336dc]300 <indexterm zone="cairo libcairo-gobject">
[4db1ba6]301 <primary sortas="c-libcairo-gobject">libcairo-gobject.so</primary>
[827336dc]302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 <varlistentry id="libcairo-script-interpreter">
[7ca0e36]307 <term><filename class="libraryfile">libcairo-script-interpreter.so</filename></term>
[827336dc]308 <listitem>
[521cea0]309 <para>
310 contains the script interpreter functions for executing and
[4c24eb0a]311 manipulating <application>Cairo</application> execution traces
[521cea0]312 </para>
[827336dc]313 <indexterm zone="cairo libcairo-script-interpreter">
[4db1ba6]314 <primary sortas="c-libcairo-script-interpreter">libcairo-script-interpreter.so</primary>
[827336dc]315 </indexterm>
316 </listitem>
317 </varlistentry>
[a2912ff]318
[bb41bc7]319 </variablelist>
[a2912ff]320
[bb41bc7]321 </sect2>
[a2912ff]322
[bb41bc7]323</sect1>
Note: See TracBrowser for help on using the repository browser.