#!/usr/bin/perl

while (<DATA>) {
    chomp;
    for (split) { 
	s/.(\d.*)//;
	$bsd_section{$_} = $1;
    } 
} 

opendir(V7, "v7") || die "can't open v7: $!";
while ($_ = readdir V7) {
    next unless m/(.*?)\.\d.?$/;
    $v7{$1} = $_;
} 
closedir V7;

opendir(SRC, "src") || die "can't open src: $!";
while ($_ = readdir SRC) {
    next if /^\.\.?$/;
    next unless -d "src/$_";
    next if -e "src/$_/index.html"; 
    open(IDX, ">src/$_/index.html") 
	|| die "can't open src/$_/index.html";

    $COMMAND = $_;

    print "$COMMAND\n";

    print IDX <<EOF;
<TITLE>PPT: $COMMAND</TITLE>
<H1>The PPT <I>$COMMAND</I> Command</H1>

This is the home page for the <A HREF="../../index.html">Perl Power Tools</A>
implementation of the standard <I>$COMMAND</I> command.  

<P>
Current Perl implementations are:
<UL>
<LI>None yet.
</UL>

<P>
EOF

    if ($bsd_section{$COMMAND} || $v7{$COMMAND}) {
	print IDX "Baseline documentation:\n<UL>\n";
	if ($v7{$COMMAND}) {
	    print IDX qq(<LI><A HREF="../../v7/$v7{$COMMAND}">Version 7</A>\n);
	}
	if ($SECTION = $bsd_section{$COMMAND}) {
	    $POSIX = ($SECTION =~ /^1/) 
		   ? " (with POSIX.2 info, if relevant)"
		   : "";
	    print IDX qq(<LI><A HREF="http://www.openbsd.org/cgi-bin/man.cgi?query=$COMMAND&sektion=$SECTION&apropos=0&manpath=OpenBSD+Current">BSD</A>$POSIX);
	} 
	print IDX "</UL>\n";
    }

    close IDX || die "close index.html: $!";
} 

__END__
addftinfo.1 afmtodit.1 afslog.1 apply.1 apropos.1 ar.1 arch.1 as.1 asa.1 at.1 aucat.1 audioctl.1 
awk.1 basename.1 bc.1 bdes.1 biff.1 cal.1 calendar.1 cap_mkdb.1 captoinfo.1 cat.1 
cccp.1 cd.1 cdio.1 checknr.1 chflags.1 chgrp.1 chio.1 chmod.1 chpass.1 ci.1 cksum.1 cmp.1 co.1 
col.1 colcrt.1 colrm.1 column.1 comm.1 compile_et.1 compress.1 cp.1 cpio.1 crontab.1 csh.1 
ctags.1 ctm.1 ctm_smail.1 cu.1 cursor.1 cut.1 cvs.1 cvsbug.1 date.1 dc.1 dd.1 deroff.1 df.1 diff.1 
diff3.1 dig.1 dirname.1 dnsquery.1 domainname.1 du.1 echo.1 ed.1 elf2olf.1 encrypt.1 env.1 
eqn.1 error.1 ex.1 expand.1 expr.1 false.1 fdformat.1 fed.1 file.1 file2c.1 find.1 finger.1 flex.1 
fmt.1 fold.1 fontedit.1 from.1 fsplit.1 fstat.1 ftp.1 g++.1 g77.1 gcc.1 gdb.1 gencat.1 getconf.1 
getopt.1 gperf.1 gprof.1 grep.1 grodvi.1 groff.1 grog.1 grolj4.1 grops.1 grotty.1 groups.1 
gzexe.1 gzip.1 head.1 hexdump.1 host.1 hostname.1 hpftodit.1 id.1 ident.1 indent.1 indxbib.1 
info_mkdb.1 install.1 intro.1 ipcrm.1 ipcs.1 ipf.1 ipftest.1 ipnat.1 ipresend.1 ipsecadm.1 
ipsend.1 iptest.1 ispcvt.1 join.1 jot.1 kauth.1 kcon.1 kdestroy.1 kdump.1 kerberos.1 kill.1 
kinit.1 klist.1 ksh.1 ksrvtgt.1 ktrace.1 lam.1 last.1 lastcomm.1 ld.1 ld.so.1 ldd.1 leave.1 less.1 
lesskey.1 lint.1 lkbib.1 ln.1 lndir.1 loadfont.1 locate.1 lock.1 lockspool.1 logger.1 login.1 
logname.1 look.1 lookbib.1 lorder.1 lpq.1 lpr.1 lprm.1 lptest.1 ls.1 lynx.1 m4.1 machine.1 mail.1 
mailq.1 mailstats.1 make.1 man.1 mcon.1 md5.1 merge.1 mesg.1 midiplay.1 mixerctl.1 mkdep.1 mkdir.1 
mkfifo.1 mkstr.1 mktemp.1 mopa.out.1 mopchk.1 mopprobe.1 moptrace.1 mset.1 msgs.1 mt.1 mv.1 nc.1 
netstat.1 newaliases.1 newfs_msdos.1 nfsstat.1 nice.1 nm.1 nohup.1 nroff.1 od.1 pagesize.1 
passwd.1 paste.1 patch.1 pax.1 pctr.1 pfbtops.1 pic.1 pkg_add.1 pkg_create.1 pkg_delete.1 
pkg_info.1 pr.1 praliases.1 printenv.1 printf.1 ps.1 psbb.1 pwd.1 quota.1 ranlib.1 rcp.1 rcs.1 
rcsclean.1 rcsdiff.1 rcsfreeze.1 rcsintro.1 rcsmerge.1 rdist.1 readlink.1 refer.1 rev.1 rlog.1 
rlogin.1 rm.1 rmd160.1 rmdir.1 rpcgen.1 rs.1 rsh.1 rup.1 ruptime.1 rusers.1 rwall.1 rwho.1 scon.1 
script.1 sdiff.1 sed.1 sendbug.1 sh.1 sha1.1 shar.1 size.1 skeyaudit.1 skeyinfo.1 skeyinit.1 
sleep.1 soelim.1 sort.1 split.1 startkey.1 strings.1 strip.1 stty.1 su.1 sup.1 systat.1 tail.1 
talk.1 tar.1 tbl.1 tcopy.1 tee.1 telnet.1 test.1 tfmtodit.1 tftp.1 tic.1 time.1 tip.1 tn3270.1 
top.1 touch.1 tput.1 tr.1 troff.1 true.1 tset.1 tsort.1 tty.1 ul.1 uname.1 unifdef.1 uniq.1 units.1 
unvis.1 uptime.1 users.1 uucp.1 uuencode.1 uustat.1 uux.1 vacation.1 vgrind.1 vis.1 vt220.1 
vttest.1 w.1 wait.1 wall.1 wc.1 what.1 whatis.1 whereis.1 which.1 who.1 whoami.1 whois.1 window.1 
write.1 xargs.1 xstr.1 yacc.1 yes.1 ypcat.1 ypmatch.1 ypwhich.1 zforce.1 zgrep.1 zmore.1 znew.1 
adventure.6 arithmetic.6 atc.6 backgammon.6 banner.6 battlestar.6 bcd.6 boggle.6 bs.6 caesar.6 
canfield.6 cfscores.6 cribbage.6 factor.6 fish.6 fortune.6 gomoku.6 grdc.6 hack.6 hangman.6 
hunt.6 huntd.6 larn.6 mille.6 monop.6 morse.6 number.6 phantasia.6 pig.6 pom.6 ppt.6 primes.6 quiz.6 
rain.6 random.6 robots.6 rogue.6 sail.6 snake.6 snscore.6 tetris.6 trek.6 worm.6 worms.6 wump.6 
