Updated cairo to 1.10.2

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@9006 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
Andrew Benton 2011-11-23 23:25:44 +00:00
parent 447b0bc47d
commit 827336dc34
3 changed files with 106 additions and 53 deletions

View File

@ -549,7 +549,7 @@ $Date$
<!ENTITY qt-version "3.3.8b"> <!ENTITY qt-version "3.3.8b">
<!ENTITY qt4-version "4.7.1"> <!ENTITY qt4-version "4.7.1">
<!ENTITY GTK-version "1.2.10"> <!ENTITY GTK-version "1.2.10">
<!ENTITY cairo-version "1.8.10"> <!ENTITY cairo-version "1.10.2">
<!ENTITY cairomm-version "1.6.2"> <!ENTITY cairomm-version "1.6.2">
<!ENTITY pango-version "1.28.2"> <!ENTITY pango-version "1.28.2">
<!ENTITY pangomm-version "2.26.2"> <!ENTITY pangomm-version "2.26.2">

View File

@ -41,6 +41,15 @@
</listitem> </listitem>
--> -->
<listitem>
<para>November 23rd, 2011</para>
<itemizedlist>
<listitem>
<para>[abenton] - Updated cairo to 1.10.2.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem> <listitem>
<para>November 22nd, 2011</para> <para>November 22nd, 2011</para>
<itemizedlist> <itemizedlist>

View File

@ -6,10 +6,10 @@
<!ENTITY cairo-download-http "http://cairographics.org/releases/cairo-&cairo-version;.tar.gz"> <!ENTITY cairo-download-http "http://cairographics.org/releases/cairo-&cairo-version;.tar.gz">
<!ENTITY cairo-download-ftp "&gentoo-ftp-repo;/cairo-&cairo-version;.tar.gz"> <!ENTITY cairo-download-ftp "&gentoo-ftp-repo;/cairo-&cairo-version;.tar.gz">
<!ENTITY cairo-md5sum "b60a82f405f9400bbfdcf850b1728d25"> <!ENTITY cairo-md5sum "f101a9e88b783337b20b2e26dfd26d5f">
<!ENTITY cairo-size "7.1 MB"> <!ENTITY cairo-size "22.5 MB">
<!ENTITY cairo-buildsize "40 MB (up to an additional 270 MB to run the test suite)"> <!ENTITY cairo-buildsize "145 MB (up to an additional 454 MB to run the test suite)">
<!ENTITY cairo-time "0.4 SBU (up to an additional 2.9 SBU to run the test suite)"> <!ENTITY cairo-time "0.7 SBU (up to an additional 10 SBU to run the test suite)">
]> ]>
<sect1 id="cairo" xreflabel="cairo-&cairo-version;"> <sect1 id="cairo" xreflabel="cairo-&cairo-version;">
@ -29,21 +29,22 @@
<sect2 role="package"> <sect2 role="package">
<title>Introduction to cairo</title> <title>Introduction to cairo</title>
<para><application>cairo</application> is a 2D graphics library with <para><application>Cairo</application> is a 2D graphics library with
support for multiple output devices. Currently supported output targets support for multiple output devices. Currently supported output targets
include the <application>X</application> Window System, win32, image include the <application>X</application> Window System, win32, image
buffers, PostScript, PDF and SVG. Experimental backends include OpenGL buffers, PostScript, PDF and SVG. Experimental backends include OpenGL
(through glitz), Quartz and XCB file output. cairo is designed to produce Quartz and XCB file output. cairo is designed to produce consistent output
consistent output on all output media while taking advantage of display on all output media while taking advantage of display hardware acceleration
hardware acceleration when available (e.g., through the X Render when available (e.g., through the X Render Extension). The
Extension). The <application>cairo</application> API provides operations <application>Cairo</application> API provides operations similar to the
similar to the drawing operators of PostScript and PDF. Operations in drawing operators of PostScript and PDF. Operations in
<application>cairo</application> include stroking and filling cubic <application>Cairo</application> include stroking and filling cubic
Bézier splines, transforming and compositing translucent images, and B&eacute;zier splines, transforming and compositing translucent images, and
antialiased text rendering. All drawing operations can be transformed by antialiased text rendering. All drawing operations can be transformed by
any affine transformation (scale, rotation, shear, etc.).</para> any <ulink url="http://en.wikipedia.org/wiki/Affine_transformation">affine
transformation</ulink> (scale, rotation, shear, etc.).</para>
&lfs65_checked; &lfs70_checked;
<bridgehead renderas="sect3">Package Information</bridgehead> <bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact"> <itemizedlist spacing="compact">
@ -70,34 +71,32 @@
<bridgehead renderas="sect3">cairo Dependencies</bridgehead> <bridgehead renderas="sect3">cairo Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead> <bridgehead renderas="sect4">Required</bridgehead>
<para role="required"><xref linkend="libpng"/>, <para role="required"><xref linkend="pkgconfig"/>, <xref linkend="libpng"/>,
<xref linkend="pixman"/>, and <xref linkend="pixman"/>, and <xref linkend="fontconfig"/></para>
<xref linkend="fontconfig"/></para>
<!-- and <xref linkend="pkgconfig"/></para> -->
<bridgehead renderas="sect4">Recommended</bridgehead> <bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended"><xref linkend="x-window-system"/></para> <para role="recommended"><xref linkend="x-window-system"/> (gtk requires
cairo to be built after libX11 is installed)</para>
<bridgehead renderas="sect4">Optional</bridgehead> <bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional"><ulink <para role="optional"><xref linkend="gtk-doc"/>,
url="http://www.freedesktop.org/Software/glitz">glitz</ulink>,
<ulink url="http://www.directfb.org/">DirectFB</ulink>, <ulink url="http://www.directfb.org/">DirectFB</ulink>,
<xref linkend="gtk-doc"/>, <ulink url="http://code.google.com/p/skia/">Skia</ulink> and
<xref linkend="xcb-util"/>,
<ulink url="http://libspectre.freedesktop.org">libspectre</ulink>, and
<ulink url="http://www.valgrind.org">Valgrind</ulink></para> <ulink url="http://www.valgrind.org">Valgrind</ulink></para>
<bridgehead renderas="sect4">Optional (to provide extended test suite <bridgehead renderas="sect4">Optional (to provide extended test suite
coverage)</bridgehead> coverage)</bridgehead>
<para role="optional"><xref linkend="gtk2"/> (for testing the PDF backend), <para role="optional"><xref linkend="gs"/> (to test the postscript
<xref linkend="poppler"/> (for testing the PDF backend), and backend), <xref linkend="gtk2"/> (for testing the PDF backend),
<xref linkend="librsvg"/> (for testing the SVG backend) <xref linkend="poppler"/> (for testing the PDF backend),
<!-- [ comment this pending clarification - not presently required] , and <ulink url="http://libspectre.freedesktop.org">libspectre</ulink> (to test
<ulink url="http://ltp.sourceforge.net/">LTP</ulink>--></para> the PDF backend) and <xref linkend="librsvg"/> (for testing the SVG
backend)</para>
<para>Note that the GTK, Poppler and librsvg packages are circular in that <para>Note that the GTK, Poppler and librsvg packages are circular in that
using them for test suite coverage requires installing cairo first, using them for test suite coverage requires installing cairo first, then
then installing the desired package(s), then installing cairo again.</para> installing the desired package(s), then installing cairo again. As the test
suite seems to be somewhat broken it doesn't seem worth the effort.</para>
<para condition="html" role="usernotes">User Notes: <para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/cairo"/></para> <ulink url="&blfs-wiki;/cairo"/></para>
@ -107,26 +106,19 @@
<sect2 role="installation"> <sect2 role="installation">
<title>Installation of cairo</title> <title>Installation of cairo</title>
<para>Install <application>cairo</application> by running the following <para>Install <application>Cairo</application> by running the following
commands:</para> commands:</para>
<screen><userinput>./configure --prefix=/usr &amp;&amp; <screen><userinput>./configure --prefix=/usr --enable-tee --enable-gl &amp;&amp;
make</userinput></screen> make</userinput></screen>
<!-- Tested with Poppler 0.10.7, librsvg 2.26.0, libspectre 0.2.2, <para>To test the results, issue: <command>make -k check</command>.</para>
GTK+ 2.26.5, and GPL Ghostscript 8.64.
29 of 205 tests failed -->
<para>To test the results, issue: <command>make check</command>. Note that <para>Note that the tests take a long time to run and many of them fail for
as many as 29 of the tests are known to fail for unknown reasons. unknown reasons.</para>
If you do not have a <command>gs</command> binary in your path, many
<!-- used to be (87 of $total), needs to be updated by someone who can
get them to run through without hanging -->
of the 205 tests will fail. Also, to enhance test
coverage, the tests should be run with an available X Window screen (e.g.
from a local xterm or equivalent window).</para>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para> <para>Now, as the <systemitem class="username">root</systemitem>
user:</para>
<screen role="root"><userinput>make install</userinput></screen> <screen role="root"><userinput>make install</userinput></screen>
@ -138,11 +130,27 @@ make</userinput></screen>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gtk-doc-rebuild.xml"/> href="../../xincludes/gtk-doc-rebuild.xml"/>
<para><option>--enable-xcb=yes</option>: Enable the xcb back end. <para><option>--enable-tee</option>: This is used by
</para> <application>Firefox</application>. If you don't enable the Cairo's tee
surface back end you won't be able to build
<application>Firefox</application> with
<option>--enable-system-cairo</option>.</para>
<para><option>--disable-static</option>: Prevent static libraries <para><option>--enable-gl</option>: Enable the
being built and installed.</para> <application>Cairo</application> OpenGL back end. Remove this option if
you've not installed <xref linkend="mesalib"/>.</para>
<para><option>--enable-xcb</option>: Enable
<application>Cairo</application>'s <xref linkend="libxcb"/> back end.</para>
<para><option>--disable-static</option>: Prevent static libraries being
built and installed.</para>
<para><option>--enable-vg</option>: Enable the
<application>Cairo</application>
<ulink url="http://en.wikipedia.org/wiki/OpenVG">OpenVG</ulink> back
end (requires <xref linkend="mesalib"/> installed, configured with
--enable-gallium-egl and --enable-openvg).</para>
</sect2> </sect2>
@ -155,9 +163,11 @@ make</userinput></screen>
<segtitle>Installed Directories</segtitle> <segtitle>Installed Directories</segtitle>
<seglistitem> <seglistitem>
<seg>None</seg> <seg>cairo-trace</seg>
<seg>libcairo.{so,a}</seg> <seg>libcairo.{so,a}, libcairo-gobject.{so,a} and
<seg>/usr/include/cairo and /usr/share/gtk-doc/html/cairo</seg> libcairo-script-interpreter.{so,a}</seg>
<seg>/usr/include/cairo, usr/lib/cairo and
/usr/share/gtk-doc/html/cairo</seg>
</seglistitem> </seglistitem>
</segmentedlist> </segmentedlist>
@ -166,6 +176,17 @@ make</userinput></screen>
<?dbfo list-presentation="list"?> <?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?> <?dbhtml list-presentation="table"?>
<varlistentry id="cairo-trace">
<term><command>cairo-trace</command></term>
<listitem>
<para>generates a log of all calls made by an application to
<application>Cairo</application>.</para>
<indexterm zone="cairo cairo-trace">
<primary sortas="b-cairo-trace">cairo-trace</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libcairo"> <varlistentry id="libcairo">
<term><filename class='libraryfile'>libcairo.{so,a}</filename></term> <term><filename class='libraryfile'>libcairo.{so,a}</filename></term>
<listitem> <listitem>
@ -177,6 +198,29 @@ make</userinput></screen>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry id="libcairo-gobject">
<term><filename class='libraryfile'>libcairo-gobject.{so,a}</filename></term>
<listitem>
<para>contains functions that integrate
<application>Cairo</application> with <xref linkend="glib2"/>'s
GObject type system.</para>
<indexterm zone="cairo libcairo-gobject">
<primary sortas="c-libcairo-gobject">libcairo-gobject.{so,a}</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libcairo-script-interpreter">
<term><filename class='libraryfile'>libcairo-script-interpreter.{so,a}</filename></term>
<listitem>
<para>contains the script interpreter functions for executing and
manipulating <application>Cairo</application> execution traces.</para>
<indexterm zone="cairo libcairo-script-interpreter">
<primary sortas="c-libcairo-script-interpreter">libcairo-script-interpreter.{so,a}</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist> </variablelist>
</sect2> </sect2>