* Sync comment with code's reality.
[dragonfly.git] / contrib / perl5 / pod / roffitall
1 #!/bin/sh
2 #
3 # Usage: roffitall [-nroff|-psroff|-groff]
4 #
5 # Authors: Tom Christiansen, Raphael Manfredi
6
7 me=roffitall
8 tmp=.
9
10 if test -f ../config.sh; then
11         . ../config.sh
12 fi
13
14 mandir=$installman1dir
15 libdir=$installman3dir
16
17 test -d $mandir || mandir=/usr/new/man/man1
18 test -d $libdir || libdir=/usr/new/man/man3
19
20 case "$1" in
21 -nroff) cmd="nroff -man"; ext='txt';;
22 -psroff) cmd="psroff -t"; ext='ps';;
23 -groff) cmd="groff -man"; ext='ps';;
24 *)
25         echo "Usage: roffitall [-nroff|-psroff|-groff]" >&2
26         exit 1
27         ;;
28 esac
29
30 toroff=`
31         echo            \
32     $mandir/perl.1      \
33     $mandir/perldata.1  \
34     $mandir/perlsyn.1   \
35     $mandir/perlop.1    \
36     $mandir/perlre.1    \
37     $mandir/perlrun.1   \
38     $mandir/perlfunc.1  \
39     $mandir/perlopentut.1       \
40     $mandir/perlvar.1   \
41     $mandir/perlsub.1   \
42     $mandir/perlmod.1   \
43     $mandir/perlmodlib.1        \
44     $mandir/perlmodinstall.1    \
45     $mandir/perlform.1  \
46     $mandir/perllocale.1        \
47     $mandir/perlref.1   \
48     $mandir/perlreftut.1        \
49     $mandir/perldsc.1   \
50     $mandir/perllol.1   \
51     $mandir/perltoot.1  \
52     $mandir/perlobj.1   \
53     $mandir/perltie.1   \
54     $mandir/perlbot.1   \
55     $mandir/perlipc.1   \
56     $mandir/perldebug.1 \
57     $mandir/perldiag.1  \
58     $mandir/perlsec.1   \
59     $mandir/perltrap.1  \
60     $mandir/perlport.1  \
61     $mandir/perlstyle.1 \
62     $mandir/perlpod.1   \
63     $mandir/perlbook.1  \
64     $mandir/perlembed.1 \
65     $mandir/perlapio.1  \
66     $mandir/perlxs.1    \
67     $mandir/perlxstut.1 \
68     $mandir/perlguts.1  \
69     $mandir/perlcall.1  \
70     $mandir/perlthrtut.1        \
71     $mandir/perlhist.1  \
72     $mandir/perldelta.1 \
73     $mandir/perl5004delta.1     \
74     $mandir/perlfaq.1   \
75     $mandir/perlfaq1.1  \
76     $mandir/perlfaq2.1  \
77     $mandir/perlfaq3.1  \
78     $mandir/perlfaq4.1  \
79     $mandir/perlfaq5.1  \
80     $mandir/perlfaq6.1  \
81     $mandir/perlfaq7.1  \
82     $mandir/perlfaq8.1  \
83     $mandir/perlfaq9.1  \
84         \
85     $mandir/a2p.1       \
86     $mandir/c2ph.1      \
87     $mandir/h2ph.1      \
88     $mandir/h2xs.1      \
89     $mandir/perlbug.1   \
90     $mandir/perldoc.1   \
91     $mandir/pl2pm.1     \
92     $mandir/pod2html.1  \
93     $mandir/pod2man.1   \
94     $mandir/s2p.1       \
95     $mandir/splain.1    \
96     $mandir/xsubpp.1    \
97                         \
98     $libdir/attrs.3     \
99     $libdir/autouse.3   \
100     $libdir/base.3      \
101     $libdir/blib.3      \
102     $libdir/constant.3  \
103     $libdir/diagnostics.3       \
104     $libdir/fields.3    \
105     $libdir/integer.3   \
106     $libdir/less.3      \
107     $libdir/lib.3       \
108     $libdir/locale.3    \
109     $libdir/ops.3       \
110     $libdir/overload.3  \
111     $libdir/re.3        \
112     $libdir/sigtrap.3   \
113     $libdir/strict.3    \
114     $libdir/subs.3      \
115     $libdir/vars.3      \
116         \
117     $libdir/AnyDBM_File.3       \
118     $libdir/AutoLoader.3        \
119     $libdir/AutoSplit.3 \
120     $libdir/B.3 \
121     $libdir/B::Asmdata.3        \
122     $libdir/B::Assembler.3      \
123     $libdir/B::Bblock.3 \
124     $libdir/B::Bytecode.3       \
125     $libdir/B::C.3      \
126     $libdir/B::CC.3     \
127     $libdir/B::Debug.3  \
128     $libdir/B::Deparse.3        \
129     $libdir/B::Disassembler.3   \
130     $libdir/B::Lint.3   \
131     $libdir/B::Showlex.3        \
132     $libdir/B::Stackobj.3       \
133     $libdir/B::Terse.3  \
134     $libdir/B::Xref.3   \
135     $libdir/Benchmark.3 \
136     $libdir/Carp.3      \
137     $libdir/CGI.3       \
138     $libdir/CGI::Apache.3       \
139     $libdir/CGI::Carp.3 \
140     $libdir/CGI::Cookie.3       \
141     $libdir/CGI::Fast.3 \
142     $libdir/CGI::Push.3 \
143     $libdir/CGI::Switch.3       \
144     $libdir/Class::Struct.3     \
145     $libdir/Config.3    \
146     $libdir/CPAN.3      \
147     $libdir/CPAN::FirstTime.3   \
148     $libdir/CPAN::Nox.3 \
149     $libdir/Cwd.3       \
150     $libdir/Data::Dumper.3      \
151     $libdir/DB_File.3   \
152     $libdir/Devel::SelfStubber.3        \
153     $libdir/DirHandle.3 \
154     $libdir/DynaLoader.3        \
155     $libdir/Dumpvalue.3 \
156     $libdir/English.3   \
157     $libdir/Env.3       \
158     $libdir/Errno.3     \
159     $libdir/Exporter.3  \
160     $libdir/ExtUtils::Command.3 \
161     $libdir/ExtUtils::Embed.3   \
162     $libdir/ExtUtils::Install.3 \
163     $libdir/ExtUtils::Installed.3       \
164     $libdir/ExtUtils::Liblist.3 \
165     $libdir/ExtUtils::MakeMaker.3       \
166     $libdir/ExtUtils::Manifest.3        \
167     $libdir/ExtUtils::Miniperl.3        \
168     $libdir/ExtUtils::Mkbootstrap.3     \
169     $libdir/ExtUtils::Mksymlists.3      \
170     $libdir/ExtUtils::MM_OS2.3  \
171     $libdir/ExtUtils::MM_Unix.3 \
172     $libdir/ExtUtils::MM_VMS.3  \
173     $libdir/ExtUtils::MM_Win32.3        \
174     $libdir/ExtUtils::Packlist.3        \
175     $libdir/ExtUtils::testlib.3 \
176     $libdir/Fatal.3     \
177     $libdir/Fcntl.3     \
178     $libdir/File::Basename.3    \
179     $libdir/File::CheckTree.3   \
180     $libdir/File::Compare.3     \
181     $libdir/File::Copy.3        \
182     $libdir/File::DosGlob.3     \
183     $libdir/File::Find.3        \
184     $libdir/File::Path.3        \
185     $libdir/File::Spec.3        \
186     $libdir/File::Spec::Mac.3   \
187     $libdir/File::Spec::OS2.3   \
188     $libdir/File::Spec::Unix.3  \
189     $libdir/File::Spec::VMS.3   \
190     $libdir/File::Spec::Win32.3 \
191     $libdir/File::stat.3        \
192     $libdir/FileCache.3 \
193     $libdir/FileHandle.3        \
194     $libdir/FindBin.3   \
195     $libdir/GDBM_File.3 \
196     $libdir/Getopt::Long.3      \
197     $libdir/Getopt::Std.3       \
198     $libdir/I18N::Collate.3     \
199     $libdir/IO.3 \
200     $libdir/IO::File.3 \
201     $libdir/IO::Handle.3 \
202     $libdir/IO::Pipe.3 \
203     $libdir/IO::Seekable.3 \
204     $libdir/IO::Select.3 \
205     $libdir/IO::Socket.3 \
206     $libdir/IPC::Msg.3  \
207     $libdir/IPC::Open2.3        \
208     $libdir/IPC::Open3.3        \
209     $libdir/IPC::Semaphore.3    \
210     $libdir/IPC::SysV.3 \
211     $libdir/Math::BigFloat.3    \
212     $libdir/Math::BigInt.3      \
213     $libdir/Math::Complex.3     \
214     $libdir/Math::Trig.3        \
215     $libdir/NDBM_File.3 \
216     $libdir/Net::hostent.3      \
217     $libdir/Net::netent.3       \
218     $libdir/Net::Ping.3 \
219     $libdir/Net::protoent.3     \
220     $libdir/Net::servent.3      \
221     $libdir/O.3 \
222     $libdir/Opcode.3    \
223     $libdir/Pod::Html.3 \
224     $libdir/Pod::Text.3 \
225     $libdir/POSIX.3     \
226     $libdir/Safe.3      \
227     $libdir/SDBM_File.3 \
228     $libdir/Search::Dict.3      \
229     $libdir/SelectSaver.3       \
230     $libdir/SelfLoader.3        \
231     $libdir/Shell.3     \
232     $libdir/Socket.3    \
233     $libdir/Symbol.3    \
234     $libdir/Sys::Hostname.3     \
235     $libdir/Sys::Syslog.3       \
236     $libdir/Term::Cap.3 \
237     $libdir/Term::Complete.3    \
238     $libdir/Term::ReadLine.3    \
239     $libdir/Test.3      \
240     $libdir/Test::Harness.3     \
241     $libdir/Text::Abbrev.3      \
242     $libdir/Text::ParseWords.3  \
243     $libdir/Text::Soundex.3     \
244     $libdir/Text::Tabs.3        \
245     $libdir/Text::Wrap.3        \
246     $libdir/Tie::Array.3        \
247     $libdir/Tie::Handle.3       \
248     $libdir/Tie::Hash.3 \
249     $libdir/Tie::RefHash.3      \
250     $libdir/Tie::Scalar.3       \
251     $libdir/Tie::SubstrHash.3   \
252     $libdir/Time::gmtime.3      \
253     $libdir/Time::Local.3       \
254     $libdir/Time::localtime.3   \
255     $libdir/Time::tm.3          \
256     $libdir/UNIVERSAL.3         \
257     $libdir/User::grent.3               \
258     $libdir/User::pwent.3 | \
259     perl -ne 'map { -r && print "$_ " } split'`
260
261     # Bypass internal shell buffer limit -- can't use case
262     if perl -e '$a = shift; exit($a =~ m|/|)' $toroff; then
263         echo "$me: empty file list -- did you run install?" >&2
264         exit 1
265     fi
266
267     #psroff -t -man -rC1 -rD1 -rF1 > $tmp/PerlDoc.ps 2>$tmp/PerlTOC.raw
268     #nroff -man -rC1 -rD1 -rF1 > $tmp/PerlDoc.txt 2>$tmp/PerlTOC.nr.raw
269
270     # First, create the raw data
271     run="$cmd -rC1 -rD1 -rF1 >$tmp/PerlDoc.$ext 2>$tmp/PerlTOC.$ext.raw"
272     echo "$me: running $run"
273     eval $run $toroff
274
275     #Now create the TOC
276     echo "$me: parsing TOC"
277     ./rofftoc $tmp/PerlTOC.$ext.raw > $tmp/PerlTOC.tmp.man
278     run="$cmd $tmp/PerlTOC.tmp.man >$tmp/PerlTOC.$ext"
279     echo "$me: running $run"
280     eval $run
281
282     # Finally, recreate the Doc, without the blank page 0
283     run="$cmd -rC1 -rD1 >$tmp/PerlDoc.$ext 2>$tmp/PerlTOC.$ext.raw"
284     echo "$me: running $run"
285     eval $run $toroff
286     rm -f $tmp/PerlTOC.tmp.man $tmp/PerlTOC.$ext.raw
287     echo "$me: leaving you with $tmp/PerlDoc.$ext and $tmp/PerlTOC.$ext"
288