r4719 - in trunk/BOOK: . general/prog introduction/welcome

randy at linuxfromscratch.org randy at linuxfromscratch.org
Wed Jul 13 17:51:11 PDT 2005


Author: randy
Date: 2005-07-13 18:51:10 -0600 (Wed, 13 Jul 2005)
New Revision: 4719

Modified:
   trunk/BOOK/general.ent
   trunk/BOOK/general/prog/perl-modules.xml
   trunk/BOOK/introduction/welcome/changelog.xml
Log:
Complete overhaul of the Perl Modules; module version updates, new modules, additional dependencies, removal of obsolete modules, text rewrite and new layout

Modified: trunk/BOOK/general/prog/perl-modules.xml
===================================================================
--- trunk/BOOK/general/prog/perl-modules.xml	2005-07-13 01:00:36 UTC (rev 4718)
+++ trunk/BOOK/general/prog/perl-modules.xml	2005-07-14 00:51:10 UTC (rev 4719)
@@ -25,13 +25,14 @@
   <sect2 role="package">
     <title>Introduction to Perl Modules</title>
 
-    <para>The <application>Perl</application> module packages add useful objects
-    to the <application>Perl</application> language.  Modules utilized by packages
-    throughout BLFS are listed here, along with their dependencies. Most references to
-    <application>Perl</application> modules are in the form of Module, Module::SubName
-    or Module::Sub::Name, however occasionally you'll also see Module, Module-SubName
-    or Module-Sub-Name. Most references on this page are in the latter form, as these
-    are the official package names.</para>
+    <para>The <application>Perl</application> module packages add useful
+    objects to the <application>Perl</application> language. Modules utilized
+    by packages throughout BLFS are listed here, along with their dependencies.
+    Most references to <application>Perl</application> modules are in the form
+    of Module, Module::SubName or Module::Sub::Name, however occasionally
+    you'll also see Module, Module-SubName or Module-Sub-Name. Most references
+    on this page are in the latter form, as these are the official package
+    names.</para>
 
     <itemizedlist spacing="compact">
       <listitem>
@@ -44,93 +45,388 @@
       </listitem>
     </itemizedlist>
 
-    <bridgehead renderas="sect3" id="perl-module-info">The Module::Info Module</bridgehead>
+    <bridgehead renderas="sect3" id="perl-module-info"
+    xreflabel="Module::Info">The Module::Info Module</bridgehead>
 
     <indexterm zone="perl-modules perl-module-info">
       <primary sortas="g-Module-Info">Module::Info</primary>
     </indexterm>
 
     <para>One module in particular is shown first, as this module's usefulness
-    warrants installation, even though it won't be required by many other modules.
-    The Module::Info module can tell you if a particular module is included in,
-    or has been installed into your <application>Perl</application> installation.
-    Additionally, the module can tell you what versions are installed and what
-    dependencies are required for them. You can even use Module::Info to gather
-    dependencies of uninstalled modules.</para>
+    warrants installation, even though it won't be required by many other
+    modules. The Module::Info module can tell you if a particular module is
+    included in, or has been installed into your <application>Perl</application>
+    installation. Additionally, Module::Info can tell you what versions are
+    installed and what dependencies are required for them. You can even use
+    Module::Info to gather dependencies of uninstalled modules.</para>
 
     <itemizedlist spacing='compact'>
       <listitem>
         <para><ulink
         url="http://www.cpan.org/authors/id/M/MB/MBARBON/Module-Info-&Module-Info-version;.tar.gz">
-        Module-Info-&Module-Info-version;</ulink></para>
+        Module-Info-&Module-Info-version;</ulink>
+        (<xref linkend="perl-standard-install"/>)</para>
       </listitem>
     </itemizedlist>
 
-    <bridgehead renderas="sect3">Perl Module Packages</bridgehead>
+    <bridgehead renderas="sect3" id="perl-test-pod"
+    xreflabel="Test::Pod">The Test::Pod Module</bridgehead>
 
+    <indexterm zone="perl-modules perl-test-pod">
+      <primary sortas="g-Test-Pod">Test::Pod</primary>
+    </indexterm>
+
+    <para>Another useful module, and one which is (typically optionally) used
+    by other modules during the build process is the Test:Pod module. This
+    module is used to check the validity of POD (Plain Old Documentation)
+    files. The Test::Pod module is typically included by module authors to
+    automatically find and check all POD files in a module distribution. This
+    module and all the dependencies can be installed using the
+    <xref linkend="perl-standard-install"/>.</para>
+
     <itemizedlist spacing='compact'>
       <listitem>
-        <para id="perl-gtk-perl"><ulink
-        url="http://www.cpan.org/authors/id/M/ML/MLEHMANN/Gtk-Perl-&Gtk-Perl-version;.tar.gz">
-        Gtk-Perl-&Gtk-Perl-version;</ulink></para>
-        <indexterm zone="perl-modules perl-gtk-perl">
-          <primary sortas="g-Gtk-Perl">Gtk::Perl</primary>
-        </indexterm>
+        <para><ulink
+        url="http://www.cpan.org/authors/id/P/PE/PETDANCE/Test-Pod-&Test-Pod-version;.tar.gz">
+        Test-Pod-&Test-Pod-version;</ulink></para>
+
         <itemizedlist>
           <listitem>
-            <para id="perl-xml-writer"><ulink
-            url="http://www.cpan.org/authors/id/J/JO/JOSEPHW/XML-Writer-&XML-Writer-version;.tar.gz">
-            XML-Writer-&XML-Writer-version;</ulink></para>
-            <indexterm zone="perl-modules perl-xml-writer">
-              <primary sortas="g-XML-Writer">XML::Writer</primary>
+            <para id="perl-pod-simple"><ulink
+            url="http://www.cpan.org/authors/id/S/SB/SBURKE/Pod-Simple-&Pod-Simple-version;.tar.gz">
+            Pod-Simple-&Pod-Simple-version;</ulink></para>
+            <indexterm zone="perl-modules perl-pod-simple">
+              <primary sortas="g-Pod-Simple">Pod::Simple</primary>
             </indexterm>
+
+            <itemizedlist>
+              <listitem>
+                <para id="perl-pod-escapes"><ulink
+                url="http://www.cpan.org/authors/id/S/SB/SBURKE/Pod-Escapes-&Pod-Escapes-version;.tar.gz">
+                Pod-Escapes-&Pod-Escapes-version;</ulink></para>
+                <indexterm zone="perl-modules perl-pod-escapes">
+                  <primary sortas="g-Pod-Escapes">Pod::Escapes</primary>
+                </indexterm>
+              </listitem>
+            </itemizedlist>
+
           </listitem>
           <listitem>
-            <para id="perl-xml-parser"><ulink
-            url="http://www.cpan.org/authors/id/M/MS/MSERGEANT/XML-Parser-&XML-Parser-version;.tar.gz">
-            XML-Parser-&XML-Parser-version;</ulink></para>
-            <indexterm zone="perl-modules perl-xml-parser">
-              <primary sortas="g-XML-Parser">XML::Parser</primary>
+            <para id="perl-test-builder-tester"><ulink
+            url="http://www.cpan.org/authors/id/M/MA/MARKF/Test-Builder-Tester-&Test-Builder-Tester-version;.tar.gz">
+            Test-Builder-Tester-&Test-Builder-Tester-version;</ulink></para>
+            <indexterm zone="perl-modules perl-test-builder-tester">
+              <primary sortas="g-Test-Builder-Tester">
+              Test::Builder::Tester</primary>
             </indexterm>
+          </listitem>
+        </itemizedlist>
+
+      </listitem>
+    </itemizedlist> 
+
+    <bridgehead renderas="sect3" id="perl-module-build"
+    xreflabel="Module::Build">The Module::Build Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-module-build">
+      <primary sortas="g-Module-Build">Module::Build</primary>
+    </indexterm>
+
+    <para>The Module::Build module is a system for building, testing, and
+    installing <application>Perl</application> modules. It is meant to be an
+    alternative to ExtUtils::MakeMaker. Developers may alter the behavior of
+    the module through subclassing in a much more straightforward way than with
+    MakeMaker. It also does not require a <command>make</command> command on
+    your system. Most of the Module::Build code is
+    pure-<application>Perl</application> and written in a very cross-platform
+    way.</para>
+
+    <para>The Module::Build module (as well as any other
+    <application>Perl</application> module that uses the Module::Build build
+    system) uses <xref linkend="perl-module-build-install"/>. All the
+    dependencies can be installed using the
+    <xref linkend="perl-standard-install"/>.</para>
+
+    <note>
+      <para>The Compress::Zlib module requires the following
+      <command>sed</command> after untarring the distribution tarball (before
+      any other build commands) to use the system-installed copy of
+      <application>Zlib</application>.</para>
+
+<screen><userinput>sed -i -e "s|BUILD_ZLIB = True|BUILD_ZLIB = False|" \
+       -e "s|INCLUDE    = ./zlib-src|INCLUDE    = /usr/include|" \
+       -e "s|LIB        = ./zlib-src|LIB        = /usr/lib|" \
+    config.in</userinput></screen>
+    </note>
+
+    <itemizedlist spacing='compact'>
+      <listitem>
+        <para><ulink
+        url="http://www.cpan.org/authors/id/K/KW/KWILLIAMS/Module-Build-&Module-Build-version;.tar.gz">
+        Module-Build-&Module-Build-version;</ulink></para>
+
+        <itemizedlist>
+          <listitem>
+            <para id="perl-module-signature"><ulink
+            url="http://www.cpan.org/authors/id/A/AU/AUTRIJUS/Module-Signature-&Module-Signature-version;.tar.gz">
+            Module-Signature-&Module-Signature-version;</ulink> (optional)</para>
+            <indexterm zone="perl-modules perl-module-signature">
+              <primary sortas="g-Module-Signature">Module::Signature</primary>
+            </indexterm>
+
             <itemizedlist>
               <listitem>
-                <para><xref linkend="expat"/></para>
+                <para id="perl-digest-sha"><ulink
+                url="http://www.cpan.org/authors/id/M/MS/MSHELOR/Digest-SHA-&Digest-SHA-version;.tar.gz">
+                Digest-SHA-&Digest-SHA-version;</ulink></para>
+                <indexterm zone="perl-modules perl-digest-sha">
+                  <primary sortas="g-Digest-SHA">Digest::SHA</primary>
+                </indexterm>
               </listitem>
+              <listitem>
+                <para id="perl-par-dist"><ulink
+                url="http://www.cpan.org/authors/id/A/AU/AUTRIJUS/PAR-Dist-&PAR-Dist-version;.tar.gz">
+                PAR-Dist-&PAR-Dist-version;</ulink></para>
+                <indexterm zone="perl-modules perl-par-dist">
+                  <primary sortas="g-PAR-Dist">PAR::Dist</primary>
+                </indexterm>
+              </listitem>
+              <listitem>
+                <para><xref linkend="gnupg"/></para>
+              </listitem>
             </itemizedlist>
+
           </listitem>
           <listitem>
-            <para><xref linkend="GTK"/></para>
+            <para id="perl-extutils-parsexs"><ulink
+            url="http://www.cpan.org/authors/id/K/KW/KWILLIAMS/ExtUtils-ParseXS-&ExtUtils-ParseXS-version;.tar.gz">
+            ExtUtils-ParseXS-&ExtUtils-ParseXS-version;</ulink></para>
+            <indexterm zone="perl-modules perl-extutils-parsexs">
+              <primary sortas="g-ExtUtils-ParseXS">ExtUtils::ParseXS</primary>
+            </indexterm>
+
+            <itemizedlist>
+              <listitem>
+                <para id="perl-extutils-cbuilder"><ulink
+                url="http://www.cpan.org/authors/id/K/KW/KWILLIAMS/ExtUtils-CBuilder-&ExtUtils-CBuilder-version;.tar.gz">
+                ExtUtils-CBuilder-&ExtUtils-CBuilder-version;</ulink></para>
+                <indexterm zone="perl-modules perl-extutils-cbuilder">
+                  <primary sortas="g-ExtUtils-CBuilder">ExtUtils::CBuilder</primary>
+                </indexterm>
+              </listitem>
+            </itemizedlist>
+
           </listitem>
+          <listitem>
+            <para id="perl-archive-tar"><ulink
+            url="http://www.cpan.org/authors/id/K/KA/KANE/Archive-Tar-&Archive-Tar-version;.tar.gz">
+            Archive-Tar-&Archive-Tar-version;</ulink></para>
+            <indexterm zone="perl-modules perl-archive-tar">
+              <primary sortas="g-Archive-Tar">Archive::Tar</primary>
+            </indexterm>
+
+            <itemizedlist>
+              <listitem>
+                <para id="perl-io-zlib"><ulink
+                url="http://www.cpan.org/authors/id/T/TO/TOMHUGHES/IO-Zlib-&IO-Zlib-version;.tar.gz">
+                IO-Zlib-&IO-Zlib-version;</ulink></para>
+                <indexterm zone="perl-modules perl-io-zlib">
+                  <primary sortas="g-IO-Zlib">IO::Zlib</primary>
+                </indexterm>
+
+                <itemizedlist>
+                  <listitem>
+                    <para id="perl-compress-zlib"><ulink
+                    url="http://www.cpan.org/authors/id/P/PM/PMQS/Compress-Zlib-&Compress-Zlib-version;.tar.gz">
+                    Compress-Zlib-&Compress-Zlib-version;</ulink></para>
+                    <indexterm zone="perl-modules perl-compress-zlib">
+                      <primary sortas="g-Compress-Zlib">Compress::Zlib</primary>
+                    </indexterm>
+                  </listitem>
+                </itemizedlist>
+
+              </listitem>
+              <listitem>
+                <para><xref linkend="perl-test-pod"/></para>
+              </listitem>
+            </itemizedlist>
+
+          </listitem>
+          <listitem>
+            <para id="perl-yaml"><ulink
+            url="http://www.cpan.org/authors/id/I/IN/INGY/YAML-&YAML-version;.tar.gz">
+            YAML-&YAML-version;</ulink></para>
+            <indexterm zone="perl-modules perl-yaml">
+              <primary sortas="g-YAML">YAML</primary>
+            </indexterm>
+          </listitem>
         </itemizedlist>
+
       </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect4" id="perl-module-build-install"
+    xreflabel="modified build instructions">Module::Build Build and
+    Installation Instructions</bridgehead>
+
+<screen><userinput>perl Build.PL &&
+./Build test</userinput></screen>
+
+    <para>Now, as the <systemitem class='username'>root</systemitem> user:</para>
+
+<screen role='root'><userinput>./Build install</userinput></screen>
+
+    <bridgehead renderas="sect3" id="perl-html-parser"
+    xreflabel="HTML::Parser">The HTML::Parser Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-html-parser">
+      <primary sortas="g-HTML-Parser">HTML::Parser</primary>
+    </indexterm>
+
+    <para>The HTML::Parser distribution is a collection of modules that parse
+    and extract information from HTML documents. In order to use the included
+    HTML::HeadParser module, you will also need to install
+    <xref linkend="perl-lwp"/>. The two modules listed below can be installed
+    using the <application>Perl</application> Module
+    <xref linkend="perl-standard-install"/>.</para>
+
+    <itemizedlist spacing='compact'>
       <listitem>
-        <para id="perl-sgmlspm"><ulink
+        <para><ulink
+        url="http://www.cpan.org/authors/id/G/GA/GAAS/HTML-Parser-&HTML-Parser-version;.tar.gz">
+        HTML-Parser-&HTML-Parser-version;</ulink></para>
+
+        <itemizedlist>
+          <listitem>
+            <para id="perl-html-tagset"><ulink
+            url="http://www.cpan.org/authors/id/S/SB/SBURKE/HTML-Tagset-&HTML-Tagset-version;.tar.gz">
+            HTML-Tagset-&HTML-Tagset-version;</ulink></para>
+            <indexterm zone="perl-modules perl-html-tagset">
+              <primary sortas="g-HTML-Tagset">HTML::Tagset</primary>
+            </indexterm>
+          </listitem>
+        </itemizedlist>
+
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3" id="perl-xml-parser"
+    xreflabel="XML::Parser">The XML::Parser Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-xml-parser">
+      <primary sortas="g-XML-Parser">XML::Parser</primary>
+    </indexterm>
+
+    <para>The XML::Parser module is a <application>Perl</application> extension
+    interface to James Clark's XML parser,
+    <application>expat</application>. The module can be installed using the
+    <application>Perl</application> Module
+    <xref linkend="perl-standard-install"/>.</para>
+
+    <itemizedlist spacing='compact'>
+      <listitem>
+        <para><ulink
+        url="http://www.cpan.org/authors/id/M/MS/MSERGEANT/XML-Parser-&XML-Parser-version;.tar.gz">
+        XML-Parser-&XML-Parser-version;</ulink></para>
+
+        <itemizedlist>
+          <listitem>
+            <para><xref linkend="expat"/></para>
+          </listitem>
+        </itemizedlist>
+
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3" id="perl-sgmlspm"
+    xreflabel="SGMLSpm">The SGMLSpm Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-sgmlspm">
+      <primary sortas="g-SGMLSpm">SGMLSpm</primary>
+    </indexterm>
+
+    <para>The SGMLSpm module is a <application>Perl</application> library
+    used for parsing the output from James Clark's SGMLS and NSGMLS
+    parsers. This module requires modified installation instructions, shown
+    below.</para>
+
+    <itemizedlist spacing='compact'>
+      <listitem>
+        <para><ulink
         url="http://www.cpan.org/authors/id/D/DM/DMEGG/SGMLSpm-&SGMLSpm-version;.tar.gz">
         SGMLSpm-&SGMLSpm-version;</ulink></para>
-        <indexterm zone="perl-modules perl-sgmlspm">
-          <primary sortas="g-SGMLSpm">SGMLSpm</primary>
-        </indexterm>
       </listitem>
+    </itemizedlist>
+
+    <para>If your system's <application>Perl</application> version is different
+    than &LFS-Perl-version;, you'll need to modify the <command>sed</command>
+    command below to reflect the version you have installed.</para>
+
+<screen><userinput>sed -i -e "s@/usr/local/bin@/usr/bin@" \
+       -e "s@/usr/local/lib/perl5@/usr/lib/perl5/site_perl/&LFS-Perl-version;@" \
+       -e "s@/usr/local/lib/www/docs@/usr/share/doc/perl5@" \
+    Makefile</userinput></screen>
+
+    <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
+
+<screen role="root"><userinput>make install &&
+install -v -d -m755 /usr/share/doc/perl5 &&
+make install_html &&
+rm -v -f /usr/share/doc/perl5/SGMLSpm/sample.pl &&
+install -v -m644 DOC/sample.pl /usr/share/doc/perl5/SGMLSpm</userinput></screen>
+
+    <bridgehead renderas="sect3" id="perl-tk"
+    xreflabel="Tk">The Tk Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-tk">
+      <primary sortas="g-Tk">Tk</primary>
+    </indexterm>
+
+    <para>The <application>Tk</application> module is a 
+    <application>Perl</application> interface to the
+    <application>Tk</application> package. The goal of this release is Unicode
+    support via <application>Perl</application>'s and
+    core-<application>Tk</application>'s use of UTF-8. Tk-&Perl-Tk-version;
+    builds and loads into a threaded <application>Perl</application> but is NOT
+    yet thread safe. The module can be installed using the
+    <application>Perl</application> Module
+    <xref linkend="perl-standard-install"/>.</para>
+
+    <itemizedlist spacing='compact'>
       <listitem>
-        <para id="perl-perl-tk"><ulink
+        <para><ulink
         url="http://www.cpan.org/authors/id/N/NI/NI-S/Tk-&Perl-Tk-version;.tar.gz">
         Tk-&Perl-Tk-version;</ulink></para>
-        <indexterm zone="perl-modules perl-perl-tk">
-          <primary sortas="g-Perl-Tk">Perl::Tk</primary>
-        </indexterm>
+
         <itemizedlist>
           <listitem>
             <para><xref linkend="tk"/> and <xref linkend="libjpeg"/></para>
           </listitem>
         </itemizedlist>
+
       </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3" id="perl-net-dns"
+    xreflabel="Net-DNS">The Net::DNS Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-net-dns">
+      <primary sortas="g-Net-DNS">Net::DNS</primary>
+    </indexterm>
+
+    <para>Net::DNS is a DNS resolver implemented in
+    <application>Perl</application>. It can be used to perform nearly any type
+    of DNS query from a <application>Perl</application> script. The Net::DNS
+    module and all its dependencies can be installed using the
+    <application>Perl</application> Module
+    <xref linkend="perl-standard-install"/>.</para>
+
+    <itemizedlist spacing='compact'>
       <listitem>
-        <para id="perl-net-dns"><ulink
-        url="http://www.cpan.org/authors/id/C/CR/CREIN/Net-DNS-&Net-DNS-version;.tar.gz">
+        <para><ulink
+        url="http://www.cpan.org/authors/id/O/OL/OLAF/Net-DNS-&Net-DNS-version;.tar.gz">
         Net-DNS-&Net-DNS-version;</ulink></para>
-        <indexterm zone="perl-modules perl-net-dns">
-          <primary sortas="g-Net-DNS">Net::DNS</primary>
-        </indexterm>
+
         <itemizedlist>
           <listitem>
             <para id="perl-digest-hmac"><ulink
@@ -139,6 +435,7 @@
             <indexterm zone="perl-modules perl-digest-hmac">
               <primary sortas="g-Digest-HMAC">Digest::HMAC</primary>
             </indexterm>
+
             <itemizedlist>
               <listitem>
                 <para id="perl-digest-sha1"><ulink
@@ -149,16 +446,87 @@
                 </indexterm>
               </listitem>
             </itemizedlist>
+
           </listitem>
+          <listitem>
+            <para id="perl-net-ip"><ulink
+            url="http://www.cpan.org/authors/id/M/MA/MANU/Net-IP-&Net-IP-version;.tar.gz">
+            Net-IP-&Net-IP-version;</ulink></para>
+            <indexterm zone="perl-modules perl-net-ip">
+              <primary sortas="g-Net-IP">Net::IP</primary>
+            </indexterm>
+          </listitem>
+          <listitem>
+            <para id="perl-io-socket-inet6"><ulink
+            url="http://www.cpan.org/authors/id/M/MO/MONDEJAR/IO-Socket-INET6-&IO-Socket-INET6-version;.tar.gz">
+            IO-Socket-INET6-&IO-Socket-INET6-version;</ulink> (required for
+            IPv6 support)</para>
+            <indexterm zone="perl-modules perl-io-socket-inet6">
+              <primary sortas="g-IO-Socket-INET6">IO::Socket::INET6</primary>
+            </indexterm>
+
+            <itemizedlist>
+              <listitem>
+                <para id="perl-socket6"><ulink
+                url="http://www.cpan.org/authors/id/U/UM/UMEMOTO/Socket6-&Socket6-version;.tar.gz">
+                Socket6-&Socket6-version;</ulink></para>
+                <indexterm zone="perl-modules perl-socket6">
+                  <primary sortas="g-Socket6">Socket6</primary>
+                </indexterm>
+              </listitem>
+            </itemizedlist>
+
+          </listitem>
+          <listitem>
+            <para id="perl-digest-bubblebabble"><ulink
+            url="http://www.cpan.org/authors/id/B/BT/BTROTT/Digest-BubbleBabble-&Digest-BubbleBabble-version;.tar.gz">
+            Digest-BubbleBabble-&Digest-BubbleBabble-version;</ulink>
+            (optional, only used during the test suite)</para>
+            <indexterm zone="perl-modules perl-digest-bubblebabble">
+              <primary sortas="g-Digest-BubbleBabble">Digest::BubbleBabble</primary>
+            </indexterm>
+          </listitem>
         </itemizedlist>
+
       </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3" id="perl-lwp"
+    xreflabel="LWP">The LWP Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-lwp">
+      <primary sortas="g-LWP">LWP</primary>
+    </indexterm>
+
+    <para>The libwww-perl (LWP) collection is a set of
+    <application>Perl</application> modules which provides a simple and
+    consistent application programming interface to the World-Wide Web. The
+    main focus of the library is to provide classes and functions that allow
+    you to write WWW clients. The library also contains modules that are of
+    more general use and even classes that help you implement simple HTTP
+    servers. The LWP modules and all its <application>Perl</application>
+    module dependencies can be installed using the
+    <application>Perl</application> Module
+    <xref linkend="perl-standard-install"/>.</para>
+
+    <note>
+      <para>The Compress::Zlib module requires the following
+      <command>sed</command> after untarring the distribution tarball (before
+      any other build commands) to use the system-installed copy of
+      <application>Zlib</application>.</para>
+  
+<screen><userinput>sed -i -e "s|BUILD_ZLIB = True|BUILD_ZLIB = False|" \
+       -e "s|INCLUDE    = ./zlib-src|INCLUDE    = /usr/include|" \
+       -e "s|LIB        = ./zlib-src|LIB        = /usr/lib|" \
+    config.in</userinput></screen>
+    </note>
+
+    <itemizedlist spacing='compact'>
       <listitem>
-        <para id="perl-lwp"><ulink
+        <para><ulink
         url="http://www.cpan.org/authors/id/G/GA/GAAS/libwww-perl-&LWP-version;.tar.gz">
         LWP-&LWP-version;</ulink></para>
-        <indexterm zone="perl-modules perl-lwp">
-          <primary sortas="g-LWP">LWP</primary>
-        </indexterm>
+
         <itemizedlist>
           <listitem>
             <para id="perl-uri"><ulink
@@ -167,15 +535,17 @@
             <indexterm zone="perl-modules perl-uri">
               <primary sortas="g-URI">URI</primary>
             </indexterm>
+
             <itemizedlist>
               <listitem>
                 <para id="perl-business-isbn"><ulink
                 url="http://www.cpan.org/authors/id/B/BD/BDFOY/Business-ISBN-&Business-ISBN-version;.tar.gz">
-                Business-ISBN-&Business-ISBN-version;</ulink> (Only used during the
-                test suite)</para>
+                Business-ISBN-&Business-ISBN-version;</ulink> (optonal, only
+                used during the test suite)</para>
                 <indexterm zone="perl-modules perl-business-isbn">
                   <primary sortas="g-Business-ISBN">Business::ISBN</primary>
                 </indexterm>
+
                 <itemizedlist>
                   <listitem>
                     <para id="perl-business-isbn-data"><ulink
@@ -184,43 +554,10 @@
                     <indexterm zone="perl-modules perl-business-isbn-data">
                       <primary sortas="g-Business-ISBN-Data">Business::ISBN::Data</primary>
                     </indexterm>
+
                     <itemizedlist>
                       <listitem>
-                        <para id="perl-test-pod"><ulink
-                        url="http://www.cpan.org/authors/id/P/PE/PETDANCE/Test-Pod-&Test-Pod-version;.tar.gz">
-                        Test-Pod-&Test-Pod-version;</ulink></para>
-                        <indexterm zone="perl-modules perl-test-pod">
-                          <primary sortas="g-Test-Pod">Test::Pod</primary>
-                        </indexterm>
-                        <itemizedlist>
-                          <listitem>
-                            <para id="perl-pod-simple"><ulink
-                            url="http://www.cpan.org/authors/id/S/SB/SBURKE/Pod-Simple-&Pod-Simple-version;.tar.gz">
-                            Pod-Simple-&Pod-Simple-version;</ulink></para>
-                            <indexterm zone="perl-modules perl-pod-simple">
-                              <primary sortas="g-Pod-Simple">Pod::Simple</primary>
-                            </indexterm>
-                            <itemizedlist>
-                              <listitem>
-                                <para id="perl-pod-escapes"><ulink
-                                url="http://www.cpan.org/authors/id/S/SB/SBURKE/Pod-Escapes-&Pod-Escapes-version;.tar.gz">
-                                Pod-Escapes-&Pod-Escapes-version;</ulink></para>
-                                <indexterm zone="perl-modules perl-pod-escapes">
-                                  <primary sortas="g-Pod-Escapes">Pod::Escapes</primary>
-                                </indexterm>
-                              </listitem>
-                            </itemizedlist>
-                          </listitem>
-                          <listitem>
-                            <para id="perl-test-builder-tester"><ulink
-                            url="http://www.cpan.org/authors/id/M/MA/MARKF/Test-Builder-Tester-&Test-Builder-Tester-version;.tar.gz">
-                            Test-Builder-Tester-&Test-Builder-Tester-version;</ulink></para>
-                            <indexterm zone="perl-modules perl-test-builder-tester">
-                              <primary sortas="g-Test-Builder-Tester">
-                              Test::Builder::Tester</primary>
-                            </indexterm>
-                          </listitem>
-                        </itemizedlist>
+                        <para><xref linkend="perl-test-pod"/></para>
                       </listitem>
                       <listitem>
                         <para id="perl-test-prereq"><ulink
@@ -229,13 +566,15 @@
                         <indexterm zone="perl-modules perl-test-prereq">
                           <primary sortas="g-Test-Prereq">Test::Prereq</primary>
                         </indexterm>
+
                         <itemizedlist>
                           <listitem>
-                            <para><ulink
-                            url="http://www.cpan.org/authors/id/M/MB/MBARBON/Module-Info-&Module-Info-version;.tar.gz">
-                            Module-Info-&Module-Info-version;</ulink></para>
+                            <para><xref linkend="perl-module-info"/></para>
                           </listitem>
                           <listitem>
+                            <para><xref linkend="perl-module-build"/> (optional)</para>
+                          </listitem>
+                          <listitem>
                             <para id="perl-module-corelist"><ulink
                             url="http://www.cpan.org/authors/id/R/RG/RGARCIA/Module-CoreList-&Module-Corelist-version;.tar.gz">
                             Module-CoreList-&Module-Corelist-version;</ulink></para>
@@ -244,64 +583,111 @@
                             </indexterm>
                           </listitem>
                         </itemizedlist>
+
                       </listitem>
                     </itemizedlist>
+
                   </listitem>
                 </itemizedlist>
+
               </listitem>
             </itemizedlist>
+
           </listitem>
           <listitem>
-            <para id="perl-html-parser"><ulink
-            url="http://www.cpan.org/authors/id/G/GA/GAAS/HTML-Parser-&HTML-Parser-version;.tar.gz">
-            HTML-Parser-&HTML-Parser-version;</ulink></para>
-            <indexterm zone="perl-modules perl-html-parser">
-              <primary sortas="g-HTML-Parser">HTML::Parser</primary>
-            </indexterm>
-            <itemizedlist>
-              <listitem>
-                <para id="perl-html-tagset"><ulink
-                url="http://www.cpan.org/authors/id/S/SB/SBURKE/HTML-Tagset-&HTML-Tagset-version;.tar.gz">
-                HTML-Tagset-&HTML-Tagset-version;</ulink></para>
-                <indexterm zone="perl-modules perl-html-tagset">
-                  <primary sortas="g-HTML-Tagset">HTML::Tagset</primary>
-                </indexterm>
-              </listitem>
-            </itemizedlist>
+            <para><xref linkend="perl-html-parser"/></para>
           </listitem>
           <listitem>
-            <para id="perl-compress-zlib"><ulink
+            <para><ulink
             url="http://www.cpan.org/authors/id/P/PM/PMQS/Compress-Zlib-&Compress-Zlib-version;.tar.gz">
             Compress-Zlib-&Compress-Zlib-version;</ulink></para>
-            <indexterm zone="perl-modules perl-compress-zlib">
-              <primary sortas="g-Compress-Zlib">Compress::Zlib</primary>
-            </indexterm>
           </listitem>
           <listitem>
             <para id="perl-crypt-ssleay"><ulink
             url="http://www.cpan.org/authors/id/C/CH/CHAMAS/Crypt-SSLeay-&Crypt-SSLeay-version;.tar.gz">
-            Crypt-SSLeay-&Crypt-SSLeay-version;</ulink></para>
+            Crypt-SSLeay-&Crypt-SSLeay-version;</ulink> (optional, for HTTPS
+            support)</para>
             <indexterm zone="perl-modules perl-crypt-ssleay">
               <primary sortas="g-Crypt-SSLeay">Crypt::SSLeay</primary>
             </indexterm>
+
+            <itemizedlist>
+              <listitem>
+                <para><xref linkend="openssl"/></para>
+              </listitem>
+            </itemizedlist>
+
           </listitem>
         </itemizedlist>
+
       </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3" id="perl-date-manip"
+    xreflabel="Date::Manip">The Date::Manip Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-date-manip">
+      <primary sortas="g-Date-Manip">Date::Manip</primary>
+    </indexterm>
+
+    <para>Date::Manip is a set of routines designed to make any common
+    date/time manipulation easy to do. Operations such as comparing two times,
+    calculating a time a given amount of time from another, or parsing
+    international times are all easily done. From the very beginning, the
+    main focus of Date::Manip has been to be able to do ANY desired date/time
+    operation easily.</para>
+
+    <itemizedlist spacing='compact'>
       <listitem>
-        <para id="perl-datemanip"><ulink
+        <para><ulink
         url="http://www.cpan.org/authors/id/S/SB/SBECK/DateManip-&DateManip-version;.tar.gz">
-        DateManip-&DateManip-version;</ulink></para>
-        <indexterm zone="perl-modules perl-datemanip">
-          <primary sortas="g-DateManip">DateManip</primary>
-        </indexterm>
+        DateManip-&DateManip-version;</ulink>
+        (<xref linkend="perl-standard-install"/>)</para>
       </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3" id="perl-finance-quote"
+    xreflabel="Finance::Quote">The Finance::Quote Module</bridgehead>
+
+    <indexterm zone="perl-modules perl-finance-quote">
+      <primary sortas="g-Finance-Quote">Finance::Quote</primary>
+    </indexterm>
+
+    <para>Finance::Quote is used to get stock quotes from various Internet
+    sources, including Yahoo! Finance, Fidelity Investments, and the Australian
+    Stock Exchange. There are two methods of using this module – a
+    functional interface that is depreciated, and an object-orientated method
+    that provides greater flexibility and stability. With the exception of
+    straight currency exchange rates, all information is returned as a
+    two-dimensional hash (or a reference to such a hash, if called in a scalar
+    context).</para>
+
+    <para>After you've installed the package, issue
+    <command>perldoc Finance::Quote</command> for full information.
+    Alternatively, you can issue <command>perldoc lib/Finance/Quote.pm</command>
+    after unpacking the distribution tarball and changing into the top-level
+    directory. The module and dependencies can be installed using the
+    <application>Perl</application> module
+    <xref linkend="perl-standard-install"/>.</para>
+
+    <note>
+      <para>To run the regression test suite, you'll need to create a 
+      symbolic link to the <filename class='directory'>test</filename>
+      directory using the following command after unpacking the tarball
+      and changing into the root directory of the sources:</para>
+
+<screen><userinput>ln -s test t</userinput></screen>
+
+      <para>Some tests will fail depending on certain conditions. See the
+      <filename>INSTALL</filename> file for full details.</para>
+    </note>
+
+    <itemizedlist spacing='compact'>
       <listitem>
-        <para id="perl-finance-quote"><ulink
+        <para><ulink
         url="http://www.cpan.org/authors/id/P/PJ/PJF/Finance-Quote-&Finance-Quote-version;.tar.gz">
         Finance-Quote-&Finance-Quote-version;</ulink></para>
-        <indexterm zone="perl-modules perl-finance-quote">
-          <primary sortas="g-Finance-Quote">Finance::Quote</primary>
-        </indexterm>
+
         <itemizedlist>
           <listitem>
             <para id="perl-html-tableextract"><ulink
@@ -310,37 +696,30 @@
             <indexterm zone="perl-modules perl-html-tableextract">
               <primary sortas="g-HTML-TableExtract">HTML::TableExtract</primary>
             </indexterm>
+
             <itemizedlist>
               <listitem>
-                <para><ulink
-                url="http://www.cpan.org/authors/id/G/GA/GAAS/HTML-Parser-&HTML-Parser-version;.tar.gz">
-                HTML-Parser-&HTML-Parser-version;</ulink></para>
-                <itemizedlist>
-                  <listitem>
-                    <para><ulink
-                    url="http://www.cpan.org/authors/id/S/SB/SBURKE/HTML-Tagset-&HTML-Tagset-version;.tar.gz">
-                    HTML-Tagset-&HTML-Tagset-version;</ulink></para>
-                  </listitem>
-                </itemizedlist>
+                <para><xref linkend="perl-html-parser"/></para>
               </listitem>
             </itemizedlist>
+
           </listitem>
           <listitem>
-            <para><ulink
-            url="http://www.cpan.org/authors/id/G/GA/GAAS/libwww-perl-&LWP-version;.tar.gz">
-            LWP-&LWP-version;</ulink> (see dependencies above)</para>
+            <para><xref linkend="perl-lwp"/></para>
           </listitem>
         </itemizedlist>
+
       </listitem>
     </itemizedlist>
 
   </sect2>
 
-  <sect2 role="installation">
-    <title>Installation of Perl Modules</title>
+  <sect2 role="installation" id="perl-standard-install"
+  xreflabel="build and installation instructions">
+    <title>Standard Installation of Perl Modules</title>
 
-    <para>Install <application>Perl</application> modules by running the following
-    commands:</para>
+    <para>Install <application>Perl</application> modules by running the
+    following commands:</para>
 
 <screen><userinput>perl Makefile.PL &&
 make &&
@@ -350,44 +729,6 @@
 
 <screen role="root"><userinput>make install</userinput></screen>
 
-    <para>The modules listed below require modifications to the instructions in
-    order to install successfully.</para>
-
-    <sect3>
-      <title>Gtk-Perl-&Gtk-Perl-version;:</title>
-
-<screen><userinput>perl Makefile.PL --without-guessing &&
-make &&
-make test</userinput></screen>
-
-    <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
-
-<screen role="root"><userinput>make install</userinput></screen>
-
-    </sect3>
-
-    <sect3>
-      <title>SGMLSpm-&SGMLSpm-version;</title>
-
-      <para>If your system's <application>Perl</application> version is different
-      than &LFS-Perl-version;, you'll need to modify the <command>sed</command>
-      command below to reflect the version you have installed.</para>
-
-<screen><userinput>sed -i -e "s@/usr/local/bin@/usr/bin@" \
-    -e "s@/usr/local/lib/perl5@/usr/lib/perl5/site_perl/&LFS-Perl-version;@" \
-    -e "s@/usr/local/lib/www/docs@/usr/share/doc/perl5@" \
-    Makefile</userinput></screen>
-
-    <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
-
-<screen role="root"><userinput>make install &&
-install -v -d -m755 /usr/share/doc/perl5 &&
-make install_html &&
-rm -v -f /usr/share/doc/perl5/SGMLSpm/sample.pl &&
-install -v -m644 DOC/sample.pl /usr/share/doc/perl5/SGMLSpm</userinput></screen>
-
-    </sect3>
-
   </sect2>
 
   <sect2 role="installation">
@@ -414,6 +755,12 @@
 
     <para>For additional commands and help, type <command>help</command>.</para>
 
+    <para>Alternatively, for scripted or non-interactive installations, use the
+    following syntax as the
+    <systemitem class="username">root</systemitem> user:</para>
+
+<screen role="root"><userinput>perl -MCPAN -e 'install <replaceable>[Module::Name]</replaceable>'</userinput></screen>
+
   </sect2>
 
 </sect1>

Modified: trunk/BOOK/general.ent
===================================================================
--- trunk/BOOK/general.ent	2005-07-13 01:00:36 UTC (rev 4718)
+++ trunk/BOOK/general.ent	2005-07-14 00:51:10 UTC (rev 4719)
@@ -1,4 +1,4 @@
-<!ENTITY day          "12">
+<!ENTITY day          "13">
 <!ENTITY month        "07">
 <!ENTITY year         "2005">
 <!ENTITY version      "svn-&year;&month;&day;">
@@ -148,33 +148,52 @@
 <!ENTITY ruby-version                 "1.8.2">
 <!ENTITY tcl-version                  "8.4.9">
 <!ENTITY tk-version                   "8.4.9">
+
+<!-- Used to identify the target LFS version in the
+     PDL and Perl Modules instructions -->
 <!ENTITY LFS-Perl-version             "5.8.6">
+
+<!-- Perl module versions used in the Perl Modules instructions -->
 <!ENTITY Module-Info-version          "0.28">
-<!ENTITY Gtk-Perl-version             "0.7009">
+<!ENTITY Test-Pod-version             "1.20">
+<!ENTITY Pod-Simple-version           "3.02">
+<!ENTITY Pod-Escapes-version          "1.04">
+<!ENTITY Test-Builder-Tester-version  "1.01">
+<!ENTITY Module-Build-version         "0.2611">
+<!ENTITY Module-Signature-version     "0.44">
+<!ENTITY Digest-SHA-version           "5.28">
+<!ENTITY PAR-Dist-version             "0.07">
+<!ENTITY ExtUtils-ParseXS-version     "2.11">
+<!ENTITY ExtUtils-CBuilder-version    "0.12">
+<!ENTITY Archive-Tar-version          "1.24">
+<!ENTITY IO-Zlib-version              "1.04">
+<!ENTITY Compress-Zlib-version        "1.34">
+<!ENTITY YAML-version                 "0.39">
 <!ENTITY XML-Parser-version           "2.34">
-<!ENTITY XML-Writer-version           "0.520">
 <!ENTITY SGMLSpm-version              "1.03ii">
 <!ENTITY Perl-Tk-version              "804.027">
-<!ENTITY Net-DNS-version              "0.48">
+<!ENTITY Net-DNS-version              "0.52">
 <!ENTITY Digest-HMAC-version          "1.01">
 <!ENTITY Digest-SHA1-version          "2.10">
+<!ENTITY Net-IP-version               "1.23">
+<!ENTITY IO-Socket-INET6-version      "2.51">
+<!ENTITY Socket6-version              "0.18">
+<!ENTITY Digest-BubbleBabble-version  "0.01">
 <!ENTITY LWP-version                  "5.803">
 <!ENTITY URI-version                  "1.35">
-<!ENTITY Business-ISBN-version        "1.79">
-<!ENTITY Business-ISBN-Data-version   "1.09">
-<!ENTITY Test-Pod-version             "1.20">
-<!ENTITY Pod-Simple-version           "3.02">
-<!ENTITY Pod-Escapes-version          "1.04">
-<!ENTITY Test-Builder-Tester-version  "1.01">
-<!ENTITY Test-Prereq-version          "1.025">
+<!ENTITY Business-ISBN-version        "1.80">
+<!ENTITY Business-ISBN-Data-version   "1.10">
+<!ENTITY Test-Prereq-version          "1.027">
 <!ENTITY Module-Corelist-version      "2.02">
 <!ENTITY HTML-Parser-version          "3.45">
 <!ENTITY HTML-Tagset-version          "3.04">
 <!ENTITY Compress-Zlib-version        "1.34">
 <!ENTITY Crypt-SSLeay-version         "0.51">
 <!ENTITY DateManip-version            "5.44">
-<!ENTITY Finance-Quote-version        "1.08">
+<!ENTITY Finance-Quote-version        "1.10">
 <!ENTITY HTML-TableExtract-version    "2.02">
+
+<!-- Perl module versions used in the PDL instructions -->
 <!ENTITY Filter-version               "1.30">
 <!ENTITY Term-ReadLine-Gnu-version    "1.15">
 <!ENTITY ExtUtils-F77-version         "1.14">

Modified: trunk/BOOK/introduction/welcome/changelog.xml
===================================================================
--- trunk/BOOK/introduction/welcome/changelog.xml	2005-07-13 01:00:36 UTC (rev 4718)
+++ trunk/BOOK/introduction/welcome/changelog.xml	2005-07-14 00:51:10 UTC (rev 4719)
@@ -25,6 +25,13 @@
   <itemizedlist>
 
     <listitem>
+      <para>July 13th, 2005 [randy]: Major overhaul to the Perl Modules
+      instructions including adding new modules, removing obsolete modules,
+      adding additional dependencies, complete text rewrite and new page
+      layout.</para>
+    </listitem>
+
+    <listitem>
       <para>July 12th, 2005 [djensen]: Updated to Nmap-3.81.</para>
     </listitem>
 




More information about the blfs-book mailing list