Ethereal-dev: [Ethereal-dev] Noiseless pod2html patches

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: aferen@xxxxxxxxxxxx (Andrew C. Feren)
Date: 20 Mar 2002 09:59:02 -0500
I had to make changes to a lot of files (mostly very minor), but I got
this working

doc/editcap.pod patch
doc/idl2eth.pod patch
doc/mergecap.pod patch
doc/text2pcap.pod patch
        changed all L<manpage> to I<manpage>

        For pod2man the net effect is almost exactly the same.
        (almost because pod2XXX inserts some verbiage around
        "manpage")

        For pod2html the net effect is also the same, but now we don't
        get warnings about not being able to create links.  Perhaps
        later some work could be done to resolve the links, but how
        best to accomplish this is not obvious since not all the
        manpages referenced are part of the ethereal distribution.

doc/ethereal.pod.template patch (pedantic)
doc/ethereal.pod.template patch (simple)
        changed all L<manpage> to I<manpage> and fixed an "=item"
        usage that was causing pod2html to complain.

        The simple patch works for both cases, but causes one
        paragraph in the man page (html is fine) to be indented a bit
        too far.  Personally I think I would use this patch, but for
        those who disagree I created the pedantic patch.

        The pedantic patch is the same as the simple patch, but it
        takes some extra (formater specific) steps to get the
        formatting on the one paragraph correct.

configure.in patch
        added pod2html so I can call it from the Makefile later.

Makefile.am patch
doc/Makefile.am patch
        This started as adding rules to build HTML versions of the
        manpages, but I ended up doing some cleanup as well.

        1) while debugging got tired of incorrect intermediate files
        produced by redirecting output being left around.  Changed
        these rules to look like  "command > outfile || rm -f outfile"

        2) Moved output of pod2XXX to the doc directory.  This
        *seemed* trivial when I started, but is complicated by the
        fact that the [t]ethereal manpages require the executables to
        be built first.  I moved the doc directory to then end of the
        list of subdirectories to build to help fix this.

        3) Looking in the patch file is seems I must have run tabify
        on the Makefile at some point.  (the whitespace changes are
        optional)


Index: Makefile.am
===================================================================
RCS file: /cvsroot/ethereal/Makefile.am,v
retrieving revision 1.416
diff -u -r1.416 Makefile.am
--- Makefile.am	2002/03/16 02:25:48	1.416
+++ Makefile.am	2002/03/20 14:53:36
@@ -6,64 +6,25 @@
 # Ethereal - Network traffic analyzer
 # By Gerald Combs <gerald@xxxxxxxxxxxx>
 # Copyright 1998 Gerald Combs
-# 
+#
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
 # as published by the Free Software Foundation; either version 2
 # of the License, or (at your option) any later version.
-# 
+#
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
-# 
+#
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
 ACLOCAL_AMFLAGS = `./aclocal-flags`
 
-#
-# This is a hideous hack.
-#
-# Automake needs to know into which sections to install various man
-# pages; if the names in "man_MANS" have suffixes, it can infer the
-# sections from the name (e.g., "hello.1" goes in section 1), but if
-# they don't have suffixes, it can't tell what sections to put them, and
-# it just gives up and doesn't create any rules to install them (and it
-# gives up silently, so you have no clue what's wrong).
-#
-# Therefore, we can't just set "man_MANS" to a list of variables to be
-# filled in by the configure script, as those variables don't have man
-# page section numbers.
-#
-# It turns out (although this is not documented anywhere I could find
-# in the automake Info file) that if you define, instead, variables with
-# names like "man{section}_MANS", automake will infer that the names in
-# those variables are the names of man pages to be installed in section
-# "{section}".
-#
-# So, as all our man pages go in section 1, we define "man1_MANS" to
-# contain all the man page.
-#
-# *However*, if "man_MANS" isn't defined at all, automake concludes that
-# there are no man pages, the fact that, say, "man1_MANS" is defined
-# nonwithstanding!  (I suspect this is the result of a mistaken attempt
-# to get people to fix their automake files not to use "MANS"; if "MANS"
-# is defined, it prints a warning and sets the exit status, but doesn't
-# exit, and then it just gives up if "man_MANS" isn't defined,
-# presumably on the theory that the only reason it wouldn't be defined
-# is because the automake file uses the obsolete "MANS" variable instead
-# of the shiny new "man_MANS" variable.)
-#
-# So we also define "man_MANS", but don't define it as anything;
-# automake will arrange that the Makefile define it as the union of all
-# the "man{section}_MANS" variables.
-#
 bin_PROGRAMS = @ethereal_bin@ @editcap_bin@ @mergecap_bin@ @tethereal_bin@ @dftest_bin@ @randpkt_bin@ @text2pcap_bin@
 bin_SCRIPTS = @idl2eth_bin@
-man1_MANS = @ethereal_man@ @editcap_man@ @mergecap_man@ @tethereal_man@ @text2pcap_man@ @idl2eth_man@
-man_MANS = 
 
 EXTRA_PROGRAMS = ethereal ethereal_static tethereal tethereal_static editcap mergecap dftest text2pcap
 EXTRA_SCRIPTS = idl2eth
@@ -81,8 +42,8 @@
 	packet-atalk.c \
 	packet-atm.c   \
 	packet-auto_rp.c   \
-	packet-bacapp.c   \
-	packet-bacnet.c   \
+	packet-bacapp.c	  \
+	packet-bacnet.c	  \
 	packet-beep.c \
 	packet-bgp.c   \
 	packet-bootp.c \
@@ -91,13 +52,13 @@
 	packet-bvlc.c \
 	packet-cdp.c   \
 	packet-cgmp.c  \
-	packet-chdlc.c  \
+	packet-chdlc.c	\
 	packet-clip.c  \
 	packet-clnp.c  \
 	packet-cops.c  \
 	packet-cups.c  \
 	packet-data.c  \
-	packet-dcerpc.c  \
+	packet-dcerpc.c	 \
 	packet-dcerpc-conv.c  \
 	packet-dcerpc-dfs.c \
 	packet-dcerpc-epm.c  \
@@ -107,7 +68,7 @@
 	packet-dcerpc-netlogon.c \
 	packet-dcerpc-oxid.c  \
 	packet-dcerpc-reg.c \
-	packet-dcerpc-remact.c  \
+	packet-dcerpc-remact.c	\
 	packet-dcerpc-samr.c \
 	packet-dcerpc-spoolss.c \
 	packet-dcerpc-srvsvc.c \
@@ -128,7 +89,7 @@
 	packet-ethertype.c   \
 	packet-fddi.c  \
 	packet-fr.c    \
-	packet-frame.c  \
+	packet-frame.c	\
 	packet-ftp.c   \
 	packet-giop.c  \
 	packet-gmrp.c \
@@ -150,7 +111,7 @@
 	packet-ieee8023.c \
 	packet-igmp.c  \
 	packet-igrp.c  \
-	packet-imap.c   \
+	packet-imap.c	\
 	packet-ip.c    \
 	packet-ipp.c   \
 	packet-ipsec.c \
@@ -186,7 +147,7 @@
 	packet-mip.c  \
 	packet-mmse.c  \
 	packet-mount.c \
-	packet-mpeg1.c  \
+	packet-mpeg1.c	\
 	packet-mpls.c \
 	packet-mrdisc.c \
 	packet-msdp.c  \
@@ -247,8 +208,8 @@
 	packet-sctp.c  \
 	packet-sdp.c   \
 	packet-sip.c   \
-	packet-skinny.c   \
-	packet-slimp3.c   \
+	packet-skinny.c	  \
+	packet-slimp3.c	  \
 	packet-sll.c   \
 	packet-smb.c   \
 	packet-smb-browse.c \
@@ -266,7 +227,7 @@
 	packet-srvloc.c \
 	packet-sscop.c \
 	packet-ssl.c   \
-	packet-stat.c   \
+	packet-stat.c	\
 	packet-stat-notify.c \
 	packet-sua.c   \
 	packet-syslog.c \
@@ -307,6 +268,8 @@
 	packet-zebra.c
 
 if HAVE_PLUGINS
+PLUGIN_DIR_NAME = plugins
+
 plugin_src = \
 	plugins/gryphon/packet-gryphon.c \
 	plugins/mgcp/packet-mgcp.c \
@@ -332,6 +295,9 @@
 	"-dlopen" plugins/giop/cosnaming.la \
 	"-dlopen" plugins/giop/coseventcomm.la
 else
+
+PLUGIN_DIR_NAME =
+
 plugin_src =
 
 plugin_static_ldadd =
@@ -368,7 +334,7 @@
 	packet-esis.h  \
 	packet-eth.h   \
 	packet-fddi.h  \
-	packet-frame.h  \
+	packet-frame.h	\
 	packet-giop.h  \
 	packet-gnutella.h \
 	packet-hclnfsd.h  \
@@ -416,7 +382,7 @@
 	packet-rquota.h \
 	packet-rtcp.h  \
 	packet-rtp.h   \
-	packet-rwall.h  \
+	packet-rwall.h	\
 	packet-rx.h  \
 	packet-scsi.h  \
 	packet-sll.h   \
@@ -428,7 +394,7 @@
 	packet-sna.h   \
 	packet-snmp.h	\
 	packet-spray.h \
-	packet-stat.h   \
+	packet-stat.h	\
 	packet-stat-notify.h \
 	packet-tcp.h   \
 	packet-tns.h \
@@ -447,19 +413,19 @@
 	packet-ypbind.h \
 	packet-yppasswd.h \
 	packet-ypserv.h \
-	packet-ypxfr.h 
+	packet-ypxfr.h
 
 ETHEREAL_COMMON_SRC = \
 	aftypes.h      \
 	alignment.h    \
-	afn.c          \
-	afn.h          \
-	asn1.c         \
-	asn1.h         \
+	afn.c	       \
+	afn.h	       \
+	asn1.c	       \
+	asn1.h	       \
 	bridged_pids.h \
 	column.c       \
 	column.h       \
-	color.h        \
+	color.h	       \
 	conditions.c   \
 	conditions.h   \
 	capture_stop_conditions.h   \
@@ -474,20 +440,20 @@
 	ipproto.c      \
 	ipproto.h      \
 	llcsaps.h      \
-	nlpid.h        \
-	oui.h          \
+	nlpid.h	       \
+	oui.h	       \
 	packet-dcerpc-nt.h \
 	packet-dcerpc-nt.c \
 	pcap-util.c    \
 	pcap-util.h    \
 	ppptypes.h     \
-	prefs.c        \
-	prefs.h        \
+	prefs.c	       \
+	prefs.h	       \
 	prefs-int.h    \
-	print.c        \
-	print.h        \
-	ps.c           \
-	ps.h           \
+	print.c	       \
+	print.h	       \
+	ps.c	       \
+	ps.h	       \
 	ptvcursor.c	\
 	ptvcursor.h	\
 	reassemble.c   \
@@ -496,14 +462,14 @@
 	ringbuffer.c   \
 	ringbuffer.h   \
 	rpc_defrag.h   \
-	smb.h          \
-	util.c         \
-	util.h         \
+	smb.h	       \
+	util.c	       \
+	util.h	       \
 	x11-declarations.h \
 	x11-register-info.h \
 	x264_prt_id.h  \
-	xdlc.c         \
-	xdlc.h         \
+	xdlc.c	       \
+	xdlc.h	       \
 	xmlstub.c      \
 	xmlstub.h
 
@@ -517,12 +483,12 @@
 	register.c     \
 	capture.c      \
 	capture.h      \
-	file.c         \
-	file.h         \
+	file.c	       \
+	file.h	       \
 	filters.c      \
 	filters.h      \
 	globals.h      \
-	menu.h         \
+	menu.h	       \
 	progress_dlg.h \
 	proto_hier_stats.h	\
 	proto_hier_stats.c	\
@@ -538,12 +504,12 @@
 	register-static.c     \
 	capture.c      \
 	capture.h      \
-	file.c         \
-	file.h         \
+	file.c	       \
+	file.h	       \
 	filters.c      \
 	filters.h      \
 	globals.h      \
-	menu.h         \
+	menu.h	       \
 	progress_dlg.h \
 	proto_hier_stats.h	\
 	proto_hier_stats.c	\
@@ -551,7 +517,7 @@
 	statusbar.h    \
 	summary.c      \
 	summary.h      \
-	ui_util.h	
+	ui_util.h
 
 EXTRA_ethereal_SOURCES = \
 	snprintf.c	\
@@ -606,17 +572,17 @@
 ethereal_LDADD = \
 	$(ethereal_optional_objects)	\
 	$(ethereal_additional_libs)	\
-	@SNMP_LIBS@ @SSL_LIBS@ 		\
+	@SNMP_LIBS@ @SSL_LIBS@		\
 	$(plugin_ldadd)			\
 	@PCAP_LIBS@ @GTK_LIBS@
 
 ethereal_static_LDADD = \
-	"-all-static" 			\
+	"-all-static"			\
 	$(plugin_static_ldadd)		\
 	$(ethereal_optional_objects)	\
 	$(ethereal_additional_libs)	\
 	@SNMP_LIBS@ @SSL_LIBS@		\
-	@PCAP_LIBS@ @GTK_LIBS@		
+	@PCAP_LIBS@ @GTK_LIBS@
 
 ethereal_LDFLAGS = -export-dynamic
 ethereal_static_LDFLAGS = -Wl,-static
@@ -649,7 +615,7 @@
 
 tethereal_static_DEPENDENCIES = \
 	$(ethereal_optional_objects)	\
-	$(tethereal_additional_libs)	
+	$(tethereal_additional_libs)
 
 # This automake variable adds to the link-line for the executable
 tethereal_LDADD = wiretap/libwiretap.a	\
@@ -813,13 +779,13 @@
 	debian/postinst		\
 	debian/prerm		\
 	debian/rules		\
-	doc/Makefile.am         \
-	doc/Makefile.nmake      \
-	doc/README.design       \
-	doc/README.developer    \
-	doc/README.idl2eth      \
-	doc/README.plugins      \
-	doc/README.regression   \
+	doc/Makefile.am		\
+	doc/Makefile.nmake	\
+	doc/README.design	\
+	doc/README.developer	\
+	doc/README.idl2eth	\
+	doc/README.plugins	\
+	doc/README.regression	\
 	doc/README.tvbuff	\
 	doc/dfilter2pod.pl	\
 	doc/editcap.pod		\
@@ -833,9 +799,9 @@
 	ethereal_be.py		\
 	ethereal_gen.py		\
 	mergecap.c		\
-	text2pcap.c             \
-	text2pcap.h             \
-	text2pcap-scanner.l     \
+	text2pcap.c		\
+	text2pcap.h		\
+	text2pcap-scanner.l	\
 	getopt.c		\
 	getopt.h		\
 	idl2eth.sh		\
@@ -868,16 +834,16 @@
 	image/tethereal.rc.in	\
 	image/text2pcap.rc.in	\
 	image/up_arrow.xpm	\
-	INSTALL.configure       \
+	INSTALL.configure	\
 	Makefile.nmake		\
 	make-manuf		\
 	make-reg-dotc		\
 	make-reg-dotc.py	\
-	manuf                   \
+	manuf			\
 	manuf.tmpl		\
-	ncp2222.py              \
+	ncp2222.py		\
 	packet-ncp2222.inc	\
-	print.ps                \
+	print.ps		\
 	process-x11-fields.pl	\
 	README.aix		\
 	README.bsd		\
@@ -924,35 +890,17 @@
 #dist-hook:
 #	@rm -f $(distdir)/register.c
 
-if HAVE_PLUGINS
-SUBDIRS = tools wiretap doc epan plugins packaging @ethereal_SUBDIRS@
-else
-SUBDIRS = tools wiretap doc epan packaging @ethereal_SUBDIRS@
-endif
+# "doc" needs to come towards the end because it relies on [t]ethereal,
+# being built in order to build the [t]ethereal.
+SUBDIRS = \
+	tools	\
+	wiretap	\
+	epan	\
+	$(PLUGIN_DIR_NAME)	\
+	@ethereal_SUBDIRS@	\
+	doc	\
+	packaging
 
-ethereal.1: ethereal doc/ethereal.pod.template
-	(cd doc ; \
-	$(MAKE) ../ethereal.1 )
-
-tethereal.1: tethereal doc/tethereal.pod.template
-	(cd doc ; \
-	$(MAKE) ../tethereal.1 )
-
-editcap.1: doc/editcap.pod
-	(cd doc ; \
-	$(MAKE) ../editcap.1 )
-
-idl2eth.1: doc/idl2eth.pod
-	(cd doc ; \
-	$(MAKE) ../idl2eth.1 )
-
-mergecap.1: doc/mergecap.pod
-	(cd doc ; \
-	$(MAKE) ../mergecap.1 )
-
-text2pcap.1: doc/text2pcap.pod
-	(cd doc ; \
-	$(MAKE) ../text2pcap.1 )
 
 packet-ncp2222.c : ncp2222.py
 	$(PYTHON) $(srcdir)/ncp2222.py > $@
Index: configure.in
===================================================================
RCS file: /cvsroot/ethereal/configure.in,v
retrieving revision 1.159
diff -u -r1.159 configure.in
--- configure.in	2002/03/12 10:37:01	1.159
+++ configure.in	2002/03/19 19:38:23
@@ -25,6 +25,7 @@
 AC_PROG_YACC
 AM_PROG_LEX
 AC_PATH_PROG(PERL, perl)
+AC_PATH_PROG(POD2HTML, pod2html)
 AC_PATH_PROG(POD2MAN, pod2man)
 AC_PATH_PROG(LEX, flex)
 AC_PATH_PROG(PYTHON, python)
Index: Makefile.am
===================================================================
RCS file: /cvsroot/ethereal/doc/Makefile.am,v
retrieving revision 1.13
diff -u -r1.13 Makefile.am
--- Makefile.am	2002/02/05 18:39:06	1.13
+++ Makefile.am	2002/03/20 14:53:39
@@ -7,62 +7,155 @@
 # By Gerald Combs <gerald@xxxxxxxx>
 # Copyright 1998 Gerald Combs
 #
-# 
+#
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
 # as published by the Free Software Foundation; either version 2
 # of the License, or (at your option) any later version.
-# 
+#
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
-# 
+#
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
-# We include dependencies on ../config.h in order to
-# capture when $(VERSION) changes.
-
-../ethereal.1: ethereal.pod ../config.h
-	$(POD2MAN) ethereal.pod                     \
-	--center="The Ethereal Network Analyzer" \
-	--release=$(VERSION)			 \
-	> ../ethereal.1
-
-ethereal.pod: ethereal.pod.template  ../ethereal
-	../ethereal -G | $(PERL) $(srcdir)/dfilter2pod.pl $(srcdir)/ethereal.pod.template > ethereal.pod
-
-../tethereal.1: tethereal.pod ../config.h
-	$(POD2MAN) tethereal.pod                     \
-	--center="The Ethereal Network Analyzer" \
-	--release=$(VERSION)			 \
-	> ../tethereal.1
-
-tethereal.pod: tethereal.pod.template  ../tethereal
-	../tethereal -G | $(PERL) $(srcdir)/dfilter2pod.pl $(srcdir)/tethereal.pod.template > tethereal.pod
-
-../editcap.1: editcap.pod ../config.h
-	$(POD2MAN) $(srcdir)/editcap.pod                     \
-	--center="The Ethereal Network Analyzer" \
-	--release=$(VERSION)			 \
-	> ../editcap.1
-
-../idl2eth.1: idl2eth.pod ../config.h
-	$(POD2MAN) $(srcdir)/idl2eth.pod                     \
-	--center="The Ethereal Network Analyzer" \
-	--release=$(VERSION)			 \
-	> ../idl2eth.1
-
-../mergecap.1: mergecap.pod ../config.h
-	$(POD2MAN) $(srcdir)/mergecap.pod                     \
-	--center="The Ethereal Network Analyzer" \
-	--release=$(VERSION)			 \
-	> ../mergecap.1
-
-../text2pcap.1: text2pcap.pod ../config.h
-	$(POD2MAN) $(srcdir)/text2pcap.pod                     \
-	--center="The Ethereal Network Analyzer" \
-	--release=$(VERSION)			 \
-	> ../text2pcap.1
+#
+# This is a hideous hack.
+#
+# Automake needs to know into which sections to install various man
+# pages; if the names in "man_MANS" have suffixes, it can infer the
+# sections from the name (e.g., "hello.1" goes in section 1), but if
+# they don't have suffixes, it can't tell what sections to put them, and
+# it just gives up and doesn't create any rules to install them (and it
+# gives up silently, so you have no clue what's wrong).
+#
+# Therefore, we can't just set "man_MANS" to a list of variables to be
+# filled in by the configure script, as those variables don't have man
+# page section numbers.
+#
+# It turns out (although this is not documented anywhere I could find
+# in the automake Info file) that if you define, instead, variables with
+# names like "man{section}_MANS", automake will infer that the names in
+# those variables are the names of man pages to be installed in section
+# "{section}".
+#
+# So, as all our man pages go in section 1, we define "man1_MANS" to
+# contain all the man page.
+#
+# *However*, if "man_MANS" isn't defined at all, automake concludes that
+# there are no man pages, the fact that, say, "man1_MANS" is defined
+# nonwithstanding!  (I suspect this is the result of a mistaken attempt
+# to get people to fix their automake files not to use "MANS"; if "MANS"
+# is defined, it prints a warning and sets the exit status, but doesn't
+# exit, and then it just gives up if "man_MANS" isn't defined,
+# presumably on the theory that the only reason it wouldn't be defined
+# is because the automake file uses the obsolete "MANS" variable instead
+# of the shiny new "man_MANS" variable.)
+#
+# So we also define "man_MANS", but don't define it as anything;
+# automake will arrange that the Makefile define it as the union of all
+# the "man{section}_MANS" variables.
+#
+man1_MANS = @ethereal_man@ @tethereal_man@ @editcap_man@ @mergecap_man@ @text2pcap_man@ @idl2eth_man@
+man_MANS =
+
+# The html versions of the man pages.
+noinst_DATA = ethereal.html tethereal.html editcap.html mergecap.html text2pcap.html idl2eth.html
+
+
+../ethereal:
+	(cd ..; $(MAKE) ethereal)
+../tethereal:
+	(cd ..; $(MAKE) tethereal)
+
+# We include dependencies on ../config.h in order to capture when
+# $(VERSION) changes.
+ethereal.1: ethereal.pod ../config.h
+	$(POD2MAN) ethereal.pod			    \
+	--center="The Ethereal Network Analyzer" \
+	--release=$(VERSION)			 \
+	> $@ || rm -f $@
+
+ethereal.html: ethereal.pod ../config.h
+	$(POD2HTML)	\
+	--infile=ethereal.pod	\
+	--outfile=$@	\
+	--noindex	\
+	--title="The Ethereal Network Analyzer $(VERSION)"
+
+ethereal.pod: ethereal.pod.template ../ethereal
+	../ethereal -G | $(PERL) $(srcdir)/dfilter2pod.pl $(srcdir)/$@.template > $@ || rm -f $@
+
+tethereal.1: tethereal.pod ../config.h
+	$(POD2MAN) tethereal.pod		     \
+	--center="The Ethereal Network Analyzer" \
+	--release=$(VERSION)			 \
+	> $@ || rm -f $@
+
+tethereal.html: tethereal.pod ../config.h
+	$(POD2HTML)	\
+	--infile=tethereal.pod	\
+	--outfile=$@	\
+	--noindex	\
+	--title="The Ethereal Network Analyzer $(VERSION)"
+
+tethereal.pod: tethereal.pod.template ../tethereal
+	../tethereal -G | $(PERL) $(srcdir)/dfilter2pod.pl $(srcdir)/$@.template > $@ || rm -f $@
+
+editcap.1: editcap.pod ../config.h
+	$(POD2MAN) $(srcdir)/editcap.pod		     \
+	--center="The Ethereal Network Analyzer" \
+	--release=$(VERSION)			 \
+	> $@ || rm -f $@
+
+editcap.html: editcap.pod ../config.h
+	$(POD2HTML)	\
+	--infile=editcap.pod	\
+	--outfile=$@	\
+	--noindex	\
+	--title="The Ethereal Network Analyzer $(VERSION)"
+
+
+idl2eth.1: idl2eth.pod ../config.h
+	$(POD2MAN) $(srcdir)/idl2eth.pod		     \
+	--center="The Ethereal Network Analyzer" \
+	--release=$(VERSION)			 \
+	> $@ || rm -f $@
+
+idl2eth.html: idl2eth.pod ../config.h
+	$(POD2HTML)	\
+	--infile=idl2eth.pod	\
+	--outfile=$@	\
+	--noindex	\
+	--title="The Ethereal Network Analyzer $(VERSION)"
+
+
+mergecap.1: mergecap.pod ../config.h
+	$(POD2MAN) $(srcdir)/mergecap.pod		      \
+	--center="The Ethereal Network Analyzer" \
+	--release=$(VERSION)			 \
+	> $@ || rm -f $@
+
+mergecap.html: mergecap.pod ../config.h
+	$(POD2HTML)	\
+	--infile=mergecap.pod	\
+	--outfile=$@	\
+	--noindex	\
+	--title="The Ethereal Network Analyzer $(VERSION)"
+
+
+text2pcap.1: text2pcap.pod ../config.h
+	$(POD2MAN) $(srcdir)/text2pcap.pod		       \
+	--center="The Ethereal Network Analyzer" \
+	--release=$(VERSION)			 \
+	> $@ || rm -f $@
+
+text2pcap.html: text2pcap.pod ../config.h
+	$(POD2HTML)	\
+	--infile=text2pcap.pod	\
+	--outfile=$@	\
+	--noindex	\
+	--title="The Ethereal Network Analyzer $(VERSION)"
Index: ethereal.pod.template
===================================================================
RCS file: /cvsroot/ethereal/doc/ethereal.pod.template,v
retrieving revision 1.273
diff -u -r1.273 ethereal.pod.template
--- ethereal.pod.template	2002/03/18 00:45:11	1.273
+++ ethereal.pod.template	2002/03/19 19:42:03
@@ -12,7 +12,7 @@
 S<[ B<-c> count ]>
 S<[ B<-f> capture filter expression ]>
 S<[ B<-h> ]>
-S<[ B<-i> interface ]> 
+S<[ B<-i> interface ]>
 S<[ B<-k> ]>
 S<[ B<-l> ]>
 S<[ B<-m> font ]>
@@ -75,7 +75,7 @@
 syntax follows the rules of the pcap library.  This syntax is different
 from the display filter syntax.
 
-Compressed file support uses (and therefore requires) the zlib library. 
+Compressed file support uses (and therefore requires) the zlib library.
 If the zlib library is not present, B<Ethereal> will compile, but will
 be unable to read compressed files.
 
@@ -171,7 +171,7 @@
 
 =item -m
 
-Sets the name of the font used by B<Ethereal> for most text. 
+Sets the name of the font used by B<Ethereal> for most text.
 B<Ethereal> will construct the name of the bold font used for the data
 in the byte view pane that corresponds to the field selected in the
 protocol tree pane from the name of the main text font.
@@ -186,7 +186,7 @@
 Turns on name resolving for particular types of addresses and port
 numbers; the argument is a string that may contain the letters B<m> to
 enable MAC address resolution, B<n> to enable network address
-resolution, and B<t> to enable transport-layer port number resolution. 
+resolution, and B<t> to enable transport-layer port number resolution.
 This overrides B<-n> if both B<-N> and B<-n> are present.
 
 =item -o
@@ -235,7 +235,7 @@
 
 =item -s
 
-Sets the default snapshot length to use when capturing live data. 
+Sets the default snapshot length to use when capturing live data.
 No more than I<snaplen> bytes of each network packet will be read into
 memory, or saved to disk.
 
@@ -282,9 +282,9 @@
 Save the current capture, or the packets currently displayed from that
 capture, to a file.  Check boxes let you select whether to save all
 packets, or just those that have passed the current display filter and/or
-those that are currently marked, and an option menu lets you select (from 
-a list of file formats in which at particular capture, or the packets 
-currently displayed from that capture, can be saved), a file format in 
+those that are currently marked, and an option menu lets you select (from
+a list of file formats in which at particular capture, or the packets
+currently displayed from that capture, can be saved), a file format in
 which to save it.
 
 =item File:Print
@@ -345,7 +345,7 @@
 
 =item Edit:Protocols
 
-Edits the list of protocols, allowing protocol dissection to be 
+Edits the list of protocols, allowing protocol dissection to be
 enabled or disabled.
 
 =item Capture:Start
@@ -446,33 +446,31 @@
 filter (or resetting it back to no display filter).
 
 The window in which the data stream is displayed lets you select whether
-to display:
+:
 
 =over 4
 
-=item
+=item *
 
-whether to display the entire conversation, or one or the other side of
-it;
+to display the entire conversation, or one or the other side of it;
 
-=item
+=item *
 
-whether the data being displayed is to be treated as ASCII or EBCDIC
-text or as raw hex data;
+the data being displayed is to be treated as ASCII or EBCDIC text or
+as raw hex data;
 
 =back
 
-=back
-
-=over 4
-
-=item
-
+=for html <p>
 and lets you print what's currently being displayed, using the same
-print options that are used for the I<File:Print Packet> menu item, or
+print options that are used for the <EM>File:Print Packet</EM> menu item, or
 save it as text to a file.
 
-=back
+=for man .Ip "" 4
+.StupidHack
+and lets you print what's currently being displayed, using the same
+print options that are used for the \fIFile:Print Packet\fR menu item, or
+save it as text to a file.
 
 =item Tools:Decode As
 
@@ -498,6 +496,8 @@
 protocol. In the table, they are listed under "End Packets" and
 "End Bytes".
 
+=back
+
 =head2 WINDOWS
 
 =over 4
@@ -541,7 +541,7 @@
 
 =item Bottom Pane
 
-The lowest pane contains a hex dump of the actual packet data. 
+The lowest pane contains a hex dump of the actual packet data.
 Selecting a field in the I<protocol tree> highlights the corresponding
 bytes in this section.
 
@@ -549,7 +549,7 @@
 
 =item Current Filter
 
-A display filter can be entered into the strip at the bottom. 
+A display filter can be entered into the strip at the bottom.
 A filter for HTTP, HTTPS, and DNS traffic might look like this:
 
   tcp.port == 80 || tcp.port == 443 || tcp.port == 53
@@ -576,7 +576,7 @@
 or PostScript, and sending the output directly to a command or saving it
 to a file.  The I<Command:> text entry box, on UNIX-compatible systems,
 is the command to send files to (usually B<lpr>), and the I<File:> entry
-box lets you enter the name of the file you wish to save to. 
+box lets you enter the name of the file you wish to save to.
 Additionally, you can select the I<File:> button to browse the file
 system for a particular save file.
 
@@ -639,7 +639,7 @@
 =item Scrollbars
 
 The vertical scrollbars in the three panes can be set to be either on
-the left or the right. 
+the left or the right.
 
 =item Selection Bars
 
@@ -787,7 +787,7 @@
 box and makes the filter in the I<Filter string> entry the current
 display filter, and applies it to the current capture.  In the I<Read
 Filter> dialog, closes the dialog box and makes the filter in the
-I<Filter string> entry the filter in the I<Open Capture File> dialog. 
+I<Filter string> entry the filter in the I<Open Capture File> dialog.
 In the I<Search Filter> dialog, closes the dialog box and makes the
 filter in the I<Filter string> entry the filter in the I<Find Frame>
 dialog.
@@ -963,7 +963,7 @@
     String (text)
     Double-precision floating point number
 
-An integer may be expressed in decimal, octal, or hexadecimal notation. 
+An integer may be expressed in decimal, octal, or hexadecimal notation.
 The following three display filters are equivalent:
 
     frame.pkt_len > 10
@@ -991,7 +991,7 @@
 
 If a string of bytes contains only one byte, then it is represented as
 an unsigned integer.  That is, if you are testing for hex value 'ff' in
-a one-byte byte-string, you must compare it agains '0xff' and not 'ff'. 
+a one-byte byte-string, you must compare it agains '0xff' and not 'ff'.
 
 IPv4 addresses can be represented in either dotted decimal notation, or
 by using the hostname:
@@ -1034,7 +1034,7 @@
     eth.src[0:3] == 00:00:83
 
 If the length of your byte-slice is only one byte, then it is still
-represented in hex, but without the preceding "0x": 
+represented in hex, but without the preceding "0x":
 
     llc[3] == aa
 
@@ -1069,7 +1069,7 @@
 
 	field[1,3-5,9:] == 01:03:04:05:09:0a:0b
 
-All the above tests can be combined together with logical expressions. 
+All the above tests can be combined together with logical expressions.
 These too are expressable in C-like syntax or with English-like
 abbreviations:
 
@@ -1180,9 +1180,9 @@
 if %APPDATA% isn't defined, the
 F<%USERPROFILE%\Application Data\Ethereal\ipxnets> file)
 on Windows systems, is consulted next.  The format is the same as the
-F<ethers> file, except that each address if four bytes instead of six. 
+F<ethers> file, except that each address if four bytes instead of six.
 Additionally, the address can be represented a single hexadecimal
-number, as is more common in the IPX world, rather than four hex octets. 
+number, as is more common in the IPX world, rather than four hex octets.
 For example, these four lines are valid lines of an ipxnets file.
 
   C0.A8.2C.00              HR
@@ -1192,7 +1192,7 @@
 
 =head1 SEE ALSO
 
-L<tethereal(1)>, L<editcap(1)>, L<tcpdump(8)>, L<pcap(3)>
+I<tethereal(1)>, I<editcap(1)>, I<tcpdump(8)>, I<pcap(3)>
 
 =head1 NOTES
 
@@ -1221,7 +1221,7 @@
   Didier Jorand            <Didier.Jorand[AT]alcatel.fr>
   Jun-ichiro itojun Hagino <itojun[AT]iijlab.net>
   Richard Sharpe           <sharpe[AT]ns.aus.com>
-  John McDermott           <jjm[AT]jkintl.com> 
+  John McDermott           <jjm[AT]jkintl.com>
   Jeff Jahr                <jjahr[AT]shastanets.com>
   Brad Robel-Forrest       <bradr[AT]watchguard.com>
   Ashok Narayanan          <ashokn[AT]cisco.com>
@@ -1251,7 +1251,7 @@
   Gerrit Gehnen            <G.Gehnen[AT]atrie.de>
   Craig Newell             <craign[AT]cheque.uq.edu.au>
   Ed Meaney                <emeaney[AT]altiga.com>
-  Dietmar Petras           <DPetras[AT]ELSA.de> 
+  Dietmar Petras           <DPetras[AT]ELSA.de>
   Fred Reimer              <fwr[AT]ga.prestige.net>
   Florian Lohoff           <flo[AT]rfc822.org>
   Jochen Friedrich         <jochen+ethereal[AT]scram.de>
Index: ethereal.pod.template
===================================================================
RCS file: /cvsroot/ethereal/doc/ethereal.pod.template,v
retrieving revision 1.273
diff -u -r1.273 ethereal.pod.template
--- ethereal.pod.template	2002/03/18 00:45:11	1.273
+++ ethereal.pod.template	2002/03/19 19:39:24
@@ -12,7 +12,7 @@
 S<[ B<-c> count ]>
 S<[ B<-f> capture filter expression ]>
 S<[ B<-h> ]>
-S<[ B<-i> interface ]> 
+S<[ B<-i> interface ]>
 S<[ B<-k> ]>
 S<[ B<-l> ]>
 S<[ B<-m> font ]>
@@ -75,7 +75,7 @@
 syntax follows the rules of the pcap library.  This syntax is different
 from the display filter syntax.
 
-Compressed file support uses (and therefore requires) the zlib library. 
+Compressed file support uses (and therefore requires) the zlib library.
 If the zlib library is not present, B<Ethereal> will compile, but will
 be unable to read compressed files.
 
@@ -171,7 +171,7 @@
 
 =item -m
 
-Sets the name of the font used by B<Ethereal> for most text. 
+Sets the name of the font used by B<Ethereal> for most text.
 B<Ethereal> will construct the name of the bold font used for the data
 in the byte view pane that corresponds to the field selected in the
 protocol tree pane from the name of the main text font.
@@ -186,7 +186,7 @@
 Turns on name resolving for particular types of addresses and port
 numbers; the argument is a string that may contain the letters B<m> to
 enable MAC address resolution, B<n> to enable network address
-resolution, and B<t> to enable transport-layer port number resolution. 
+resolution, and B<t> to enable transport-layer port number resolution.
 This overrides B<-n> if both B<-N> and B<-n> are present.
 
 =item -o
@@ -235,7 +235,7 @@
 
 =item -s
 
-Sets the default snapshot length to use when capturing live data. 
+Sets the default snapshot length to use when capturing live data.
 No more than I<snaplen> bytes of each network packet will be read into
 memory, or saved to disk.
 
@@ -282,9 +282,9 @@
 Save the current capture, or the packets currently displayed from that
 capture, to a file.  Check boxes let you select whether to save all
 packets, or just those that have passed the current display filter and/or
-those that are currently marked, and an option menu lets you select (from 
-a list of file formats in which at particular capture, or the packets 
-currently displayed from that capture, can be saved), a file format in 
+those that are currently marked, and an option menu lets you select (from
+a list of file formats in which at particular capture, or the packets
+currently displayed from that capture, can be saved), a file format in
 which to save it.
 
 =item File:Print
@@ -345,7 +345,7 @@
 
 =item Edit:Protocols
 
-Edits the list of protocols, allowing protocol dissection to be 
+Edits the list of protocols, allowing protocol dissection to be
 enabled or disabled.
 
 =item Capture:Start
@@ -446,34 +446,25 @@
 filter (or resetting it back to no display filter).
 
 The window in which the data stream is displayed lets you select whether
-to display:
+:
 
 =over 4
 
-=item
+=item *
 
-whether to display the entire conversation, or one or the other side of
-it;
+to display the entire conversation, or one or the other side of it;
 
-=item
+=item *
 
-whether the data being displayed is to be treated as ASCII or EBCDIC
-text or as raw hex data;
+the data being displayed is to be treated as ASCII or EBCDIC text or
+as raw hex data;
 
 =back
 
-=back
-
-=over 4
-
-=item
-
 and lets you print what's currently being displayed, using the same
 print options that are used for the I<File:Print Packet> menu item, or
 save it as text to a file.
 
-=back
-
 =item Tools:Decode As
 
 If you have a packet selected, this menu item will present a dialog
@@ -498,6 +489,8 @@
 protocol. In the table, they are listed under "End Packets" and
 "End Bytes".
 
+=back
+
 =head2 WINDOWS
 
 =over 4
@@ -541,7 +534,7 @@
 
 =item Bottom Pane
 
-The lowest pane contains a hex dump of the actual packet data. 
+The lowest pane contains a hex dump of the actual packet data.
 Selecting a field in the I<protocol tree> highlights the corresponding
 bytes in this section.
 
@@ -549,7 +542,7 @@
 
 =item Current Filter
 
-A display filter can be entered into the strip at the bottom. 
+A display filter can be entered into the strip at the bottom.
 A filter for HTTP, HTTPS, and DNS traffic might look like this:
 
   tcp.port == 80 || tcp.port == 443 || tcp.port == 53
@@ -576,7 +569,7 @@
 or PostScript, and sending the output directly to a command or saving it
 to a file.  The I<Command:> text entry box, on UNIX-compatible systems,
 is the command to send files to (usually B<lpr>), and the I<File:> entry
-box lets you enter the name of the file you wish to save to. 
+box lets you enter the name of the file you wish to save to.
 Additionally, you can select the I<File:> button to browse the file
 system for a particular save file.
 
@@ -639,7 +632,7 @@
 =item Scrollbars
 
 The vertical scrollbars in the three panes can be set to be either on
-the left or the right. 
+the left or the right.
 
 =item Selection Bars
 
@@ -787,7 +780,7 @@
 box and makes the filter in the I<Filter string> entry the current
 display filter, and applies it to the current capture.  In the I<Read
 Filter> dialog, closes the dialog box and makes the filter in the
-I<Filter string> entry the filter in the I<Open Capture File> dialog. 
+I<Filter string> entry the filter in the I<Open Capture File> dialog.
 In the I<Search Filter> dialog, closes the dialog box and makes the
 filter in the I<Filter string> entry the filter in the I<Find Frame>
 dialog.
@@ -963,7 +956,7 @@
     String (text)
     Double-precision floating point number
 
-An integer may be expressed in decimal, octal, or hexadecimal notation. 
+An integer may be expressed in decimal, octal, or hexadecimal notation.
 The following three display filters are equivalent:
 
     frame.pkt_len > 10
@@ -991,7 +984,7 @@
 
 If a string of bytes contains only one byte, then it is represented as
 an unsigned integer.  That is, if you are testing for hex value 'ff' in
-a one-byte byte-string, you must compare it agains '0xff' and not 'ff'. 
+a one-byte byte-string, you must compare it agains '0xff' and not 'ff'.
 
 IPv4 addresses can be represented in either dotted decimal notation, or
 by using the hostname:
@@ -1034,7 +1027,7 @@
     eth.src[0:3] == 00:00:83
 
 If the length of your byte-slice is only one byte, then it is still
-represented in hex, but without the preceding "0x": 
+represented in hex, but without the preceding "0x":
 
     llc[3] == aa
 
@@ -1069,7 +1062,7 @@
 
 	field[1,3-5,9:] == 01:03:04:05:09:0a:0b
 
-All the above tests can be combined together with logical expressions. 
+All the above tests can be combined together with logical expressions.
 These too are expressable in C-like syntax or with English-like
 abbreviations:
 
@@ -1180,9 +1173,9 @@
 if %APPDATA% isn't defined, the
 F<%USERPROFILE%\Application Data\Ethereal\ipxnets> file)
 on Windows systems, is consulted next.  The format is the same as the
-F<ethers> file, except that each address if four bytes instead of six. 
+F<ethers> file, except that each address if four bytes instead of six.
 Additionally, the address can be represented a single hexadecimal
-number, as is more common in the IPX world, rather than four hex octets. 
+number, as is more common in the IPX world, rather than four hex octets.
 For example, these four lines are valid lines of an ipxnets file.
 
   C0.A8.2C.00              HR
@@ -1192,7 +1185,7 @@
 
 =head1 SEE ALSO
 
-L<tethereal(1)>, L<editcap(1)>, L<tcpdump(8)>, L<pcap(3)>
+I<tethereal(1)>, I<editcap(1)>, I<tcpdump(8)>, I<pcap(3)>
 
 =head1 NOTES
 
@@ -1221,7 +1214,7 @@
   Didier Jorand            <Didier.Jorand[AT]alcatel.fr>
   Jun-ichiro itojun Hagino <itojun[AT]iijlab.net>
   Richard Sharpe           <sharpe[AT]ns.aus.com>
-  John McDermott           <jjm[AT]jkintl.com> 
+  John McDermott           <jjm[AT]jkintl.com>
   Jeff Jahr                <jjahr[AT]shastanets.com>
   Brad Robel-Forrest       <bradr[AT]watchguard.com>
   Ashok Narayanan          <ashokn[AT]cisco.com>
@@ -1251,7 +1244,7 @@
   Gerrit Gehnen            <G.Gehnen[AT]atrie.de>
   Craig Newell             <craign[AT]cheque.uq.edu.au>
   Ed Meaney                <emeaney[AT]altiga.com>
-  Dietmar Petras           <DPetras[AT]ELSA.de> 
+  Dietmar Petras           <DPetras[AT]ELSA.de>
   Fred Reimer              <fwr[AT]ga.prestige.net>
   Florian Lohoff           <flo[AT]rfc822.org>
   Jochen Friedrich         <jochen+ethereal[AT]scram.de>
Index: editcap.pod
===================================================================
RCS file: /cvsroot/ethereal/doc/editcap.pod,v
retrieving revision 1.18
diff -u -r1.18 editcap.pod
--- editcap.pod	2002/01/29 09:45:56	1.18
+++ editcap.pod	2002/03/19 19:39:27
@@ -127,7 +127,7 @@
 
 =head1 SEE ALSO
 
-L<tcpdump(8)>, L<pcap(3)>, L<ethereal(1)>, L<mergecap(1)>
+I<tcpdump(8)>, I<pcap(3)>, I<ethereal(1)>, I<mergecap(1)>
 
 =head1 NOTES
 
Index: idl2eth.pod
===================================================================
RCS file: /cvsroot/ethereal/doc/idl2eth.pod,v
retrieving revision 1.3
diff -u -r1.3 idl2eth.pod
--- idl2eth.pod	2001/09/10 21:59:57	1.3
+++ idl2eth.pod	2002/03/19 19:39:28
@@ -70,7 +70,7 @@
 
 =head1 SEE ALSO
 
-L<ethereal(1)>
+I<ethereal(1)>
 
 
 =head1 NOTES
Index: mergecap.pod
===================================================================
RCS file: /cvsroot/ethereal/doc/mergecap.pod,v
retrieving revision 1.11
diff -u -r1.11 mergecap.pod
--- mergecap.pod	2002/01/29 09:45:56	1.11
+++ mergecap.pod	2002/03/19 19:39:29
@@ -124,7 +124,7 @@
 
 =head1 SEE ALSO
 
-L<tcpdump(8)>, L<pcap(3)>, L<ethereal(1)>, L<editcap(1)>
+I<tcpdump(8)>, I<pcap(3)>, I<ethereal(1)>, I<editcap(1)>
 
 =head1 NOTES
 
Index: text2pcap.pod
===================================================================
RCS file: /cvsroot/ethereal/doc/text2pcap.pod,v
retrieving revision 1.9
diff -u -r1.9 text2pcap.pod
--- text2pcap.pod	2002/01/20 22:36:03	1.9
+++ text2pcap.pod	2002/03/19 19:39:30
@@ -161,7 +161,7 @@
 
 =head1 SEE ALSO
 
-L<tcpdump(8)>, L<pcap(3)>, L<ethereal(1)>, L<editcap(1)>, L<strptime(3)>.
+I<tcpdump(8)>, I<pcap(3)>, I<ethereal(1)>, I<editcap(1)>, I<strptime(3)>.
 
 =head1 NOTES
 

-- 
-Andrew Feren
 Cetacean Networks, Inc.
 Portsmouth, NH