<?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 webkitgtk26-download-http "http://webkitgtk.org/releases/webkitgtk-&webkitgtk26-version;.tar.xz">
  <!ENTITY webkitgtk26-download-ftp  " ">
  <!ENTITY webkitgtk26-md5sum        "44addb5ccdace97642cb7656382293bb">
  <!ENTITY webkitgtk26-size          "9.6 MB">
  <!ENTITY webkitgtk26-buildsize     "877 MB (94 MB installed)">
  <!ENTITY webkitgtk26-time          "29 SBU (using parallelism=4)">
]>

<sect1 id="webkitgtk26" xreflabel="WebKitGTK+-&webkitgtk26-version;">
  <?dbhtml filename="webkitgtk26.html"?>

  <sect1info>
    <othername>$LastChangedBy: bdubbs $</othername>
    <date>$Date: 2015-03-02 17:33:58 -0500 (Mon, 02 Mar 2015) $</date>
  </sect1info>

  <title>WebKitGTK+-&webkitgtk26-version;</title>

  <indexterm zone="webkitgtk26">
    <primary sortas="a-WebKitGTK+">WebKitGTK+</primary>
  </indexterm>

  <sect2 role="package">
    <title>Introduction to WebKitGTK+</title>

    <para>
      The <application>WebKitGTK+</application> is the port of the portable web
      rendering engine <application>WebKit</application> to the
      <application>GTK+ 3</application> and <application>GTK+ 2</application>
      platforms.
    </para>

    &lfs77_checked;

    <bridgehead renderas="sect3">Package Information</bridgehead>
    <itemizedlist spacing="compact">
      <listitem>
        <para>
          Download (HTTP): <ulink url="&webkitgtk26-download-http;"/>
        </para>
      </listitem>
      <listitem>
        <para>
          Download (FTP): <ulink url="&webkitgtk26-download-ftp;"/>
        </para>
      </listitem>
      <listitem>
        <para>
          Download MD5 sum: &webkitgtk26-md5sum;
        </para>
      </listitem>
      <listitem>
        <para>
          Download size: &webkitgtk26-size;
        </para>
      </listitem>
      <listitem>
        <para>
          Estimated disk space required: &webkitgtk26-buildsize;
        </para>
      </listitem>
      <listitem>
        <para>
          Estimated build time: &webkitgtk26-time;
        </para>
      </listitem>
    </itemizedlist>

    <bridgehead renderas="sect3">WebKitGTK+ Dependencies</bridgehead>

    <bridgehead renderas="sect4">Required</bridgehead>
    <para role="required">
      <xref linkend="cmake"/>,
      <xref linkend="gst10-plugins-base"/>,
      <xref linkend="gtk2"/>,
      <xref linkend="gtk3"/>,
      <xref linkend="icu"/>,
      <xref linkend="libsecret"/>,
      <xref linkend="libsoup"/>,
      <xref linkend="libwebp"/>,
      <xref linkend="mesalib"/>,
      <xref linkend="ruby"/>,
      <xref linkend="sqlite"/>,
      <xref linkend="udev-extras"/> (for GUdev) and
      <xref linkend="which"/>
    </para>

    <bridgehead renderas="sect4">Recommended</bridgehead>
    <para role="recommended">
      <xref linkend="enchant"/>,
      <xref linkend="geoclue"/>,
      <xref linkend="gobject-introspection"/>,
      <xref linkend="hicolor-icon-theme"/>
    </para>

    <bridgehead renderas="sect4">Optional</bridgehead>
    <para role="optional">
      <xref linkend="gtk-doc"/>,
      <xref linkend="harfbuzz"/>,
      <xref linkend="llvm"/>,
      <ulink url="http://gitorious.org/geoclue2/">GeoClue2</ulink>, 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>

    <bridgehead renderas="sect3">Installation of
    <application>WebKitGTK+</application></bridgehead>

    <para>
      Install <application>WebKitGTK+</application> by running the
      following commands:
    </para>

<screen><userinput>sed -i 's/”/\"/g' Source/WebCore/xml/XMLViewer.{css,js} &amp;&amp;

mkdir -vp build &amp;&amp;
cd build        &amp;&amp;

cmake -DCMAKE_BUILD_TYPE=Release  \
      -DCMAKE_INSTALL_PREFIX=/usr \
      -DCMAKE_SKIP_RPATH=ON       \
      -DPORT=GTK                  \
      -DLIB_INSTALL_DIR=/usr/lib  \
      -Wno-dev .. &amp;&amp;
make</userinput></screen>

    <para>
      This package does not have a working testsuite.<!-- However, there are two
      useable basic graphical web browsers in the build directory,
      <application>Programs/GtkLauncher</application> and
      <application>Programs/MiniBrowser</application>. If launching any one
      fails, there is a problem with the build.-->
    </para>

    <note><para>
      When installing, the Makefile does some additional compiling and linking.
      If you do not have Xorg in /usr, the LIBRARY_PATH and PKG_CONFIG_PATH
      variables need to be defined for the root user.  If using sudo to assume
      root, use the -E option to pass your current environment variables for the
      install process.
    </para></note>

    <para>
      Now, as the <systemitem class="username">root</systemitem> user:
    </para>

<screen role="root"><userinput>make install &amp;&amp;

install -vdm755 /usr/share/gtk-doc/html/webkit{2,dom}gtk-4.0 &amp;&amp;
install -vm644  ../Documentation/webkit2gtk/html/* \
                /usr/share/gtk-doc/html/webkit2gtk-4.0 &amp;&amp;
install -vm644  ../Documentation/webkitdomgtk/html/* \
                /usr/share/gtk-doc/html/webkitdomgtk-4.0</userinput></screen>

  </sect2>

  <sect2 role="commands">
    <title>Command Explanations</title>

    <para>
      <command>sed -i ...</command>: Fixes typos in two source code files.
    </para>

    <para>
      <option>-DUSE_SYSTEM_MALLOC=ON</option>: This switch enables building
      against the system installed <application>malloc</application>.
    </para>

    <para>
      <option>-DENABLE_GEOLOCATION=OFF</option>: Use this switch if you don't
      want to install <xref linkend="geoclue"/> or
      <ulink url="http://gitorious.org/geoclue2/">GeoClue2</ulink>.
    </para>

    <para>
      <option>-DENABLE_GTKDOC=ON</option>: Use this switch if <xref
      linkend="gtk-doc"/> is installed and you wish to rebuild and install the
      API documentation.
    </para>

  </sect2>

  <sect2 role="content">
    <title>Contents</title>

    <segmentedlist>
      <segtitle>Installed Program</segtitle>
      <segtitle>Installed Libraries</segtitle>
      <segtitle>Installed Directories</segtitle>

      <seglistitem>
        <seg>
          jsc
        </seg>
        <seg>
          libjavascriptcoregtk-4.0.so and
          libwebkit2gtk-4.0.so
        </seg>
        <seg>
          /usr/include/webkitgtk-4.0,
          /usr/lib/webkit2gtk-4.0,
          /usr/libexec/webkit2gtk-4.0,
          /usr/share/gtk-doc/html/webkit2gtk-4.0, and
          /usr/share/gtk-doc/html/webkitdomgtk-4.0
        </seg>
      </seglistitem>
    </segmentedlist>

    <variablelist>
      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
      <?dbfo list-presentation="list"?>
      <?dbhtml list-presentation="table"?>

      <varlistentry id="jsc">
        <term><command>jsc</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="webkitgtk26 jsc">
            <primary sortas="b-jsc">jsc</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="libjavascriptcoregtk-4.0">
        <term><filename
        class="libraryfile">libjavascriptcoregtk-4.0.so</filename></term>
        <listitem>
          <para>
            contains core JavaScript API functions used by
            <command>jsc</command> and <filename
            class="libraryfile">libwebkit2gtk-4.0</filename>.
          </para>
          <indexterm zone="webkitgtk26 libjavascriptcoregtk-4.0">
            <primary sortas="c-libjavascriptcoregtk-4.0">libjavascriptcoregtk-4.0.0.so</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="libwebkit2gtk-4">
        <term><filename class="libraryfile">libwebkit2gtk-4.0.so</filename></term>
        <listitem>
          <para>
            contains the <application>WebKit2</application> API functions.
          </para>
          <indexterm zone="webkitgtk26 libwebkit2gtk-4">
            <primary sortas="c-libwebkit2gtk-4">libwebkit2gtk-4.0.so</primary>
          </indexterm>
        </listitem>
      </varlistentry>

    </variablelist>

  </sect2>

</sect1>
