glfs/x/lib/xulrunner.xml
Andrew Benton c1ae13c63c firefox-11.0
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@9694 af4574ff-66df-0310-9fd7-8a98e5e911e0
2012-03-14 14:46:53 +00:00

312 lines
11 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 xulrunner-download-http
"http://releases.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
<!ENTITY xulrunner-download-ftp
"ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
<!-- md5sum and size should match firefox, but the buildsize and time will differ -->
<!ENTITY xulrunner-md5sum "4b07acf47857aff72776d805409cdd1b">
<!ENTITY xulrunner-size "75 MB">
<!ENTITY xulrunner-buildsize "2.6 GB (440 MB installed)">
<!ENTITY xulrunner-time "22 SBU">
]>
<sect1 id="xulrunner" xreflabel="Xulrunner-&xulrunner-version;">
<?dbhtml filename="xulrunner.html" ?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>Xulrunner-&xulrunner-version;</title>
<indexterm zone="xulrunner">
<primary sortas="a-Xulrunner">Xulrunner</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Xulrunner</title>
<para>
<application>Xulrunner</application> is a runtime environment for XUL
applications, and forms the major part of the
<application>Mozilla</application> codebase. In particular, it provides
the Gecko engine together with pkgconfig files so that other applications
can find and use it.
</para>
&lfs71_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&xulrunner-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&xulrunner-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &xulrunner-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &xulrunner-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &xulrunner-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &xulrunner-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Xulrunner Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="alsa-lib"/>,
<xref linkend="gtk2"/>,
<xref linkend="zip"/> and
<xref linkend="unzip"/>.
</para>
<para>
Note: <application>libjpeg</application> and
<application>libpng</application> (patched for apng support) should have
been installed before <application>gdk-pixbuf</application> and should
exist on your system. If for some strange reason you haven't installed
them, you should remove the <option>--with-system-jpeg</option> and
<option>--with-system-png</option> options from the
<filename>mozconfig</filename> file created below.
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="yasm"/> or <xref linkend="libvpx"/>
(to allow <application>Xulrunner</application> to play webm videos).
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="dbus-glib"/>,
<xref linkend="startup-notification"/>,
<xref linkend="sqlite"/>,
<ulink url="http://sourceforge.net/projects/hunspell/">Hunspell</ulink>,
<ulink url="http://libevent.org/">Libevent</ulink>,
<xref linkend="doxygen"/>,
<xref linkend="gnome-vfs"/> and <xref linkend="libgnomeui"/> (for
integration with the old version of <application>Gnome</application>),
<xref linkend="libnotify"/>,
<xref linkend="nspr"/>,
<xref linkend="nss"/>,
<xref linkend="wireless_tools"/>,
<ulink url="http://www.valgrind.org/">Valgrind</ulink> (only for testing
the jemalloc code) and
<xref linkend="wget"/>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/xulrunner"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Xulrunner</title>
<para>
The configuration of <application>Xulrunner</application> is accomplished
by creating a <filename>mozconfig</filename> file containing the desired
configuration options. A default <filename>mozconfig</filename> is created
below. To see the entire list of available configuration options (and an
abbreviated description of each one), issue <command>./configure
--help</command>. You should review the entire file and comment or
uncomment options as necessary.
</para>
<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
# If you have a multicore machine you can speed up the build by running
# several jobs at once, but if you have a single core, delete this line:
mk_add_options MOZ_MAKE_FLAGS="-j4"
# If you have installed Yasm delete this option:
ac_add_options --disable-webm
# If you have installed DBus-Glib delete this option:
ac_add_options --disable-dbus
# If you have installed wireless-tools delete this option:
ac_add_options --disable-necko-wifi
# If you have installed libnotify delete this option:
ac_add_options --disable-libnotify
# Uncomment these if you have installed them:
# ac_add_options --with-system-nspr
# ac_add_options --with-system-nss
# ac_add_options --enable-system-sqlite
# ac_add_options --with-system-libvpx
# ac_add_options --enable-startup-notification
# ac_add_options --enable-system-hunspell
# ac_add_options --with-system-libevent
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/xulrunner-build-dir
ac_add_options --prefix=/usr
ac_add_options --enable-application=xulrunner
ac_add_options --with-pthreads
ac_add_options --enable-system-ffi
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --enable-system-cairo
ac_add_options --with-system-zlib
ac_add_options --enable-shared
ac_add_options --disable-static
ac_add_options --disable-debug
ac_add_options --disable-crashreporter
ac_add_options --disable-installer
ac_add_options --disable-updater
ac_add_options --disable-tests
EOF</userinput></screen>
<para>
Install <application>Xulrunner</application> by issuing the following
commands:
</para>
<screen><userinput>sed -i 's#VPX_CODEC_USE_INPUT_PARTITION#VPX_CODEC_USE_INPUT_FRAGMENTS#' configure &amp;&amp;
sed -i '/Version/aRequires: nspr &gt;= &nspr-version;' xulrunner/installer/libxul-embedding.pc.in &amp;&amp;
make -f client.mk</userinput></screen>
<para>
This package does not come with a test suite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make -C xulrunner-build-dir install &amp;&amp;
mkdir -p /usr/lib/mozilla &amp;&amp;
rm -rf /usr/lib/xulrunner-&xulrunner-version;/plugins &amp;&amp;
ln -sv ../mozilla/plugins /usr/lib/xulrunner-&xulrunner-version; &amp;&amp;
chown -Rv root:root /usr/{include,lib,share/idl}/xulrunner-*</userinput></screen>
<para>
If you elected to use the included NSPR and NSS (ie, if you have
<emphasis>not</emphasis> installed <xref linkend="nspr"/> and
<xref linkend="nss"/>), while still the
<systemitem class="username">root</systemitem> user, complete the
installation with the following commands:
</para>
<screen role="root"><userinput>for DL in libnss3.so libnssutil3.so libsmime3.so \
libssl3.so libsoftokn3.so libplds4.so libplc4.so libnspr4.so
do ln -sv xulrunner-&xulrunner-version;/${DL} /usr/lib
done &amp;&amp;
unset DL</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<command>sed -i 's#VPX_CODEC_USE_INPUT_PARTITION ...</command>: This fixes
<application>Xulrunner's</application> <command>configure</command>
script to properly detect <xref linkend="libvpx"/>. It is not needed if
you have libvpx-v0.9.7 or earlier installed or if you've not installed
<application>Libvpx</application>.
</para>
<para>
<command>sed ... Requires: nspr</command>: If you try to build some other
applications without this, the prtypes header from NSPR will not be found.
</para>
<para>
<command>make -f client.mk ...</command>: Mozilla products are packaged to
allow the use of a configuration file which can be used to pass the
configuration settings to the <command>configure</command> command.
<command>make</command> uses the <filename>client.mk</filename> file to
get initial configuration and setup parameters.
</para>
<para>
<command>ln -sv ../mozilla/plugins ...</command>: Some packages will
install browser plugins into
<filename class="directory">/usr/lib/mozilla/plugins</filename>.
Creating this symlink <application>Xulrunner</application> keeps
additional plugins in a common directory.
</para>
<para>
<command>for DL in ...</command>: The NSPR and NSS libraries shipped
with this package are installed into
<filename class="directory">/usr/lib/xulrunner-&xulrunner-version;</filename>
which means they will not be found at runtime. By using symbolic links
from <filename class="directory">/usr/lib</filename> the libraries will be
found and the links can be easily changed to point to a newer version
during an upgrade.
</para>
<note>
<para>
When you upgrade Xulrunner, remember to update the symlinks.
</para>
</note>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>xulrunner, and optionally nspr-config</seg>
<seg>Numerous libraries, browser components, plugins, extensions, and
helper modules installed in <filename
class="directory">/usr/lib/xulrunner-&xulrunner-version;</filename></seg>
<seg>/etc/gre.d, /usr/include/xulrunner-&xulrunner-version;,
/usr/lib/xulrunner-&xulrunner-version;,
/usr/lib/xulrunner-devel-&xulrunner-version;, and
/usr/share/idl/xulrunner-&xulrunner-version;</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="xulrunner-prog">
<term><command>xulrunner</command></term>
<listitem>
<para>
is a shell script, useful for identifying the version installed.
</para>
<indexterm zone="xulrunner xulrunner-prog">
<primary sortas="b-xulrunner">xulrunner</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>