use Config;
use File::Basename qw(&basename &dirname);
+use Cwd;
# List explicitly here the variables you want Configure to
# generate. Metaconfig only looks for shell variables, so you
# This forces PL files to create target in same directory as PL file.
# This is so that make depend always knows where to find PL derivatives.
-chdir(dirname($0));
-($file = basename($0)) =~ s/\.PL$//;
-$file =~ s/\.pl$//
- if ($Config{'osname'} eq 'VMS' or
- $Config{'osname'} eq 'OS2'); # "case-forgiving"
+$origdir = cwd;
+chdir dirname($0);
+$file = basename($0, '.PL');
+$file .= '.com' if $^O eq 'VMS';
open OUT,">$file" or die "Can't create $file: $!";
# From: Roderick Schertler <roderick@gate.net>
# To: perl5-porters@africa.nicoh.com
# Subject: POD lines with only spaces
-#
+#
# There are some places in the documentation where a POD directive is
# ignored because the line before it contains whitespace (and so the
# directive doesn't start a paragraph). This patch adds a way to check
# to grow. Someone will probably want to rewrite in terms of
# some sort of Pod::Checker module. Or something. Consider this
# a placeholder for the future.
-$exit = $last_blank = 0;
+# Version 1.02 Roderick Schertler <roderick@argon.org>
+# Check for pod directives following any kind of unempty line, not
+# just lines of whitespace.
+
+@directive = qw(head1 head2 item over back cut pod for begin end);
+@directive{@directive} = (1) x @directive;
+
+$exit = $last_unempty = 0;
while (<>) {
- chop;
- if (/^(=\S+)/ && $last_blank) {
- printf "%s: line %5d, Non-empty line preceeding directive %s\n",
+ s/(\012|\015\012|\015)$//;
+ if (/^=(\S+)/ && $directive{$1} && $last_unempty) {
+ printf "%s: line %5d, no blank line preceeding directive =%s\n",
$ARGV, $., $1;
$exit = 1;
}
- $last_blank = /^\s+$/;
- close(ARGV) if eof;
+ $last_unempty = ($_ ne '');
+ if (eof) {
+ close(ARGV);
+ $last_unempty = 0;
+ }
}
exit $exit
!NO!SUBS!
close OUT or die "Can't close $file: $!";
chmod 0755, $file or die "Can't reset permissions for $file: $!\n";
exec("$Config{'eunicefix'} $file") if $Config{'eunicefix'} ne ':';
+chdir $origdir;