source: trunk/essentials/dev-lang/perl/pod/podselect.PL@ 3310

Last change on this file since 3310 was 3181, checked in by bird, 19 years ago

perl 5.8.8

File size: 3.6 KB
Line 
1#!/usr/local/bin/perl
2
3use Config;
4use File::Basename qw(&basename &dirname);
5use Cwd;
6
7# List explicitly here the variables you want Configure to
8# generate. Metaconfig only looks for shell variables, so you
9# have to mention them as if they were shell variables, not
10# %Config entries. Thus you write
11# $startperl
12# to ensure Configure will look for $Config{startperl}.
13
14# This forces PL files to create target in same directory as PL file.
15# This is so that make depend always knows where to find PL derivatives.
16$origdir = cwd;
17chdir(dirname($0));
18$file = basename($0, '.PL');
19$file .= '.com' if $^O eq 'VMS';
20
21open OUT,">$file" or die "Can't create $file: $!";
22
23print "Extracting $file (with variable substitutions)\n";
24
25# In this section, perl variables will be expanded during extraction.
26# You can use $Config{...} to use Configure variables.
27
28print OUT <<"!GROK!THIS!";
29$Config{'startperl'}
30 eval 'exec perl -S \$0 "\$@"'
31 if 0;
32!GROK!THIS!
33
34# In the following, perl variables are not expanded during extraction.
35
36print OUT <<'!NO!SUBS!';
37
38#############################################################################
39# podselect -- command to invoke the podselect function in Pod::Select
40#
41# Copyright (c) 1996-2000 by Bradford Appleton. All rights reserved.
42# This file is part of "PodParser". PodParser is free software;
43# you can redistribute it and/or modify it under the same terms
44# as Perl itself.
45#############################################################################
46
47use strict;
48use diagnostics;
49
50=head1 NAME
51
52podselect - print selected sections of pod documentation on standard output
53
54=head1 SYNOPSIS
55
56B<podselect> [B<-help>] [B<-man>] [B<-section>S< >I<section-spec>]
57[I<file>S< >...]
58
59=head1 OPTIONS AND ARGUMENTS
60
61=over 8
62
63=item B<-help>
64
65Print a brief help message and exit.
66
67=item B<-man>
68
69Print the manual page and exit.
70
71=item B<-section>S< >I<section-spec>
72
73Specify a section to include in the output.
74See L<Pod::Parser/"SECTION SPECIFICATIONS">
75for the format to use for I<section-spec>.
76This option may be given multiple times on the command line.