#!../miniperl
+$ENV{LC_ALL} = 'C';
+
open (OUT, ">perlmodlib.tmp") or die $!;
-my (@pragma, @mod);
+my (@pragma, @mod, @MANIFEST);
open (MANIFEST, "../MANIFEST") or die $!;
while (<MANIFEST>) {
my $filename;
next unless s|^lib/|| or m|^ext/|;
- ($filename) = /(\S+)/;
+ ($filename) = m|^(\S+)|;
$filename =~ s|^[^/]+/|| if $filename =~ s|^ext/||;
- next unless $filename =~ /\.p(m|od)$/;
+ next unless $filename =~ m!\.p(m|od)$!;
next unless open (MOD, "../lib/$filename");
+
my ($name, $thing);
my $foundit=0;
{
}
}
unless ($foundit) {
- warn "$filename missing head1\n";
+ warn "$filename missing =head1 NAME (okay if there is respective .pod)\n";
next;
}
my $title = <MOD>;
next;
}
+
$thing =~ s/^perl pragma to //i;
$thing = ucfirst($thing);
$title = "=item $perlname\n\n$thing\n\n";
- # print "$perlname $thing\n";
-
- if ($filename=~/[A-Z]/) {
+ if ($filename =~ /[A-Z]/) {
push @mod, $title;
} else {
push @pragma, $title;
}
print OUT <<'EOF';
-# Generated by perlmodlib.PL DO NOT EDIT!
+=for maintainers
+Generated by perlmodlib.PL -- DO NOT EDIT!
=head1 NAME
Extension modules are written in C (or a mix of Perl and C). They
are usually dynamically loaded into Perl if and when you need them,
-but may also be be linked in statically. Supported extension modules
+but may also be linked in statically. Supported extension modules
include Socket, Fcntl, and POSIX.
Many popular C extension modules do not come bundled (at least, not
replicated trove of Perl materials, including documentation, style
guides, tricks and traps, alternate ports to non-Unix systems and
occasional binary distributions for these. Search engines for
-CPAN can be found at http://cpan.perl.com/ and at
-http://theory.uwinnipeg.ca/mod_perl/cpan-search.pl .
+CPAN can be found at http://www.cpan.org/.
Most importantly, CPAN includes around a thousand unbundled modules,
some of which require a C compiler to build. Major categories of
South Africa
ftp://ftp.is.co.za/programming/perl/CPAN/
+ ftp://ftp.mweb.co.za/pub/mirrors/cpan/
ftp://ftp.saix.net/pub/CPAN/
- ftp://ftpza.co.za/pub/mirrors/cpan/
ftp://ftp.sun.ac.za/CPAN/
=back
ftp://freesoft.cei.gov.cn/pub/languages/perl/CPAN/
http://www2.linuxforum.net/mirror/CPAN/
+ http://CPAN.pacific.net.hk/
+ ftp://ftp.pacific.net.hk/pub/mirror/CPAN/
http://cpan.shellhung.org/
ftp://ftp.shellhung.org/pub/CPAN
=item *
-Hong Kong
+India
- http://CPAN.pacific.net.hk/
- ftp://ftp.pacific.net.hk/pub/mirror/CPAN/
+ http://cpan.in.freeos.com
+ ftp://cpan.in.freeos.com/pub/CPAN/
=item *
Indonesia
- http://piksi.itb.ac.id/CPAN/
+ http://cpan.itb.web.id/
ftp://mirrors.piksi.itb.ac.id/CPAN/
http://CPAN.mweb.co.id/
ftp://ftp.mweb.co.id/pub/languages/perl/CPAN/
http://www.iglu.org.il:/pub/CPAN/
ftp://ftp.iglu.org.il/pub/CPAN/
+ http://cpan.lerner.co.il/
http://bioinfo.weizmann.ac.il/pub/software/perl/CPAN/
ftp://bioinfo.weizmann.ac.il/pub/software/perl/CPAN/
Japan
- ftp://ftp.u-aizu.ac.jp/pub/lang/perl/CPAN/
+ ftp://ftp.u-aizu.ac.jp/pub/CPAN
ftp://ftp.kddlabs.co.jp/CPAN/
http://mirror.nucba.ac.jp/mirror/Perl/
ftp://mirror.nucba.ac.jp/mirror/Perl/
=item *
+Korea
+
+ http://mirror.Mazic.org/pub/CPAN
+ ftp://mirror.Mazic.org/pub/CPAN
+
+=item *
+
+Philippines
+
+ http://www.adzu.edu.ph/CPAN
+
+=item *
+
+Russian Federation
+
+ http://cpan.tomsk.ru
+ ftp://cpan.tomsk.ru/pub/CPAN
+
+=item *
+
Saudi Arabia
ftp://ftp.isu.net.sa/pub/CPAN/
Singapore
http://cpan.hjc.edu.sg
- http://ftp.nus.edu.sg/unix/perl/CPAN/
- ftp://ftp.nus.edu.sg/pub/unix/perl/CPAN/
=item *
http://CPAN.bora.net/
ftp://ftp.bora.net/pub/CPAN/
- http://ftp.kornet.net/CPAN/
+ http://ftp.kornet.net/pub/CPAN/
ftp://ftp.kornet.net/pub/CPAN/
ftp://ftp.nuri.net/pub/CPAN/
ftp://coda.nctu.edu.tw/UNIX/perl/CPAN
ftp://ftp.ee.ncku.edu.tw/pub/perl/CPAN/
ftp://ftp1.sinica.edu.tw/pub1/perl/CPAN/
+ http://ftp.tku.edu.tw/pub/CPAN/
+ ftp://ftp.tku.edu.tw/pub/CPAN/
=item *
Austria
- ftp://ftp.tuwien.ac.at/pub/languages/perl/CPAN/
+ ftp://ftp.tuwien.ac.at/pub/CPAN/
=item *
Belgium
- http://ftp.easynet.be/CPAN/
- ftp://ftp.easynet.be/CPAN/
+ http://ftp.easynet.be/pub/CPAN/
+ ftp://ftp.easynet.be/pub/CPAN/
+ http://cpan.skynet.be
+ ftp://ftp.skynet.be/pub/CPAN
ftp://ftp.kulnet.kuleuven.ac.be/pub/mirror/CPAN/
=item *
Czech Republic
- http://www.fi.muni.cz/pub/perl/
- ftp://ftp.fi.muni.cz/pub/perl/
+ http://ftp.fi.muni.cz/pub/CPAN/
+ ftp://ftp.fi.muni.cz/pub/CPAN/
ftp://sunsite.mff.cuni.cz/MIRRORS/ftp.funet.fi/pub/languages/perl/CPAN/
=item *
Denmark
- ftp://sunsite.auc.dk/pub/languages/perl/CPAN/
+ http://mirrors.sunsite.dk/cpan/
+ ftp://sunsite.dk/mirrors/cpan/
http://www.cpan.dk/CPAN/
ftp://www.cpan.dk/ftp.cpan.org/CPAN/
http://www.mirror.ac.uk/sites/ftp.funet.fi/pub/languages/perl/CPAN
ftp://ftp.mirror.ac.uk/sites/ftp.funet.fi/pub/languages/perl/CPAN/
- ftp://ftp.demon.co.uk/pub/mirrors/perl/CPAN/
+ http://cpan.crazygreek.co.uk
+ ftp://ftp.demon.co.uk/pub/CPAN/
ftp://ftp.flirble.org/pub/languages/perl/CPAN/
ftp://ftp.plig.org/pub/CPAN/
ftp://sunsite.doc.ic.ac.uk/packages/CPAN/
Finland
ftp://ftp.funet.fi/pub/languages/perl/CPAN/
+ http://cpan.kpnqwest.fi/
=item *
France
ftp://cpan.ftp.worldonline.fr/pub/CPAN/
+ http://cpan.mirrors.easynet.fr/
+ ftp://cpan.mirrors.easynet.fr/pub/ftp.cpan.org/
ftp://ftp.club-internet.fr/pub/perl/CPAN/
+ http://fr.cpan.org/
ftp://ftp.lip6.fr/pub/perl/CPAN/
ftp://ftp.oleane.net/pub/mirrors/CPAN/
ftp://ftp.pasteur.fr/pub/computing/CPAN/
+ http://cpan.cict.fr/
ftp://cpan.cict.fr/pub/CPAN/
ftp://ftp.uvsq.fr/pub/perl/CPAN/
http://ftp.gwdg.de/pub/languages/perl/CPAN/
ftp://ftp.gwdg.de/pub/languages/perl/CPAN/
ftp://ftp.uni-hamburg.de/pub/soft/lang/perl/CPAN/
- ftp://ftp.leo.org/pub/comp/general/programming/languages/script/perl/CPAN/
+ ftp://ftp.leo.org/pub/CPAN/
+ http://cpan.noris.de/
+ ftp://cpan.noris.de/pub/CPAN/
ftp://ftp.mpi-sb.mpg.de/pub/perl/CPAN/
ftp://ftp.gmd.de/mirrors/CPAN/
http://cpan.artifact.hu/
ftp://cpan.artifact.hu/CPAN/
- ftp://ftp.kfki.hu/pub/packages/perl/CPAN/
+ http://ftp.kfki.hu/pub/CPAN/
+ ftp://ftp.kfki.hu/pub/CPAN/
=item *
Iceland
- http://cpan.gm.is/
- ftp://ftp.gm.is/pub/CPAN/
+ http://ftp.rhnet.is/pub/CPAN/
+ ftp://ftp.rhnet.is/pub/CPAN/
=item *
=item *
+Lithuania
+
+ ftp://ftp.unix.lt/pub/CPAN/
+
+=item *
+
Netherlands
ftp://download.xs4all.nl/pub/mirror/CPAN/
ftp://ftp.nl.uu.net/pub/CPAN/
ftp://ftp.nluug.nl/pub/languages/perl/CPAN/
+ http://cpan.cybercomm.nl/
+ ftp://mirror.cybercomm.nl/pub/cpan/
ftp://ftp.cpan.nl/pub/CPAN/
http://www.cs.uu.nl/mirror/CPAN/
ftp://ftp.cs.uu.nl/mirror/CPAN/
Norway
- ftp://sunsite.uio.no/pub/languages/perl/CPAN/
+ ftp://ftp.uninett.no/pub/languages/perl/CPAN
ftp://ftp.uit.no/pub/languages/perl/cpan/
=item *
Poland
ftp://ftp.pk.edu.pl/pub/lang/perl/CPAN/
+ http://www.fic.uni.lodz.pl/pub/CPAN
+ ftp://ftp.fic.uni.lodz.pl/pub/CPAN
ftp://ftp.mega.net.pl/pub/mirrors/ftp.perl.com/
ftp://ftp.man.torun.pl/pub/doc/CPAN/
ftp://sunsite.icm.edu.pl/pub/CPAN/
ftp://ftp.ua.pt/pub/CPAN/
ftp://perl.di.uminho.pt/pub/CPAN/
+ http://cpan.ip.pt/
+ ftp://cpan.ip.pt/pub/perl/
ftp://ftp.ist.utl.pt/pub/CPAN/
+ http://cpan.ip.pt/
+ ftp://cpan.ip.pt/pub/cpan/
ftp://ftp.netc.pt/pub/CPAN/
+ ftp://ftp.up.pt/pub/CPAN
=item *
ftp://ftp.dntis.ro/pub/cpan/
ftp://ftp.opsynet.com/cpan/
ftp://ftp.dnttm.ro/pub/CPAN/
+ ftp://ftp.lasting.ro/pub/CPAN
ftp://ftp.timisoara.roedu.net/mirrors/CPAN/
=item *
http://cpan.rinet.ru/
ftp://cpan.rinet.ru/pub/mirror/CPAN/
ftp://ftp.aha.ru/pub/CPAN/
+ http://cpan.sai.msu.ru/
ftp://ftp.sai.msu.su/pub/lang/perl/CPAN/
=item *
http://ftp.du.se/CPAN/
ftp://ftp.du.se/pub/CPAN/
+ ftp://mirror.dataphone.se/pub/CPAN
ftp://ftp.sunet.se/pub/lang/perl/CPAN/
=item *
ftp://sunsite.bilkent.edu.tr/pub/languages/CPAN/
+=item *
+
+Ukraine
+
+ http://cpan.org.ua/
+ ftp://cpan.org.ua/
+ ftp://ftp.perl.org.ua/pub/CPAN/
+
=back
=head2 North America
Ontario
- ftp://ftp.crc.ca/pub/packages/lang/perl/CPAN/
+ ftp://ftp.crc.ca/pub/CPAN/
+
+=item *
+
+Quebec
+
+ http://cpan.mirror.smartworker.org/
+ ftp://cpan.mirror.smartworker.org/pub/CPAN
+
+=back
=item *
Mexico
+ http://cpan.azc.uam.mx
+ ftp://cpan.azc.uam.mx/mirrors/CPAN
+ http://cpan.unam.mx/
+ ftp://cpan.unam.mx/pub/CPAN
http://www.msg.com.mx/CPAN/
ftp://ftp.msg.com.mx/pub/CPAN/
-=back
-
=item *
United States
California
http://www.cpan.org/
- ftp://ftp.cpan.org/CPAN/
+ ftp://cpan.valueclick.com/pub/CPAN/
+ http://mirrors.gossamer-threads.com/CPAN
ftp://cpan.nas.nasa.gov/pub/perl/CPAN/
ftp://ftp.digital.com/pub/plan/perl/CPAN/
- http://www.kernel.org/pub/mirrors/cpan/
- ftp://ftp.kernel.org/pub/mirrors/cpan/
+ http://mirrors.kernel.org/cpan/
+ ftp://mirrors.kernel.org/pub/CPAN
+ http://cpan.digisle.net/
+ ftp://cpan.digisle.net/pub/CPAN
+ http://www.linuxjar.com/CPAN
+ ftp://linuxjar.com/pub/CPAN
http://www.perl.com/CPAN/
http://download.sourceforge.net/mirrors/CPAN/
=item *
-Florida
+District of Columbia
- ftp://ftp.cise.ufl.edu/pub/perl/CPAN/
+ ftp://ftp.dc.us.telia.net/pub/cpan/
=item *
-Georgia
+Florida
- ftp://ftp.twoguys.org/CPAN/
+ ftp://ftp.cise.ufl.edu/pub/mirrors/CPAN/
+ http://mirror.csit.fsu.edu/pub/CPAN/
+ ftp://mirror.csit.fsu.edu/pub/CPAN/
=item *
Illinois
- http://www.neurogames.com/mirrors/CPAN
- http://uiarchive.uiuc.edu/mirrors/ftp/ftp.cpan.org/pub/CPAN/
- ftp://uiarchive.uiuc.edu/mirrors/ftp/ftp.cpan.org/pub/CPAN/
+ http://uiarchive.uiuc.edu/mirrors/ftp/cpan.cse.msu.edu/
+ ftp://uiarchive.uiuc.edu/mirrors/ftp/cpan.cse.msu.edu/
=item *
ftp://ftp.uwsg.indiana.edu/pub/perl/CPAN/
http://cpan.nitco.com/
ftp://cpan.nitco.com/pub/CPAN/
+ http://archive.progeny.com/CPAN/
+ ftp://archive.progeny.com/CPAN/
ftp://cpan.in-span.net/
http://csociety-ftp.ecn.purdue.edu/pub/CPAN
ftp://csociety-ftp.ecn.purdue.edu/pub/CPAN
Massachusetts
ftp://ftp.ccs.neu.edu/net/mirrors/ftp.funet.fi/pub/languages/perl/CPAN/
+ http://cpan.mirrors.netnumina.com/
+ ftp://mirrors.netnumina.com/cpan/
ftp://ftp.iguide.com/pub/mirrors/packages/perl/CPAN/
=item *
+Michigan
+
+ ftp://cpan.cse.msu.edu/
+
+=item *
+
New Jersey
ftp://ftp.cpanel.net/pub/CPAN/
New York
ftp://ftp.freesoftware.com/pub/perl/CPAN/
- http://www.deao.net/mirrors/CPAN/
- ftp://ftp.deao.net/pub/CPAN/
- ftp://ftp.stealth.net/pub/mirrors/ftp.cpan.org/pub/CPAN/
- http://mirror.nyc.anidea.com/CPAN/
- ftp://mirror.nyc.anidea.com/pub/CPAN/
+ ftp://ftp.stealth.net/pub/CPAN/
http://www.rge.com/pub/languages/perl/
ftp://ftp.rge.com/pub/languages/perl/
ftp://mirrors.cloud9.net/pub/mirrors/CPAN/
Oregon
- ftp://ftp.orst.edu/pub/packages/CPAN/
+ ftp://ftp.orst.edu/pub/CPAN
=item *
http://ftp.epix.net/CPAN/
ftp://ftp.epix.net/pub/languages/perl/
+ http://mirrors.phenominet.com/pub/CPAN/
+ ftp://mirrors.phenominet.com/pub/CPAN/
ftp://carroll.cac.psu.edu/pub/CPAN/
=item *
Texas
http://ftp.sedl.org/pub/mirrors/CPAN/
- http://jhcloos.com/pub/mirror/CPAN/
- ftp://jhcloos.com/pub/mirror/CPAN/
=item *
http://cpan.llarian.net/
ftp://cpan.llarian.net/pub/CPAN/
+ http://cpan.mirrorcentral.com/
+ ftp://ftp.mirrorcentral.com/pub/CPAN/
ftp://ftp-mirror.internap.com/pub/CPAN/
- ftp://ftp.spu.edu/pub/CPAN/
=back
=item *
New Zealand
-
ftp://ftp.auckland.ac.nz/pub/perl/CPAN/
=back
Brazil
ftp://cpan.pop-mg.com.br/pub/CPAN/
- ftp://ftp.matrix.com.br/pub/perl/
- ftp://cpan.if.usp.br/pub/mirror/CPAN/
+ ftp://ftp.matrix.com.br/pub/perl/CPAN/
=item *
=back
+
For an up-to-date listing of CPAN sites,
see http://www.cpan.org/SITES or ftp://www.cpan.org/SITES .
=over 4
-=item Adding a Copyright Notice.
+=item *
+Adding a Copyright Notice.
How you choose to license your work is a personal decision.
The general mechanism is to assert your Copyright and then make