<?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 libproxy-download-http "http://libproxy.googlecode.com/files/libproxy-&libproxy-version;.tar.gz">
  <!ENTITY libproxy-download-ftp  " ">
  <!ENTITY libproxy-md5sum        "509e03a488a61cd62bfbaf3ab6a2a7a5">
  <!ENTITY libproxy-size          "89 KB">
  <!ENTITY libproxy-buildsize     "23 MB">
  <!ENTITY libproxy-time          "0.2 SBU">
]>

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

  <sect1info>
    <othername>$LastChangedBy: bdubbs $</othername>
    <date>$Date: 2012-05-12 17:42:31 -0400 (Sat, 12 May 2012) $</date>
  </sect1info>

  <title>libproxy-&libproxy-version;</title>

  <indexterm zone="libproxy">
    <primary sortas="a-libproxy">libproxy</primary>
  </indexterm>

  <sect2 role="package">
    <title>Introduction to libproxy</title>

    <para>The <application>libproxy</application> package is a library that
    provides automatic proxy configuration management. This is useful in
    standardizing a way of dealing with proxy settings across all
    scenarios.</para>

    &lfs71_built;

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

    <bridgehead renderas="sect3">libproxy Dependencies</bridgehead>

    <bridgehead renderas="sect4">Required</bridgehead>
    <para role="required"><xref linkend="cmake"/></para>

    <bridgehead renderas="sect4">Recommended</bridgehead>
    <para role="recommended"><xref linkend="GConf"/> (Required if building <application>GNOME</application>)</para>

    <bridgehead renderas="sect4">Optional</bridgehead>
    <para role="optional"><xref linkend="x-window-system"/>,
    <xref linkend="python2"/>,
      <ulink url="https://developer.mozilla.org/en/XULRunner">xulrunner</ulink>,
    <xref linkend="webkitgtk"/> (built with <application>gtk+-2</application>) or
    <ulink url="http://webkit.org/">WebKit</ulink>, and
    <xref linkend="NetworkManager"/></para>

    <para condition="html" role="usernotes">User Notes:
    <ulink url="&blfs-wiki;/libproxy"/></para>

  </sect2>

  <sect2 role="installation">
    <title>Installation of libproxy</title>

    <note><para>Many messages are produced by <command>tar</command> when
    extracting this package similar to:
    <code>[ tar: Ignoring unknown extended header keyword `SCHILY.dev' ]</code>.
    They can be ignored.</para></note>

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

<screen><userinput>sed -i 's@cx, 1, \&amp;arg@cx, arg, vp@' \
    libproxy/modules/pacrunner_mozjs.cpp &amp;&amp;
cmake -DCMAKE_INSTALL_PREFIX=/usr . &amp;&amp;
make</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 install</userinput></screen>

  </sect2>

  <!--Optional section-->
  <sect2 role="commands">
    <title>Command Explanations</title>

    <para><command>sed -i...libproxy/modules/pacrunner_mozjs.cpp</command>:
    This command fixes a build issue with recent xulrunner.</para>

    <para><option>-DWITH_GNOME3=ON</option>: This option builds the GNOME
    configuration plugin.</para>

    <para><option>-DWITH_KDE4=ON</option>: This option builds the KDE configuration
    plugin.</para>

    <para><option>-DWITH_WEBKIT=ON</option>: This option builds the WebKit
    JavaScriptCore PAC runner plugin.</para>

    <para><option>-DWITH_MOZJS=ON</option>: This option builds the Mozilla
    JavaScript PAC runner plugin.</para>

    <para><option>-DWITH_NM=ON</option>: This option builds the
    NetworkManager plugin.</para>

    <para><option>-DWITH_PYTHON=ON</option>: This option builds the Python
    bindings.</para>

  </sect2>

  <!--Required section-->
  <sect2 role="content">
    <title>Contents</title>

    <segmentedlist>
      <segtitle>Installed Program</segtitle>
      <segtitle>Installed Library</segtitle>
      <segtitle>Installed Directory</segtitle>

      <seglistitem>
        <seg>proxy</seg>
        <seg>libproxy.{so,a}, and various
        <application>libproxy</application> plugins</seg>
        <seg>/usr/lib/libproxy/&libproxy-version;/plugins</seg>
      </seglistitem>
    </segmentedlist>

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

      <varlistentry id="proxy">
        <term><command>proxy</command></term>
        <listitem>
          <para>is a sample interactive program which lists an array of
          proxies to use based on a url typed.</para>
          <indexterm zone="libproxy proxy">
            <primary sortas="b-proxy">proxy</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="libproxy-lib">
        <term><filename class='libraryfile'>libproxy.so</filename></term>
        <listitem>
          <para>contains the <application>libproxy</application> API functions.</para>
          <indexterm zone="libproxy libproxy-lib">
            <primary sortas="c-libproxy">libproxy.so</primary>
          </indexterm>
        </listitem>
      </varlistentry>

    </variablelist>

  </sect2>

</sect1>
