diff --git a/.perlcriticrc b/.perlcriticrc index b571ca10c..cb7d2f289 100644 --- a/.perlcriticrc +++ b/.perlcriticrc @@ -55,9 +55,12 @@ extra_pair_functions = by_hierarchy DateCompare [Compatibility::PerlMinimumVersionAndWhy] above_version = 5.006 -# INN requires at least Perl 5.6.0. +# INN requires at least Perl 5.12.0 to generate documentation from POD due to +# the use of L<> links with URL and text, Perl 5.10.0 due to the =encoding +# command, and Perl 5.8.0 due to L<> links to URL. Most of the documentation +# can be generated with Perl 5.6.0 though. [Compatibility::PodMinimumVersion] -above_version = 5.006 +above_version = 5.012 # We still have some qx() calls. [InputOutput::ProhibitBacktickOperators] diff --git a/configure.ac b/configure.ac index 86cc385af..b733a1632 100644 --- a/configure.ac +++ b/configure.ac @@ -282,7 +282,10 @@ dnl Embedded Perl requires 5.004. Use of the three-arg open and the our dnl keyword requires 5.006, so makes 5.006 the minimum level; anyone should dnl really have at least that these days. dnl The recommendation in INSTALL and README is even a bit higher (Perl 5.8.0). -dnl An optional Perl module (INN::ovsqlite_client) requires 5.8.0 though. +dnl An optional Perl module (INN::ovsqlite_client) actually requires Perl 5.8.0 +dnl though. Generating all the documentation from POD requires Perl 5.12.0 +dnl but most of it can be generated with Perl 5.6.0. If need be, the +dnl documentation can be fetched from the release tarball. dnl We also check for useful Perl modules. INN_PROG_PERL([5.006]) INN_PERL_CHECK_MODULE([Encode], [], diff --git a/doc/pod/controlchan.pod b/doc/pod/controlchan.pod index af70c53d3..7ccc5daf5 100644 --- a/doc/pod/controlchan.pod +++ b/doc/pod/controlchan.pod @@ -45,17 +45,7 @@ in F, because in this case B needs a site name, not an IP address. B tries to report all log messages through syslog(3), unless -connected to an interactive terminal. To enable syslog(3)'ing for versions of -Perl prior to 5.6.0, you will need to have run B on your system include -files at some point (this is required to make C work). If you -have not done so, do this: - - cd /usr/include - h2ph * sys/* - -If you run FreeBSD, you will need to run the following in addition: - - h2ph machine/* +connected to an interactive terminal. =head1 OPTIONS diff --git a/doc/pod/hacking.pod b/doc/pod/hacking.pod index 28b50308d..c36fb79b9 100644 --- a/doc/pod/hacking.pod +++ b/doc/pod/hacking.pod @@ -126,9 +126,7 @@ If you use POD or regenerate POD documentation, please install something close to the latest versions of the POD processing utilities to avoid changes to the documentation depending on who generated it last. You can find the latest version of the C distribution on CPAN -(L). For versions of Perl before 5.6.1 -(as Perl 5.6.1 and later come with a recent enough version), you'll also need -C (see L). +(L). There are makefile rules in F to build all of the documentation whose master form is POD; if you add additional diff --git a/doc/pod/install.pod b/doc/pod/install.pod index 8752ac8c7..127fa63c9 100644 --- a/doc/pod/install.pod +++ b/doc/pod/install.pod @@ -115,18 +115,10 @@ L. Note that you may need to use the same compiler and options (particularly large file support and shared libraries) for Perl and INN. -If you're using a version of Perl prior to 5.6.0, you may need to make -sure that the Perl versions of your system header files have been -generated in order for C to work properly (used by various -utility programs, including B). To do this, run the following -two commands: - - # cd /usr/include - # h2ph * sys/* - -An even better approach is to install S or later, which have a -fixed version of C that doesn't require this (as well as many -other improvements over earlier versions of Perl). +Generating all the documentation from POD requires S> due +to the use of CE> with URL and text in some files but most of the +documentation can be generated with S>. If need be, it can be +fetched from the release tarball. =item * diff --git a/readme.pod b/readme.pod index f596e05dc..9df7b851b 100644 --- a/readme.pod +++ b/readme.pod @@ -138,15 +138,12 @@ compiling or running INN, or if you successfully run INN on a platform that isn't listed in F, please let us know (see L<"Reporting Bugs"> below). -S or later is required to build INN and use the embedded -Perl filtering and authentication hook support (which is highly -recommended; some excellent spam filters have been written for INN). -Since all versions of Perl previous to 5.004 are buggy (including -security problems) and have fewer features, installing S -or later (like at least S) is recommended. Depending on -what language you want to write your filters and authentication hooks in, -you may also want to install S or later, or S -or later. +S or later is required to build INN, run several subsystems, +and use the embedded Perl filtering and authentication hook support (which is +highly recommended; some excellent spam filters have been written for INN). +Depending on what language you want to write your filters and authentication +hooks in, you may also want to install S or later, or S or later. For support for authenticated control messages, you will need either PGP or GnuPG, the latter being recommended. See F for more details.