glfs/x/lib/webkitgtk.xml
Krejzi 8057fc4853 Mark more packages as LFS 7.2 checked. Remove Gc ftp link. Update Gimp http link.
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@10589 af4574ff-66df-0310-9fd7-8a98e5e911e0
2012-08-26 13:07:02 +00:00

348 lines
12 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY webkitgtk-download-http "http://webkitgtk.org/releases/webkit-&webkitgtk-version;.tar.xz">
<!ENTITY webkitgtk-download-ftp " ">
<!ENTITY webkitgtk-md5sum "f7bd0bd4f323039f15e19c82a9a8313c">
<!ENTITY webkitgtk-size "7.7 MB">
<!ENTITY webkitgtk-buildsize "700 MB">
<!ENTITY webkitgtk-time "30 SBU">
]>
<sect1 id="webkitgtk" xreflabel="WebKitGTK+-&webkitgtk-version;">
<?dbhtml filename="webkitgtk.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>WebKitGTK+-&webkitgtk-version;</title>
<indexterm zone="webkitgtk">
<primary sortas="a-WebKitGTK+">WebKitGTK+</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to WebKitGTK+</title>
<para>
The <application>WebKitGTK+</application> package is the port of the
portable web rendering engine <application>WebKit</application> to the
<application>GTK+</application> platform.
</para>
&lfs72_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&webkitgtk-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&webkitgtk-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &webkitgtk-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &webkitgtk-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &webkitgtk-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &webkitgtk-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/webkitgtk-&webkitgtk-version;-bison-1.patch"/>
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">WebKitGTK+ Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="geoclue"/>,
<xref linkend="gperf"/>,
<xref linkend="gst-plugins-base"/>,
<xref linkend="gtk3"/> or <xref linkend="gtk2"/>,
<xref linkend="icu"/>,
<xref linkend="libxslt"/>,
<xref linkend="libsoup"/>,
<xref linkend="sqlite"/> and
<xref linkend="which"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="gobject-introspection"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="curl"/>,
<xref linkend="enchant"/>,
<xref linkend="gtk-doc"/> and
<ulink url="http://xsltml.sourceforge.net/">MathML</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/webkitgtk"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of WebKitGTK+</title>
<para>
If you have <application>pkg-config 0.23</application> or older installed
fix a bug in the configure script that will stop it detecting
<application>Gstreamer</application> correctly:
</para>
<screen><userinput>sed -i 's#=GST#=$GST#' configure</userinput></screen>
<para>
If you have not installed <xref linkend="gtk-doc"/>, fix a bug that will
cause <command>make install</command> to fail:
</para>
<screen><userinput>sed -i '/generate-gtkdoc --rebase/s:^:# :' GNUmakefile.in</userinput></screen>
<para>
<application>WebKitGTK+</application> takes a long time to compile, so if you
have a multicore CPU it can be useful to speed up the build by running
make with multiple jobs.
</para>
<para>
If you want to run make with just one core, install
<application>WebKitGTK+</application> by running the following commands:
</para>
<screen><userinput>patch -Np1 -i ../webkitgtk-&webkitgtk-version;-bison-1.patch &amp;&amp;
./configure --prefix=/usr \
--libexecdir=/usr/lib/WebKit \
--enable-introspection &amp;&amp;
make</userinput></screen>
<para>
If you have a multicore CPU and want to run make with multiple jobs
running in parallel, install <application>WebKitGTK+</application> with the
following commands:
</para>
<screen><userinput>patch -Np1 -i ../webkitgtk-&webkitgtk-version;-bison-1.patch &amp;&amp;
./configure --prefix=/usr \
--libexecdir=/usr/lib/WebKit \
--enable-introspection &amp;&amp;
error_count=0
until make -j$(getconf _NPROCESSORS_ONLN)
do
if (( $((error_count++)) &gt; 4 ))
then
echo Too Many Errors
break
fi
done
unset error_count</userinput></screen>
<para>
This package does not have a working testsuite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<option>--enable-introspection</option>: This option enables support for
<application>GObject Introspection</application> and is required for a
<application>GNOME</application> Desktop. If you don't have
<application>Gobject Introspection</application> installed and don't want
to install <application>GNOME</application> remove this option.
</para>
<para>
<command>error_count=0; until make ...</command>: Sadly
there are race conditions in the makefiles that will cause the build to
fail if you run make with multiple jobs. This simple hack works around
that problem by using <command>until</command> to keep running
<command>make</command> until it succeeds. The variable
<envar>error_count</envar> is incremented each time an error occurs and is
checked to ensure that no more than 5 errors occur. This is so that if an
error occurs that is <emphasis>not</emphasis> due to a race condition then
it will not keep repeating <command>make</command> forever.
<command>$(getconf _NPROCESSORS_ONLN)</command> prints the number of cores
your computer seems to have. If you would prefer, you can use any positive
integer such as 4.
</para>
<para>
<option>--enable-webkit2</option>: This switch enables building of
<application>WebKit2</application> libraries which some applications
like <application>DevHelp</application> can use and which will probably
be used in future releases of <application>GNOME</application> Desktop.
</para>
<para>
<parameter>--with-gtk=2.0</parameter>: This option forces
<application>WebKitGTK+</application> to compile against
<application>GTK+ 2</application>, even if
<application>GTK+ 3</application> is also installed. With
<application>GTK+ 2</application>, everything
<application>WebKitGTK+</application> installs is suffixed with 1.0. When it
is compiled against <application>GTK+ 3</application> everything it
installs is suffixed with 3.0. Both versions can be installed alongside
one another with no namespace conflicts.
</para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gtk-doc-rebuild.xml"/>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Program</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
jsc-1 or jsc-3
</seg>
<seg>
libjavascriptcoregtk-1.0.so and libwebkit-1.0.so or
libjavascriptcoregtk-3.0.so and libwebkit-3.0.so and
optionaly libwebkit2gtk-3.0.so
</seg>
<seg>
/usr/include/webkit-1.0 and /usr/share/webkit-1.0 or
/usr/include/webkit-3.0 and /usr/share/webkit-3.0 and
optionaly /usr/lib/WebKit
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="jsc">
<term><command>jsc-1</command> or <command>jsc-3</command></term>
<listitem>
<para>
is a command-line utility that allows you to run JavaScript programs
outside of the context of a web browser.
</para>
<indexterm zone="webkitgtk jsc">
<primary sortas="b-jsc">jsc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libjavascriptcoregtk-1.0">
<term><filename
class="libraryfile">libjavascriptcoregtk-1.0.so</filename></term>
<listitem>
<para>
contains core JavaScript API functions used by <command>jsc-1</command>
and <filename class="libraryfile">libwebkitgtk-1.0.so</filename>.
</para>
<indexterm zone="webkitgtk libjavascriptcoregtk-1.0">
<primary sortas="c-libjavascriptcoregtk-1.0">libjavascriptcoregtk-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libwebkitgtk-1.0">
<term><filename class="libraryfile">libwebkitgtk-1.0.so</filename></term>
<listitem>
<para>
contains the <application>WebKitGTK+</application> API functions for
<application>GTK+ 2</application>.
</para>
<indexterm zone="webkitgtk libwebkitgtk-1.0">
<primary sortas="c-libwebkitgtk-1.0">libwebkitgtk-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libjavascriptcoregtk-3.0">
<term><filename
class="libraryfile">libjavascriptcoregtk-3.0.so</filename></term>
<listitem>
<para>
contains core JavaScript API functions used by <command>jsc-3</command>
and <filename class="libraryfile">libwebkitgtk-3.0.so</filename>.
</para>
<indexterm zone="webkitgtk libjavascriptcoregtk-3.0">
<primary sortas="c-libjavascriptcoregtk-3.0">libjavascriptcoregtk-3.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libwebkitgtk-3.0">
<term><filename class="libraryfile">libwebkitgtk-3.0.so</filename></term>
<listitem>
<para>
contains the <application>WebKitGTK+</application> API functions for
<application>GTK+ 3</application>.
</para>
<indexterm zone="webkitgtk libwebkitgtk-3.0">
<primary sortas="c-libwebkitgtk-3.0">libwebkitgtk-3.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libwebkit2gtk-3.0">
<term><filename class="libraryfile">libwebkit2gtk-3.0.so</filename></term>
<listitem>
<para>
contains the <application>WebKit2</application> API functions.
</para>
<indexterm zone="webkitgtk libwebkit2gtk-3.0">
<primary sortas="c-libwebkit2gtk-3.0">libwebkit2gtk-3.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>