Ethereal-dev: [Ethereal-dev] compilation under cygwin

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

From: Jason House <jhouse@xxxxxxxxx>
Date: Tue, 11 Jun 2002 10:09:59 -0400
I tried to follow your recipe a while back.  I ran into trouble in that
the generated makefile still contained conditional expressions that (I
think) should not be there.  I've attached all the source/generated
makefiles from my attempt.  The first offensive line in Makefile is way
down on line #1092.  There are more places w/ trouble...  Anybody have
any thoughts as to what caused my problems?

Ronnie Sahlberg wrote:
> 
> I have built ethereal using the latest cygwin.
> However, there is something wrong with the makefile generated by autogen so
> 
> when running make it will not link ethereal properly, only compile (almost?)
> everything.
> 
> So, run
> autogen
> make (which will die after a while with an error)
> make ethereal.exe  (which will compile and link it.)
> 
> ----- Original Message -----
> From: <andreas.sikkema@xxxxxxxxxxx>
> To: <ethereal-dev@xxxxxxxxxxxx>
> Sent: Tuesday, June 11, 2002 5:28 PM
> Subject: Re: [Ethereal-dev] fdopen issues with ethereal on win32
> 
> > > So my question is, what are others using to compile ethereal with on
> > win32?
> > > Is there some magic I'm missing?
> >
> > Visual Studio 6
> >
> > I seem to remember someone having success buuilding plugins with mingw,
> > but I am not sure if someone ever succeeded in building Ethereal using
> cygwin.
> >
> > --
> > Andreas Sikkema
> > andreas.sikkema@xxxxxxxxxxx
> > "While you're waiting, read the free novel we sent you.
> >  It's a Spanish story about a guy named `Manual'" - Dilbert
> >
> >
> > _______________________________________________
> > Ethereal-dev mailing list
> > Ethereal-dev@xxxxxxxxxxxx
> > http://www.ethereal.com/mailman/listinfo/ethereal-dev
> 
> _______________________________________________
> Ethereal-dev mailing list
> Ethereal-dev@xxxxxxxxxxxx
> http://www.ethereal.com/mailman/listinfo/ethereal-dev
## Makefile for building ethereal.exe with Microsoft C and nmake
## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
#
# $Id: Makefile.nmake,v 1.184 2002/05/09 23:50:24 gram Exp $

include config.nmake
include <win32.mak>

############### no need to modify below this line #########

CC = cl
LINK= link

LDFLAGS = /NOLOGO /INCREMENTAL:no /MACHINE:I386 $(LOCAL_LDFLAGS)

CFLAGS=-DHAVE_CONFIG_H $(LOCAL_CFLAGS) /I$(GLIB_DIR) /I$(GLIB_DIR)\gmodule \
	/I$(GTK_DIR) /I. /Iwiretap /I$(GTK_DIR)\gdk /I$(GTK_DIR)\gdk\win32 \
	/I$(PCAP_DIR)/include -D_U_=""

CVARSDLL=-DWIN32 -DNULL=0 -D_MT -D_DLL

.c.obj::
   $(CC) $(CVARSDLL) $(CFLAGS) -Fd.\ -c $<

DISSECTOR_SRC = \
	packet-aarp.c  \
	packet-afp.c   \
	packet-afs.c   \
	packet-aim.c   \
	packet-aodv.c  \
	packet-arp.c   \
	packet-asap.c  \
	packet-ascend.c\
	packet-atalk.c \
	packet-atm.c   \
	packet-auto_rp.c   \
	packet-bacapp.c   \
	packet-bacnet.c   \
	packet-beep.c \
	packet-bgp.c   \
	packet-bootp.c \
	packet-bootparams.c \
	packet-bpdu.c  \
	packet-bvlc.c \
	packet-cdp.c   \
	packet-cgmp.c  \
	packet-chdlc.c  \
	packet-clip.c  \
	packet-clnp.c  \
	packet-cops.c  \
	packet-cups.c  \
	packet-data.c  \
	packet-dccp.c \
	packet-dcerpc.c  \
	packet-dcerpc-conv.c  \
	packet-dcerpc-dfs.c \
	packet-dcerpc-epm.c  \
	packet-dcerpc-lsa.c \
	packet-dcerpc-mgmt.c  \
	packet-dcerpc-ndr.c  \
	packet-dcerpc-netlogon.c \
	packet-dcerpc-nt.c \
	packet-dcerpc-oxid.c  \
	packet-dcerpc-reg.c \
	packet-dcerpc-remact.c  \
	packet-dcerpc-samr.c \
	packet-dcerpc-spoolss.c \
	packet-dcerpc-srvsvc.c \
	packet-dcerpc-wkssvc.c \
	packet-ddtp.c  \
	packet-dec-bpdu.c \
	packet-dhcpv6.c \
	packet-diameter.c \
	packet-dlsw.c  \
	packet-dns.c   \
	packet-dsi.c   \
	packet-dvmrp.c \
	packet-eap.c \
	packet-eapol.c \
	packet-eigrp.c \
	packet-esis.c  \
	packet-eth.c   \
	packet-ethertype.c   \
	packet-fddi.c  \
	packet-fr.c    \
	packet-frame.c  \
	packet-ftp.c   \
	packet-giop.c  \
	packet-gmrp.c \
	packet-gnutella.c \
	packet-gre.c   \
	packet-gtp.c   \
	packet-gvrp.c  \
	packet-h1.c    \
	packet-h261.c  \
	packet-hclnfsd.c  \
	packet-hsrp.c  \
	packet-http.c  \
	packet-iapp.c  \
	packet-icap.c  \
	packet-icmpv6.c\
	packet-icp.c   \
	packet-icq.c   \
	packet-ieee80211.c \
	packet-ieee8023.c \
	packet-igmp.c  \
	packet-igrp.c  \
	packet-imap.c   \
	packet-ip.c    \
	packet-ipp.c   \
	packet-ipsec.c \
	packet-ipv6.c  \
	packet-ipx.c   \
	packet-irc.c   \
	packet-isakmp.c\
	packet-iscsi.c \
	packet-isis.c  \
	packet-isis-clv.c \
	packet-isis-hello.c \
	packet-isis-lsp.c \
	packet-isis-snp.c \
	packet-isl.c   \
	packet-isup.c  \
	packet-iua.c   \
	packet-kerberos.c \
	packet-klm.c   \
	packet-l2tp.c  \
	packet-lapb.c  \
	packet-lapbether.c \
	packet-lapd.c  \
	packet-ldap.c  \
	packet-ldp.c  \
	packet-llc.c   \
	packet-lmi.c   \
	packet-lmp.c   \
	packet-lpd.c   \
	packet-m2pa.c  \
	packet-m2tp.c  \
	packet-m2ua.c  \
	packet-m3ua.c  \
	packet-mapi.c  \
	packet-mbtcp.c \
	packet-mip.c  \
	packet-mmse.c  \
	packet-mount.c \
	packet-mpeg1.c  \
	packet-mpls.c \
	packet-mrdisc.c \
	packet-msdp.c  \
	packet-msnip.c \
	packet-msproxy.c \
	packet-mtp2.c \
	packet-mtp3.c \
	packet-nbipx.c \
	packet-nbns.c  \
	packet-ncp.c   \
	packet-ncp2222.c   \
	packet-ndmp.c \
	packet-netbios.c \
	packet-nfs.c   \
	packet-nisplus.c \
	packet-nlm.c   \
	packet-nntp.c  \
	packet-ntp.c  \
	packet-null.c  \
	packet-osi.c   \
	packet-osi-options.c \
	packet-ospf.c  \
	packet-pcnfsd.c \
	packet-pflog.c \
	packet-pgm.c   \
	packet-pim.c   \
	packet-pop.c   \
	packet-portmap.c   \
	packet-ppp.c   \
	packet-pppoe.c \
	packet-pptp.c  \
	packet-prism.c \
	packet-q2931.c \
	packet-q931.c  \
	packet-qllc.c  \
	packet-quake.c \
	packet-quakeworld.c \
	packet-quake2.c \
	packet-quake3.c \
	packet-radius.c\
	packet-ranap.c \
	packet-raw.c   \
	packet-rip.c   \
	packet-ripng.c \
	packet-rlogin.c \
	packet-rpc.c   \
	packet-rquota.c \
	packet-rsh.c   \
	packet-rsvp.c  \
	packet-rtcp.c  \
	packet-rtp.c   \
	packet-rtsp.c  \
	packet-rwall.c \
	packet-rx.c  \
	packet-sap.c   \
	packet-sccp.c  \
	packet-scsi.c  \
	packet-sctp.c  \
	packet-sdp.c   \
	packet-sip.c   \
	packet-skinny.c   \
	packet-slimp3.c   \
	packet-sll.c   \
	packet-smb.c   \
	packet-smb-browse.c \
	packet-smb-common.c \
	packet-smb-logon.c \
	packet-smb-mailslot.c \
	packet-smb-pipe.c \
	packet-smpp.c \
	packet-smtp.c \
	packet-sna.c   \
	packet-snaeth.c \
	packet-snmp.c	\
	packet-socks.c \
	packet-spray.c \
	packet-srvloc.c \
	packet-sscop.c \
	packet-ssl.c   \
	packet-stat.c   \
	packet-stat-notify.c \
	packet-sua.c   \
	packet-syslog.c \
	packet-tacacs.c \
	packet-tcp.c   \
	packet-telnet.c\
	packet-tftp.c  \
	packet-time.c  \
	packet-tns.c \
	packet-tpkt.c  \
	packet-tr.c    \
	packet-trmac.c \
	packet-tsp.c \
	packet-ucp.c   \
	packet-udp.c   \
	packet-v120.c \
	packet-vines.c \
	packet-vj.c   \
	packet-vlan.c \
	packet-vrrp.c \
	packet-vtp.c  \
	packet-wccp.c \
	packet-wcp.c \
	packet-who.c  \
	packet-wap.c \
	packet-wtls.c \
	packet-wsp.c \
	packet-wtp.c \
	packet-x11.c	\
	packet-x25.c   \
	packet-xdmcp.c \
	packet-xot.c   \
	packet-yhoo.c  \
	packet-ypbind.c \
	packet-yppasswd.c \
	packet-ypserv.c \
	packet-ypxfr.c \
	packet-zebra.c

DISSECTOR_OBJECTS = $(DISSECTOR_SRC:.c=.obj)

ETHEREAL_COMMON_OBJECTS = \
	afn.obj          \
	asn1.obj         \
	capture_stop_conditions.obj \
	capture-wpcap.obj \
	column.obj       \
	conditions.obj   \
	follow.obj       \
	getopt.obj	 \
	in_cksum.obj	 \
	ipproto.obj      \
	pcap-util.obj    \
	prefs.obj        \
	print.obj        \
	ps.obj           \
	ptvcursor.obj    \
	reassemble.obj   \
	register.obj     \
	ringbuffer.obj   \
	util.obj         \
	xdlc.obj         \
	xmlstub.obj	 \

ethereal_OBJECTS = \
	$(DISSECTOR_OBJECTS) \
	$(ETHEREAL_COMMON_OBJECTS) \
	capture.obj		\
	file.obj         	\
	filters.obj      	\
	proto_hier_stats.obj	\
	summary.obj

tethereal_OBJECTS = \
	$(DISSECTOR_OBJECTS) \
	$(ETHEREAL_COMMON_OBJECTS) \
	tethereal.obj

dftest_OBJECTS = \
	$(DISSECTOR_OBJECTS) \
	$(ETHEREAL_COMMON_OBJECTS) \
	dftest.obj

EXTRA_OBJECTS = \
#	snprintf.obj	\
#	strerror.obj	\
	mkstemp.obj	\
	strptime.obj

ethereal_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
	gtk\libui.lib epan\ethereal.lib \
	epan\dfilter\dfilter.lib epan\ftypes\ftypes.lib \
	wsock32.lib user32.lib \
	$(GTK_DIR)\gtk\gtk-$(GTK_VERSION).lib \
	$(GTK_DIR)\gdk\gdk-$(GTK_VERSION).lib \
	$(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib
#	$(PCAP_DIR)\lib\wpcap.lib

tethereal_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
	epan\ethereal.lib \
	epan\dfilter\dfilter.lib epan\ftypes\ftypes.lib \
	wsock32.lib user32.lib \
	$(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib

editcap_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
	wsock32.lib user32.lib \
	$(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib

mergecap_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
	wsock32.lib user32.lib \
	$(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib

dftest_LIBS=  wiretap\wiretap-$(WTAP_VERSION).lib epan\ethereal.lib \
	epan\dfilter\dfilter.lib epan\ftypes\ftypes.lib \
	wsock32.lib user32.lib \
	wiretap\wiretap-$(WTAP_VERSION).lib \
	$(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib

EXECUTABLES=ethereal.exe tethereal.exe editcap.exe mergecap.exe text2pcap.exe

RESOURCES=image\ethereal.res image\tethereal.res image\editcap.res image\mergecap.res image\text2pcap.res

all: tools wiretap gtk epan image $(EXECUTABLES) $(RESOURCES)

$(RESOURCES): image

wiretap\wiretap-$(WTAP_VERSION).lib: wiretap

ethereal.exe	: config.h $(ethereal_OBJECTS) $(EXTRA_OBJECTS) epan gtk image\ethereal.res wiretap\wiretap-$(WTAP_VERSION).lib gtk\libui.lib plugins
	@echo Linking $@
	$(LINK) @<<
		/OUT:ethereal.exe $(guiflags) $(guilibsdll) $(LDFLAGS) /SUBSYSTEM:windows $(ethereal_LIBS) $(ethereal_OBJECTS) $(EXTRA_OBJECTS) image\ethereal.res
<<

tethereal.exe	: config.h $(tethereal_OBJECTS) $(EXTRA_OBJECTS) epan image\tethereal.res wiretap\wiretap-$(WTAP_VERSION).lib plugins
	@echo Linking $@
	$(LINK) @<<
		/OUT:tethereal.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console $(tethereal_LIBS) $(tethereal_OBJECTS) $(EXTRA_OBJECTS) image\tethereal.res
<<

editcap.exe	: config.h editcap.obj getopt.obj wiretap\wiretap-$(WTAP_VERSION).lib image\editcap.res
	@echo Linking $@
	$(LINK) @<<
		/OUT:editcap.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console editcap.obj getopt.obj $(editcap_LIBS) image\editcap.res
<<

mergecap.exe	: config.h mergecap.obj getopt.obj wiretap\wiretap-$(WTAP_VERSION).lib image\mergecap.res
	@echo Linking $@
	$(LINK) @<<
		/OUT:mergecap.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console mergecap.obj getopt.obj $(mergecap_LIBS) image\mergecap.res
<<

text2pcap.exe	: config.h text2pcap.obj text2pcap-scanner.obj getopt.obj strptime.obj image\text2pcap.res
	@echo Linking $@
	$(LINK) @<<
		/OUT:text2pcap.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console text2pcap.obj text2pcap-scanner.obj getopt.obj strptime.obj image\text2pcap.res
<<

dftest.exe	: $(dftest_OBJECTS) $(EXTRA_OBJECTS)
	$(LINK) @<<
		/OUT:dftest.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console $(dftest_LIBS) $(dftest_OBJECTS) $(EXTRA_OBJECTS)
<<

config.h	: config.h.win32
	sed -e s/@VERSION@/$(VERSION)/ < config.h.win32 > $@

ps.c	: rdps.exe print.ps
	rdps print.ps ps.c

#
# The header files listed here are built from x11-fields using Perl;
# we declare a dependency here so that they get built.
#
packet-x11.obj	: packet-x11.c x11-declarations.h x11-register-info.h

#
# Build various header files for the X11 dissector.
#
x11-declarations.h x11-register-info.h: x11-fields process-x11-fields.pl
	$(PERL) process-x11-fields.pl <x11-fields

packet-ncp2222.c : ncp2222.py
!IFDEF PYTHON
	@echo Making packet-ncp2222.c
	$(PYTHON) ncp2222.py -o packet-ncp2222.c
!ELSE
	@echo Faking packet-ncp2222.c...
	@echo Python is required to build the NCP disector
	@echo Hiding packet-ncp.c...
	mv packet-ncp.c packet-ncp.c.save
	touch packet-ncp.c $@
!ENDIF

register.c: $(DISSECTOR_SRC)
!IFDEF PYTHON
	@echo Making register.c (using python)
	@$(PYTHON) make-reg-dotc.py . $(DISSECTOR_SRC)
!ELSE
	@echo Making register.c (using sh)
	@sh make-reg-dotc register.c $(DISSECTOR_SRC)
!ENDIF

text2pcap-scanner.c : text2pcap-scanner.l
	$(LEX) -otext2pcap-scanner.c text2pcap-scanner.l

clean:
	rm -f $(ethereal_OBJECTS) $(EXTRA_OBJECTS) $(EXECUTABLES) $(PDB_FILE) \
		tethereal.obj editcap.obj mergecap.obj text2pcap.obj \
		text2pcap-scanner.obj text2pcap-scanner.c register.c \
		rdps.obj rdps.pdb config.h ps.c packet-ncp2222.c register.c \
		rdps.exe rdps.ilk dftest.obj dftest.exe $(RESOURCES)
	cd wiretap
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../gtk
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../epan
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../plugins
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../tools
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../image
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../doc
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../packaging/nsis
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
	cd ../..

tools::
	cd tools
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
	cd ..

image::
	cd image
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
	cd ..

wiretap::
	cd wiretap
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
	cd ..

gtk:: config.h
	cd gtk
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
	cd ..

epan::
	cd epan
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
	cd ..

plugins::
	cd plugins
	$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
	cd ..
# Makefile.am
# Automake file for Ethereal
#
# $Id: Makefile.am,v 1.428 2002/05/09 23:50:24 gram Exp $
#
# 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

sysconf_DATA = manuf dictionary.dtd dictionary.xml mobileipv4.xml \
	nasreq.xml sunping.xml

DISSECTOR_SRC = \
	packet-aarp.c  \
	packet-afp.c   \
	packet-afs.c   \
	packet-aim.c   \
	packet-aodv.c  \
	packet-arp.c   \
	packet-asap.c  \
	packet-ascend.c\
	packet-atalk.c \
	packet-atm.c   \
	packet-auto_rp.c   \
	packet-bacapp.c   \
	packet-bacnet.c   \
	packet-beep.c \
	packet-bgp.c   \
	packet-bootp.c \
	packet-bootparams.c \
	packet-bpdu.c  \
	packet-bvlc.c \
	packet-cdp.c   \
	packet-cgmp.c  \
	packet-chdlc.c  \
	packet-clip.c  \
	packet-clnp.c  \
	packet-cops.c  \
	packet-cups.c  \
	packet-data.c  \
	packet-dccp.c \
	packet-dcerpc.c  \
	packet-dcerpc-conv.c  \
	packet-dcerpc-dfs.c \
	packet-dcerpc-epm.c  \
	packet-dcerpc-lsa.c \
	packet-dcerpc-mgmt.c  \
	packet-dcerpc-ndr.c  \
	packet-dcerpc-netlogon.c \
	packet-dcerpc-nt.c \
	packet-dcerpc-oxid.c  \
	packet-dcerpc-reg.c \
	packet-dcerpc-remact.c  \
	packet-dcerpc-samr.c \
	packet-dcerpc-spoolss.c \
	packet-dcerpc-srvsvc.c \
	packet-dcerpc-wkssvc.c \
	packet-ddtp.c  \
	packet-dec-bpdu.c \
	packet-dhcpv6.c \
	packet-diameter.c \
	packet-dlsw.c  \
	packet-dns.c   \
	packet-dsi.c   \
	packet-dvmrp.c \
	packet-eap.c \
	packet-eapol.c \
	packet-eigrp.c \
	packet-esis.c  \
	packet-eth.c   \
	packet-ethertype.c   \
	packet-fddi.c  \
	packet-fr.c    \
	packet-frame.c  \
	packet-ftp.c   \
	packet-giop.c  \
	packet-gmrp.c \
	packet-gnutella.c \
	packet-gre.c   \
	packet-gtp.c   \
	packet-gvrp.c  \
	packet-h1.c    \
	packet-h261.c  \
	packet-hclnfsd.c  \
	packet-hsrp.c  \
	packet-http.c  \
	packet-iapp.c  \
	packet-icap.c  \
	packet-icmpv6.c\
	packet-icp.c   \
	packet-icq.c   \
	packet-ieee80211.c \
	packet-ieee8023.c \
	packet-igmp.c  \
	packet-igrp.c  \
	packet-imap.c   \
	packet-ip.c    \
	packet-ipp.c   \
	packet-ipsec.c \
	packet-ipv6.c  \
	packet-ipx.c   \
	packet-irc.c   \
	packet-isakmp.c\
	packet-iscsi.c \
	packet-isis.c  \
	packet-isis-clv.c \
	packet-isis-hello.c \
	packet-isis-lsp.c \
	packet-isis-snp.c \
	packet-isl.c   \
	packet-isup.c  \
	packet-iua.c   \
	packet-kerberos.c \
	packet-klm.c   \
	packet-l2tp.c  \
	packet-lapb.c  \
	packet-lapbether.c \
	packet-lapd.c  \
	packet-ldap.c  \
	packet-ldp.c   \
	packet-llc.c   \
	packet-lmi.c   \
	packet-lmp.c   \
	packet-lpd.c   \
	packet-m2pa.c  \
	packet-m2tp.c  \
	packet-m2ua.c  \
	packet-m3ua.c  \
	packet-mapi.c  \
	packet-mbtcp.c \
	packet-mip.c  \
	packet-mmse.c  \
	packet-mount.c \
	packet-mpeg1.c  \
	packet-mpls.c \
	packet-mrdisc.c \
	packet-msdp.c  \
	packet-msnip.c \
	packet-msproxy.c \
	packet-mtp2.c \
	packet-mtp3.c \
	packet-nbipx.c \
	packet-nbns.c  \
	packet-ncp.c   \
	packet-ncp2222.c   \
	packet-ndmp.c  \
	packet-netbios.c \
	packet-nfs.c   \
	packet-nisplus.c \
	packet-nlm.c   \
	packet-nntp.c  \
	packet-ntp.c  \
	packet-null.c  \
	packet-osi.c   \
	packet-osi-options.c \
	packet-ospf.c  \
	packet-pcnfsd.c \
	packet-pflog.c \
	packet-pgm.c   \
	packet-pim.c   \
	packet-pop.c   \
	packet-portmap.c   \
	packet-ppp.c   \
	packet-pppoe.c \
	packet-pptp.c  \
	packet-prism.c \
	packet-q2931.c \
	packet-q931.c  \
	packet-qllc.c  \
	packet-quake.c \
	packet-quakeworld.c \
	packet-quake2.c \
	packet-quake3.c \
	packet-radius.c\
	packet-ranap.c \
	packet-raw.c   \
	packet-rip.c   \
	packet-ripng.c \
	packet-rlogin.c \
	packet-rpc.c   \
	packet-rquota.c \
	packet-rsh.c   \
	packet-rsvp.c  \
	packet-rtcp.c  \
	packet-rtp.c   \
	packet-rtsp.c  \
	packet-rwall.c \
	packet-rx.c  \
	packet-sap.c   \
	packet-sccp.c  \
	packet-scsi.c  \
	packet-sctp.c  \
	packet-sdp.c   \
	packet-sip.c   \
	packet-skinny.c   \
	packet-slimp3.c   \
	packet-sll.c   \
	packet-smb.c   \
	packet-smb-browse.c \
	packet-smb-common.c \
	packet-smb-logon.c \
	packet-smb-mailslot.c \
	packet-smb-pipe.c \
	packet-smpp.c \
	packet-smtp.c \
	packet-sna.c   \
	packet-snaeth.c \
	packet-snmp.c	\
	packet-socks.c \
	packet-spray.c \
	packet-srvloc.c \
	packet-sscop.c \
	packet-ssl.c   \
	packet-stat.c   \
	packet-stat-notify.c \
	packet-sua.c   \
	packet-syslog.c \
	packet-tacacs.c \
	packet-tcp.c   \
	packet-telnet.c\
	packet-tftp.c  \
	packet-time.c  \
	packet-tns.c \
	packet-tpkt.c  \
	packet-tr.c    \
	packet-trmac.c \
	packet-tsp.c \
	packet-ucp.c   \
	packet-udp.c   \
	packet-v120.c \
	packet-vines.c \
	packet-vj.c   \
	packet-vlan.c \
	packet-vrrp.c \
	packet-vtp.c  \
	packet-wccp.c \
	packet-wcp.c \
	packet-who.c  \
	packet-wap.c \
	packet-wtls.c \
	packet-wsp.c \
	packet-wtp.c \
	packet-x11.c   \
	packet-x25.c   \
	packet-xdmcp.c \
	packet-xot.c   \
	packet-yhoo.c  \
	packet-ypbind.c \
	packet-yppasswd.c \
	packet-ypserv.c \
	packet-ypxfr.c \
	packet-zebra.c

if HAVE_PLUGINS
plugin_src = \
	plugins/gryphon/packet-gryphon.c \
	plugins/mgcp/packet-mgcp.c \
	plugins/giop/packet-cosnaming.c \
	plugins/giop/packet-coseventcomm.c

plugin_static_ldadd = \
	plugins/gryphon/packet-gryphon-static.o		\
	plugins/mgcp/packet-mgcp-static.o		\
	plugins/giop/packet-cosnaming-static.o		\
	plugins/giop/packet-coseventcomm-static.o

plugin_libs = \
	plugins/gryphon/gryphon.la \
	plugins/mgcp/mgcp.la \
	plugins/giop/cosnaming.la \
	plugins/giop/coseventcomm.la

plugin_ldadd = \
	"-dlopen" self	\
	"-dlopen" plugins/gryphon/gryphon.la \
	"-dlopen" plugins/mgcp/mgcp.la \
	"-dlopen" plugins/giop/cosnaming.la \
	"-dlopen" plugins/giop/coseventcomm.la
else
plugin_src =

plugin_static_ldadd =

plugin_libs =

plugin_ldadd =
endif

noinst_HEADERS = \
	packet-afp.h   \
	packet-afs.h   \
	packet-afs-macros.h \
	packet-afs-register-info.h \
	packet-afs-defs.h \
	packet-arp.h   \
	packet-atalk.h \
	packet-bgp.h   \
	packet-bootparams.h \
	packet-chdlc.h \
	packet-clip.h  \
	packet-dccp.h \
	packet-dcerpc.h \
	packet-dcerpc-dfs.h \
	packet-dcerpc-lsa.h \
	packet-dcerpc-netlogon.h \
	packet-dcerpc-nt.h \
	packet-dcerpc-reg.h \
	packet-dcerpc-samr.h \
	packet-dcerpc-spoolss.h \
	packet-dcerpc-srvsvc.h \
	packet-dcerpc-wkssvc.h \
	packet-ddtp.h  \
	packet-diameter-defs.h \
	packet-dns.h   \
	packet-dvmrp.h \
	packet-esis.h  \
	packet-eth.h   \
	packet-fddi.h  \
	packet-frame.h  \
	packet-giop.h  \
	packet-gnutella.h \
	packet-hclnfsd.h  \
	packet-http.h  \
	packet-ieee80211.h \
	packet-ieee8023.h \
	packet-igmp.h  \
	packet-ip.h    \
	packet-ipsec.h \
	packet-ipv6.h  \
	packet-ipx.h   \
	packet-isis.h  \
	packet-isis-clv.h \
	packet-isis-hello.h \
	packet-isis-lsp.h \
	packet-isis-snp.h \
	packet-isl.h   \
	packet-klm.h   \
	packet-ldap.h  \
	packet-llc.h   \
	packet-mount.h \
	packet-mrdisc.h \
	packet-msnip.h \
	packet-mtp3.h  \
	packet-ncp-int.h \
	packet-netbios.h \
	packet-nfs.h   \
	packet-nisplus.h \
	packet-nlm.h   \
	packet-ntp.h  \
	packet-null.h  \
	packet-osi.h   \
	packet-osi-options.h \
	packet-pcnfsd.h \
	packet-pflog.h \
	packet-pim.h   \
	packet-portmap.h   \
	packet-ppp.h   \
	packet-prism.h \
	packet-q931.h  \
	packet-raw.h   \
	packet-ripng.h \
	packet-rpc.h   \
	packet-rquota.h \
	packet-rsvp.h  \
	packet-rtcp.h  \
	packet-rtp.h   \
	packet-rwall.h  \
	packet-rx.h  \
	packet-scsi.h  \
	packet-sll.h   \
	packet-smb-browse.h \
	packet-smb-common.h \
	packet-smb-logon.h \
	packet-smb-mailslot.h \
	packet-smb-pipe.h \
	packet-sna.h   \
	packet-snmp.h	\
	packet-spray.h \
	packet-stat.h   \
	packet-stat-notify.h \
	packet-tcp.h   \
	packet-tns.h \
	packet-tpkt.h  \
	packet-tr.h    \
	packet-udp.h   \
	packet-vines.h \
	packet-vlan.h \
	packet-wccp.h \
	packet-wap.h \
	packet-wtls.h \
	packet-wtp.h \
	packet-wsp.h \
	packet-x11-keysym.h	\
	packet-yhoo.h  \
	packet-ypbind.h \
	packet-yppasswd.h \
	packet-ypserv.h \
	packet-ypxfr.h 

ETHEREAL_COMMON_SRC = \
	aftypes.h      \
	alignment.h    \
	afn.c          \
	afn.h          \
	asn1.c         \
	asn1.h         \
	bridged_pids.h \
	column.c       \
	column.h       \
	color.h        \
	conditions.c   \
	conditions.h   \
	capture_stop_conditions.h   \
	capture_stop_conditions.c   \
	etypes.h       \
	follow.c       \
	follow.h       \
	format-oid.h   \
	greproto.h     \
	in_cksum.c     \
	in_cksum.h     \
	ipproto.c      \
	ipproto.h      \
	llcsaps.h      \
	nlpid.h        \
	oui.h          \
	pcap-util.c    \
	pcap-util.h    \
	ppptypes.h     \
	prefs.c        \
	prefs.h        \
	prefs-int.h    \
	print.c        \
	print.h        \
	ps.c           \
	ps.h           \
	ptvcursor.c	\
	ptvcursor.h	\
	reassemble.c   \
	reassemble.h   \
	register.h     \
	ringbuffer.c   \
	ringbuffer.h   \
	rpc_defrag.h   \
	smb.h          \
	util.c         \
	util.h         \
	x11-declarations.h \
	x11-register-info.h \
	x264_prt_id.h  \
	xdlc.c         \
	xdlc.h         \
	xmlstub.c      \
	xmlstub.h

BUILT_SOURCES = \
	x11-declarations.h \
	x11-register-info.h

ethereal_SOURCES = \
	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	capture.c      \
	capture.h      \
	file.c         \
	file.h         \
	filters.c      \
	filters.h      \
	globals.h      \
	menu.h         \
	progress_dlg.h \
	proto_hier_stats.h	\
	proto_hier_stats.c	\
	simple_dialog.h \
	statusbar.h    \
	summary.c      \
	summary.h      \
	ui_util.h

ethereal_static_SOURCES = \
	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register-static.c     \
	capture.c      \
	capture.h      \
	file.c         \
	file.h         \
	filters.c      \
	filters.h      \
	globals.h      \
	menu.h         \
	progress_dlg.h \
	proto_hier_stats.h	\
	proto_hier_stats.c	\
	simple_dialog.h \
	statusbar.h    \
	summary.c      \
	summary.h      \
	ui_util.h	

EXTRA_ethereal_SOURCES = \
	snprintf.c	\
	snprintf.h	\
	snprintf-imp.h	\
	strerror.c	\
	strerror.h	\
	strcasecmp.c	\
	strncasecmp.c	\
	mkstemp.c	\
	mkstemp.h	\
	strptime.c	\
	strptime.h

# Optional objects that I know how to build. These will be
# linked into the ethereal executable.
# They will also be linked into the tethereal executable; if this
# list ever grows to include something that can't be linked with
# tethereal, or if tethereal needs something that ethereal doesn't,
# we should probably split this into stuff needed both
# by ethereal and tethereal and stuff needed only by one or the
# other.
ethereal_optional_objects = @SNPRINTF_O@ @STRERROR_O@ \
	@STRCASECMP_O@ @STRNCASECMP_O@ @MKSTEMP_O@ @STRPTIME_O@

# Additional libs that I know how to build. These will be
# linked into the ethereal executable.
ethereal_additional_libs = \
	wiretap/libwiretap.a	\
	gtk/libui.a		\
	epan/libethereal.a	\
	epan/ftypes/libftypes.a \
	epan/dfilter/libdfilter.a

# This is the automake dependency variable for the executable
ethereal_DEPENDENCIES = \
	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	$(plugin_libs)

ethereal_static_DEPENDENCIES = \
	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)

# This automake variable adds to the link-line for the executable.
#
# Note that Ethereal doesn't have to be linked with @GLIB_LIBS@, as
# they are included in @GTK_LIBS@, and doesn't have to be linked with
# @SOCKET_LIBS@ or @NSL_LIBS@, as those should also be included in
# @GTK_LIBS@ (as those are also needed for X applications, and GTK+
# applications are X applications).
ethereal_LDADD = \
	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@ 		\
	$(plugin_ldadd)			\
	@PCAP_LIBS@ @GTK_LIBS@

ethereal_static_LDADD = \
	"-all-static" 			\
	$(plugin_static_ldadd)		\
	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	@PCAP_LIBS@ @GTK_LIBS@		

ethereal_LDFLAGS = -export-dynamic
ethereal_static_LDFLAGS = -Wl,-static

tethereal_SOURCES = \
	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	tethereal.c

tethereal_static_SOURCES = \
	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register-static.c     \
	tethereal.c

# Additional libs that I know how to build. These will be
# linked into the tethereal executable.
tethereal_additional_libs =		\
	wiretap/libwiretap.a		\
	epan/libethereal.a		\
	epan/ftypes/libftypes.a		\
	epan/dfilter/libdfilter.a

# This is the automake dependency variable for the executable
tethereal_DEPENDENCIES = \
	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	$(plugin_libs)

tethereal_static_DEPENDENCIES = \
	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	

# This automake variable adds to the link-line for the executable
tethereal_LDADD = wiretap/libwiretap.a	\
	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	$(plugin_ldadd)			\
	@GLIB_LIBS@ -lm \
	@PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@

tethereal_static_LDADD = \
	"-all-static"		\
	$(plugin_static_ldadd)	\
	wiretap/libwiretap.a	\
	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	@GLIB_LIBS@ -lm \
	@PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@

tethereal_LDFLAGS = -export-dynamic
tethereal_static_LDFLAGS = -Wl,-static

# Optional objects that I know how to build, and that are needed by
# text2pcap.
text2pcap_optional_objects = @STRERROR_O@ @STRPTIME_O@

text2pcap_SOURCES = text2pcap.c text2pcap-scanner.l
text2pcap_DEPENDENCIES = text2pcap.h

# This automake variable adds to the link-line for the executable
text2pcap_LDADD = $(text2pcap_optional_objects)

mergecap_SOURCES = mergecap.c
mergecap_DEPENDENCIES = wiretap/libwiretap.a

editcap_SOURCES = editcap.c

# This is the automake dependency variable for the executable
editcap_DEPENDENCIES = wiretap/libwiretap.a

# This automake variable adds to the link-line for the executable
editcap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@
mergecap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@

#
# Build various header files for the X11 dissector.
#
x11-declarations.h x11-register-info.h: x11-fields process-x11-fields.pl
	$(PERL) $(srcdir)/process-x11-fields.pl <$(srcdir)/x11-fields

#
# Build shell scripts by doing variable substitution.
# Taken from autoconf 2.13.
#
editsh = sed -e 's,@''SHELL''@,$(SHELL),g'

SUFFIXES = .sh
.sh:
	rm -f $@ [email protected]
	$(editsh) $< > [email protected] && chmod +x [email protected] && mv [email protected] $@

#
# Build "register.c", which contains a function "register_all_protocols()"
# that calls the register routines for all protocols.
#
# We do this by grepping through sources.  If that turns out to be too slow,
# maybe we could just require every .o file to have an register routine
# of a given name (packet-aarp.o -> proto_register_aarp, etc.).
#
# Formatting conventions:  The name of the proto_register_* routines must
# start in column zero, or must be preceded only by "void " starting in
# column zero, and must not be inside #if.
#
# We assume that all dissector routines are in "packet-XXX.c" files.
#
# For some unknown reason, having a big "for" loop in the Makefile
# to scan all the "packet-XXX.c" files doesn't work with some "make"s;
# they seem to pass only the first few names in the list to the shell,
# for some reason.
#
# Therefore, we have a script to generate the "register.c" file.
#
# The first argument is the directory in which the source files live.
# All subsequent arguments are the files to scan.
#
register.c: $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
	@echo Making register.c
	@$(srcdir)/make-reg-dotc register.c $(srcdir) $(DISSECTOR_SRC)

register-static.c: $(plugin_src) $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
	@echo Making register-static.c
	@$(srcdir)/make-reg-dotc register-static.c $(srcdir) $(plugin_src) $(DISSECTOR_SRC)

ps.c: print.ps rdps
	./rdps $(srcdir)/print.ps ps.c

rdps: rdps.c
	$(CC) $(CFLAGS) -o rdps $(srcdir)/rdps.c

randpkt.o: randpkt.c
	$(CC) -DHAVE_CONFIG_H -I. `glib-config --cflags` -c $(srcdir)/randpkt.c

randpkt: randpkt.o wiretap/libwiretap.a
	$(LINK) -o randpkt randpkt.o wiretap/libwiretap.a `glib-config --libs` -lz


dftest_SOURCES = \
	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	dftest.c

dftest_additional_libs =		\
	wiretap/libwiretap.a		\
	epan/libethereal.a		\
	epan/ftypes/libftypes.a		\
	epan/dfilter/libdfilter.a

dftest_DEPENDENCIES = \
	$(ethereal_optional_objects)	\
	$(dftest_additional_libs)	\
	$(plugin_libs)

# This automake variable adds to the link-line for the executable
dftest_LDADD = \
	$(ethereal_optional_objects)	\
	$(dftest_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	$(plugin_ldadd)			\
	@GLIB_LIBS@ -lm \
	@PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@

dftest_LDFLAGS = -export-dynamic

CLEANFILES =	\
	idl2eth

DISTCLEANFILES =	\
	register.c	\
	register-static.c \
	rdps		\
	ps.c		\
	*~

EXTRA_DIST = \
	Ethereal.desktop	\
	aclocal-flags		\
	capture-wpcap.c		\
	capture-wpcap.h		\
	cleanbld.bat		\
	config.h.win32		\
	config.nmake		\
	debian/README.debian	\
	debian/changelog	\
	debian/control		\
	debian/copyright	\
	debian/dirs		\
	debian/docs		\
	debian/menu		\
	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/README.tvbuff	\
	doc/dfilter2pod.pl	\
	doc/editcap.pod		\
	doc/ethereal.pod.template \
	doc/idl2eth.pod		\
	doc/mergecap.pod	\
	doc/randpkt.txt		\
	doc/tethereal.pod.template \
	doc/text2pcap.pod	\
	editcap.c		\
	ethereal_be.py		\
	ethereal_gen.py		\
	mergecap.c		\
	text2pcap.c             \
	text2pcap.h             \
	text2pcap-scanner.l     \
	getopt.c		\
	getopt.h		\
	idl2eth.sh		\
	image/Makefile.nmake	\
	image/README.image	\
	image/clist_ascend.xpm	\
	image/clist_descend.xpm	\
	image/dn_arrow.xpm	\
	image/editcap.rc.in	\
	image/eexcl3d64.xpm	\
	image/eicon3d16.xpm	\
	image/eicon3d32.xpm	\
	image/eicon3d48.xpm	\
	image/eicon3d64.xpm	\
	image/elogo3d48x48.png	\
	image/ethereal.ico	\
	image/ethereal.rc.in	\
	image/ethereal48x48-trans.png  \
	image/ethereal48x48.png \
	image/hi16-app-ethereal.png	\
	image/hi32-app-ethereal.png	\
	image/hi48-app-ethereal.png	\
	image/icon-ethereal.xpm	\
	image/icon-excl.xpm	\
	image/lo16-app-ethereal.png	\
	image/lo32-app-ethereal.png	\
	image/lo48-app-ethereal.png	\
	image/mergecap.rc.in	\
	image/tethereal.rc.in	\
	image/text2pcap.rc.in	\
	image/up_arrow.xpm	\
	INSTALL.configure       \
	Makefile.nmake		\
	make-manuf		\
	make-reg-dotc		\
	make-reg-dotc.py	\
	manuf                   \
	manuf.tmpl		\
	ncp2222.py              \
	packet-ncp2222.inc	\
	print.ps                \
	process-x11-fields.pl	\
	README.aix		\
	README.bsd		\
	README.hpux		\
	README.irix		\
	README.linux		\
	README.tru64		\
	README.vmware		\
	README.win32		\
	randpkt.c		\
	rdps.c			\
	TODO			\
	dictionary.dtd		\
	dictionary.xml		\
	mobileipv4.xml		\
	nasreq.xml		\
	sunping.xml		\
	x11-fields

if SETUID_INSTALL
install-exec-hook:
	-chmod +s $(DESTDIR)$(bindir)/ethereal
	-chmod +s $(DESTDIR)$(bindir)/tethereal
	-chmod +s $(DESTDIR)$(bindir)/ethereal_static
else
install-exec-hook:
endif

#
# Currently register.c can be included in the distribution because
# we always build all protocol dissectors. We used to have to check
# whether or not to build the snmp dissector. If we again need to
# variably build something, making register.c non-portable, uncomment
# the dist-hook line below.
#
# Oh, yuk.  We don't want to include "register.c" in the distribution, as
# its contents depend on the configuration, and therefore we want it
# to be built when the first "make" is done; however, Automake insists
# on putting *all* source into the distribution.
#
# We work around this by having a "dist-hook" rule that deletes
# "register.c", so that "dist" won't pick it up.
#
#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

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 -o $@

libtool: $(LIBTOOL_DEPS)
	$(SHELL) ./config.status --recheck

# We load top_stagedir with an explicit path so that libtool doesn't freak.
top_stagedir=`cd $(top_srcdir) && pwd`/packaging/svr4.stage
stagedir=$(top_stagedir)/$(PACKAGE).stage
host_cpu=@host_cpu@
host_os=@host_os@

svr4-package: $(bin_SCRIPTS) $(lib_LTLIBRARIES)
	if test x$(HAVE_SVR4_PACKAGING) = xyes ; then \
		rm -rf $(stagedir) ; \
		$(MAKE) DESTDIR=$(stagedir) install-strip; \
		$(srcdir)/packaging/svr4/mkpkg \
			$(PACKAGE) \
			$(PACKAGE)-$(VERSION)-$(host_os)-$(host_cpu)-local \
			$(prefix) \
			$(top_stagedir) ; \
	else \
		echo "Error: SVR4 packaging tools not found." ; \
		echo "Package build abandoned." ; \
	fi

solaris-package: svr4-package

rpm_topdir=`cd $(top_srcdir) && pwd`/packaging/rpm
rpm-package: dist
	if test x$(HAVE_RPM) = xyes ; then \
		cd $(rpm_topdir) ; \
		mkdir BUILD RPMS SOURCES ; \
		cd SOURCES ; \
		ln -s ../../../$(distdir).tar.gz ; \
		cd .. ; \
		rpm --define "_topdir `cd . && pwd`" -bb SPECS/ethereal.spec && \
			echo "Package successfully built in `pwd`/RPMS." ; \
	else \
		echo "Error: RPM executable and/or source directory not found." ; \
	fi
srpm-package: dist
	if test x$(HAVE_RPM) = xyes ; then \
		cd $(rpm_topdir) ; \
		mkdir BUILD SRPMS SOURCES ; \
		cd SOURCES ; \
		ln -s ../../../$(distdir).tar.gz ; \
		cd .. ; \
		rpm --define "_topdir `cd . && pwd`" -bs SPECS/ethereal.spec && \
			echo "Package successfully built in `pwd`/SRPMS." ; \
	else \
		echo "Error: RPM executable and/or source directory not found." ; \
	fi

debian-package: debian/rules
	dpkg-buildpackage -rfakeroot -us -uc

clean-local:
	rm -rf $(top_stagedir)
# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am

# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

# Makefile.am
# Automake file for Ethereal
#
# $Id: Makefile.am,v 1.428 2002/05/09 23:50:24 gram Exp $
#
# 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.


SHELL = @SHELL@

srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@

bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include

DESTDIR =

pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@

top_builddir = .

ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@

INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@

NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = @host_alias@
host_triplet = @host@
AS = @AS@
CC = @CC@
CPP = @CPP@
DATAFILE_DIR = @DATAFILE_DIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_CONFIG = @GLIB_CONFIG@
GLIB_LIBS = @GLIB_LIBS@
GTK_CFLAGS = @GTK_CFLAGS@
GTK_CONFIG = @GTK_CONFIG@
GTK_LIBS = @GTK_LIBS@
HAVE_PKGMK = @HAVE_PKGMK@
HAVE_PKGPROTO = @HAVE_PKGPROTO@
HAVE_PKGTRANS = @HAVE_PKGTRANS@
HAVE_RPM = @HAVE_RPM@
HAVE_SVR4_PACKAGING = @HAVE_SVR4_PACKAGING@
LEX = @LEX@
LIBTOOL = @LIBTOOL@
LIBTOOL_DEPS = @LIBTOOL_DEPS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MKSTEMP_C = @MKSTEMP_C@
MKSTEMP_O = @MKSTEMP_O@
NSL_LIBS = @NSL_LIBS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PCAP_LIBS = @PCAP_LIBS@
PERL = @PERL@
PLUGIN_DIR = @PLUGIN_DIR@
POD2MAN = @POD2MAN@
PYTHON = @PYTHON@
RANLIB = @RANLIB@
SNMP_LIBS = @SNMP_LIBS@
SNPRINTF_C = @SNPRINTF_C@
SNPRINTF_O = @SNPRINTF_O@
SOCKET_LIBS = @SOCKET_LIBS@
SSL_LIBS = @SSL_LIBS@
STRCASECMP_C = @STRCASECMP_C@
STRCASECMP_O = @STRCASECMP_O@
STRERROR_C = @STRERROR_C@
STRERROR_O = @STRERROR_O@
STRIP = @STRIP@
STRNCASECMP_C = @STRNCASECMP_C@
STRNCASECMP_O = @STRNCASECMP_O@
STRPTIME_C = @STRPTIME_C@
STRPTIME_O = @STRPTIME_O@
VERSION = @VERSION@
YACC = @YACC@
ac_cv_ethereal_have_rpm = @ac_cv_ethereal_have_rpm@
dftest_bin = @dftest_bin@
editcap_bin = @editcap_bin@
editcap_man = @editcap_man@
ethereal_SUBDIRS = @ethereal_SUBDIRS@
ethereal_bin = @ethereal_bin@
ethereal_man = @ethereal_man@
idl2eth_bin = @idl2eth_bin@
idl2eth_man = @idl2eth_man@
mergecap_bin = @mergecap_bin@
mergecap_man = @mergecap_man@
randpkt_bin = @randpkt_bin@
tethereal_bin = @tethereal_bin@
tethereal_man = @tethereal_man@
text2pcap_bin = @text2pcap_bin@
text2pcap_man = @text2pcap_man@
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
sysconf_DATA = manuf dictionary.dtd dictionary.xml mobileipv4.xml \
DISSECTOR_SRC = \
plugin_src = 
plugin_static_ldadd = 
plugin_libs = 
plugin_ldadd = 
noinst_HEADERS = \
ETHEREAL_COMMON_SRC = \
BUILT_SOURCES = \
ethereal_SOURCES = \
ethereal_static_SOURCES = \
EXTRA_ethereal_SOURCES = \
# Optional objects that I know how to build. These will be
# linked into the ethereal executable.
# They will also be linked into the tethereal executable; if this
# list ever grows to include something that can't be linked with
# tethereal, or if tethereal needs something that ethereal doesn't,
# we should probably split this into stuff needed both
# by ethereal and tethereal and stuff needed only by one or the
# other.
ethereal_optional_objects = @SNPRINTF_O@ @STRERROR_O@ \
# Additional libs that I know how to build. These will be
# linked into the ethereal executable.
ethereal_additional_libs = \
# This is the automake dependency variable for the executable
ethereal_DEPENDENCIES = \
ethereal_static_DEPENDENCIES = \
# This automake variable adds to the link-line for the executable.
#
# Note that Ethereal doesn't have to be linked with @GLIB_LIBS@, as
# they are included in @GTK_LIBS@, and doesn't have to be linked with
# @SOCKET_LIBS@ or @NSL_LIBS@, as those should also be included in
# @GTK_LIBS@ (as those are also needed for X applications, and GTK+
# applications are X applications).
ethereal_LDADD = \
ethereal_static_LDADD = \
ethereal_LDFLAGS = -export-dynamic
ethereal_static_LDFLAGS = -Wl,-static
tethereal_SOURCES = \
tethereal_static_SOURCES = \
# Additional libs that I know how to build. These will be
# linked into the tethereal executable.
tethereal_additional_libs = \
# This is the automake dependency variable for the executable
tethereal_DEPENDENCIES = \
tethereal_static_DEPENDENCIES = \
# This automake variable adds to the link-line for the executable
tethereal_LDADD = wiretap/libwiretap.a	\
tethereal_static_LDADD = \
tethereal_LDFLAGS = -export-dynamic
tethereal_static_LDFLAGS = -Wl,-static
# Optional objects that I know how to build, and that are needed by
# text2pcap.
text2pcap_optional_objects = @STRERROR_O@ @STRPTIME_O@
text2pcap_SOURCES = text2pcap.c text2pcap-scanner.l
text2pcap_DEPENDENCIES = text2pcap.h
# This automake variable adds to the link-line for the executable
text2pcap_LDADD = $(text2pcap_optional_objects)
mergecap_SOURCES = mergecap.c
mergecap_DEPENDENCIES = wiretap/libwiretap.a
editcap_SOURCES = editcap.c
# This is the automake dependency variable for the executable
editcap_DEPENDENCIES = wiretap/libwiretap.a
# This automake variable adds to the link-line for the executable
editcap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@
mergecap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@
#
# Build shell scripts by doing variable substitution.
# Taken from autoconf 2.13.
#
editsh = sed -e 's,@''SHELL''@,$(SHELL),g'
SUFFIXES = .sh
dftest_SOURCES = \
dftest_additional_libs = \
dftest_DEPENDENCIES = \
# This automake variable adds to the link-line for the executable
dftest_LDADD = \
dftest_LDFLAGS = -export-dynamic
CLEANFILES = \
DISTCLEANFILES = \
EXTRA_DIST = \
SUBDIRS = tools wiretap doc epan packaging @ethereal_SUBDIRS@
# We load top_stagedir with an explicit path so that libtool doesn't freak.
top_stagedir = `cd $(top_srcdir) && pwd`/packaging/svr4.stage
stagedir = $(top_stagedir)/$(PACKAGE).stage
host_cpu = @host_cpu@
host_os = @host_os@
rpm_topdir = `cd $(top_srcdir) && pwd`/packaging/rpm
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = 
bin_PROGRAMS =  @ethereal_bin@ @editcap_bin@ @mergecap_bin@ \
@tethereal_bin@ @dftest_bin@ @randpkt_bin@ @text2pcap_bin@
PROGRAMS =  $(bin_PROGRAMS)


DEFS = @DEFS@ -I. -I$(srcdir) -I.
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
ethereal_OBJECTS = 
ethereal_static_OBJECTS = 
tethereal_OBJECTS = 
tethereal_static_OBJECTS = 
editcap_OBJECTS =  editcap.$(OBJEXT)
editcap_LDFLAGS = 
mergecap_OBJECTS =  mergecap.$(OBJEXT)
mergecap_LDFLAGS = 
dftest_OBJECTS = 
text2pcap_OBJECTS =  text2pcap.$(OBJEXT) text2pcap-scanner.$(OBJEXT)
text2pcap_LDFLAGS = 
SCRIPTS =  $(bin_SCRIPTS)

LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LEXLIB = @LEXLIB@
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
man1dir = $(mandir)/man1
MANS = $(man1_MANS) $(man_MANS)

NROFF = nroff
DATA =  $(sysconf_DATA)

HEADERS =  $(noinst_HEADERS)

DIST_COMMON =  README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \
Makefile.am Makefile.in NEWS TODO acconfig.h acinclude.m4 aclocal.m4 \
config.guess config.h.in config.sub configure configure.in install-sh \
ltmain.sh missing mkinstalldirs text2pcap-scanner.c


DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)

TAR = tar
GZIP_ENV = --best
DEP_FILES =  .deps/editcap.P .deps/mergecap.P .deps/text2pcap-scanner.P \
.deps/text2pcap.P
SOURCES = $(ethereal_SOURCES) $(EXTRA_ethereal_SOURCES) $(ethereal_static_SOURCES) $(tethereal_SOURCES) $(tethereal_static_SOURCES) $(editcap_SOURCES) $(mergecap_SOURCES) $(dftest_SOURCES) $(text2pcap_SOURCES)
OBJECTS = $(ethereal_OBJECTS) $(ethereal_static_OBJECTS) $(tethereal_OBJECTS) $(tethereal_static_OBJECTS) $(editcap_OBJECTS) $(mergecap_OBJECTS) $(dftest_OBJECTS) $(text2pcap_OBJECTS)

all: all-redirect
.SUFFIXES:
.SUFFIXES: .S .c .l .lo .o .obj .s .sh
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
	cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile

Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status $(BUILT_SOURCES)
	cd $(top_builddir) \
	  && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status

$(ACLOCAL_M4):  configure.in  acinclude.m4
	cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)

config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	$(SHELL) ./config.status --recheck
$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
	cd $(srcdir) && $(AUTOCONF)

config.h: stamp-h
	@if test ! -f $@; then \
		rm -f stamp-h; \
		$(MAKE) stamp-h; \
	else :; fi
stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
	cd $(top_builddir) \
	  && CONFIG_FILES= CONFIG_HEADERS=config.h \
	     $(SHELL) ./config.status
	@echo timestamp > stamp-h 2> /dev/null
$(srcdir)/config.h.in: $(srcdir)/stamp-h.in
	@if test ! -f $@; then \
		rm -f $(srcdir)/stamp-h.in; \
		$(MAKE) $(srcdir)/stamp-h.in; \
	else :; fi
$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
	cd $(top_srcdir) && $(AUTOHEADER)
	@echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null

mostlyclean-hdr:

clean-hdr:

distclean-hdr:
	-rm -f config.h

maintainer-clean-hdr:

mostlyclean-binPROGRAMS:

clean-binPROGRAMS:
	-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)

distclean-binPROGRAMS:

maintainer-clean-binPROGRAMS:

install-binPROGRAMS: $(bin_PROGRAMS)
	@$(NORMAL_INSTALL)
	$(mkinstalldirs) $(DESTDIR)$(bindir)
	@list='$(bin_PROGRAMS)'; for p in $$list; do \
	  if test -f $$p; then \
	    echo " $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
	    $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
	  else :; fi; \
	done

uninstall-binPROGRAMS:
	@$(NORMAL_UNINSTALL)
	list='$(bin_PROGRAMS)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
	done

# FIXME: We should only use cygpath when building on Windows,
# and only if it is available.
.c.obj:
	$(COMPILE) -c `cygpath -w $<`

.s.o:
	$(COMPILE) -c $<

.S.o:
	$(COMPILE) -c $<

mostlyclean-compile:
	-rm -f *.o core *.core
	-rm -f *.$(OBJEXT)

clean-compile:

distclean-compile:
	-rm -f *.tab.c

maintainer-clean-compile:

.s.lo:
	$(LIBTOOL) --mode=compile $(COMPILE) -c $<

.S.lo:
	$(LIBTOOL) --mode=compile $(COMPILE) -c $<

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs

distclean-libtool:

maintainer-clean-libtool:

ethereal$(EXEEXT): $(ethereal_OBJECTS) $(ethereal_DEPENDENCIES)
	@rm -f ethereal$(EXEEXT)
	$(LINK) $(ethereal_LDFLAGS) $(ethereal_OBJECTS) $(ethereal_LDADD) $(LIBS)

ethereal_static$(EXEEXT): $(ethereal_static_OBJECTS) $(ethereal_static_DEPENDENCIES)
	@rm -f ethereal_static$(EXEEXT)
	$(LINK) $(ethereal_static_LDFLAGS) $(ethereal_static_OBJECTS) $(ethereal_static_LDADD) $(LIBS)

tethereal$(EXEEXT): $(tethereal_OBJECTS) $(tethereal_DEPENDENCIES)
	@rm -f tethereal$(EXEEXT)
	$(LINK) $(tethereal_LDFLAGS) $(tethereal_OBJECTS) $(tethereal_LDADD) $(LIBS)

tethereal_static$(EXEEXT): $(tethereal_static_OBJECTS) $(tethereal_static_DEPENDENCIES)
	@rm -f tethereal_static$(EXEEXT)
	$(LINK) $(tethereal_static_LDFLAGS) $(tethereal_static_OBJECTS) $(tethereal_static_LDADD) $(LIBS)

editcap$(EXEEXT): $(editcap_OBJECTS) $(editcap_DEPENDENCIES)
	@rm -f editcap$(EXEEXT)
	$(LINK) $(editcap_LDFLAGS) $(editcap_OBJECTS) $(editcap_LDADD) $(LIBS)

mergecap$(EXEEXT): $(mergecap_OBJECTS) $(mergecap_DEPENDENCIES)
	@rm -f mergecap$(EXEEXT)
	$(LINK) $(mergecap_LDFLAGS) $(mergecap_OBJECTS) $(mergecap_LDADD) $(LIBS)

dftest$(EXEEXT): $(dftest_OBJECTS) $(dftest_DEPENDENCIES)
	@rm -f dftest$(EXEEXT)
	$(LINK) $(dftest_LDFLAGS) $(dftest_OBJECTS) $(dftest_LDADD) $(LIBS)

text2pcap$(EXEEXT): $(text2pcap_OBJECTS) $(text2pcap_DEPENDENCIES)
	@rm -f text2pcap$(EXEEXT)
	$(LINK) $(text2pcap_LDFLAGS) $(text2pcap_OBJECTS) $(text2pcap_LDADD) $(LIBS)

install-binSCRIPTS: $(bin_SCRIPTS)
	@$(NORMAL_INSTALL)
	$(mkinstalldirs) $(DESTDIR)$(bindir)
	@list='$(bin_SCRIPTS)'; for p in $$list; do \
	  if test -f $$p; then \
	    echo " $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
	    $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
	  else if test -f $(srcdir)/$$p; then \
	    echo " $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
	    $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
	  else :; fi; fi; \
	done

uninstall-binSCRIPTS:
	@$(NORMAL_UNINSTALL)
	list='$(bin_SCRIPTS)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
	done
.l.c:
	$(LEX) $(AM_LFLAGS) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).c $@

install-man1:
	$(mkinstalldirs) $(DESTDIR)$(man1dir)
	@list='$(man1_MANS)'; \
	l2='$(man_MANS)'; for i in $$l2; do \
	  case "$$i" in \
	    *.1*) list="$$list $$i" ;; \
	  esac; \
	done; \
	for i in $$list; do \
	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
	  else file=$$i; fi; \
	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
	  inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
	  inst=`echo $$inst | sed '$(transform)'`.$$ext; \
	  echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \
	  $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \
	done

uninstall-man1:
	@list='$(man1_MANS)'; \
	l2='$(man_MANS)'; for i in $$l2; do \
	  case "$$i" in \
	    *.1*) list="$$list $$i" ;; \
	  esac; \
	done; \
	for i in $$list; do \
	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
	  inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
	  inst=`echo $$inst | sed '$(transform)'`.$$ext; \
	  echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \
	  rm -f $(DESTDIR)$(man1dir)/$$inst; \
	done
install-man: $(MANS)
	@$(NORMAL_INSTALL)
	$(MAKE) $(AM_MAKEFLAGS) install-man1
uninstall-man:
	@$(NORMAL_UNINSTALL)
	$(MAKE) $(AM_MAKEFLAGS) uninstall-man1

install-sysconfDATA: $(sysconf_DATA)
	@$(NORMAL_INSTALL)
	$(mkinstalldirs) $(DESTDIR)$(sysconfdir)
	@list='$(sysconf_DATA)'; for p in $$list; do \
	  if test -f $(srcdir)/$$p; then \
	    echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(sysconfdir)/$$p"; \
	    $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(sysconfdir)/$$p; \
	  else if test -f $$p; then \
	    echo " $(INSTALL_DATA) $$p $(DESTDIR)$(sysconfdir)/$$p"; \
	    $(INSTALL_DATA) $$p $(DESTDIR)$(sysconfdir)/$$p; \
	  fi; fi; \
	done

uninstall-sysconfDATA:
	@$(NORMAL_UNINSTALL)
	list='$(sysconf_DATA)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(sysconfdir)/$$p; \
	done

# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
#     (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.

@SET_MAKE@

all-recursive install-data-recursive install-exec-recursive \
installdirs-recursive install-recursive uninstall-recursive  \
check-recursive installcheck-recursive info-recursive dvi-recursive:
	@set fnord $(MAKEFLAGS); amf=$$2; \
	dot_seen=no; \
	target=`echo $@ | sed s/-recursive//`; \
	list='$(SUBDIRS)'; for subdir in $$list; do \
	  echo "Making $$target in $$subdir"; \
	  if test "$$subdir" = "."; then \
	    dot_seen=yes; \
	    local_target="$$target-am"; \
	  else \
	    local_target="$$target"; \
	  fi; \
	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
	done; \
	if test "$$dot_seen" = "no"; then \
	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
	fi; test -z "$$fail"

mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
	@set fnord $(MAKEFLAGS); amf=$$2; \
	dot_seen=no; \
	rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
	  rev="$$subdir $$rev"; \
	  test "$$subdir" != "." || dot_seen=yes; \
	done; \
	test "$$dot_seen" = "no" && rev=". $$rev"; \
	target=`echo $@ | sed s/-recursive//`; \
	for subdir in $$rev; do \
	  echo "Making $$target in $$subdir"; \
	  if test "$$subdir" = "."; then \
	    local_target="$$target-am"; \
	  else \
	    local_target="$$target"; \
	  fi; \
	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
	done && test -z "$$fail"
tags-recursive:
	list='$(SUBDIRS)'; for subdir in $$list; do \
	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
	done

tags: TAGS

ID: $(HEADERS) $(SOURCES) $(LISP)
	list='$(SOURCES) $(HEADERS)'; \
	unique=`for i in $$list; do echo $$i; done | \
	  awk '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	here=`pwd` && cd $(srcdir) \
	  && mkid -f$$here/ID $$unique $(LISP)

TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP)
	tags=; \
	here=`pwd`; \
	list='$(SUBDIRS)'; for subdir in $$list; do \
   if test "$$subdir" = .; then :; else \
	    test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
   fi; \
	done; \
	list='$(SOURCES) $(HEADERS)'; \
	unique=`for i in $$list; do echo $$i; done | \
	  awk '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
	  || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)

mostlyclean-tags:

clean-tags:

distclean-tags:
	-rm -f TAGS ID

maintainer-clean-tags:

distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)

# This target untars the dist file and tries a VPATH configuration.  Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
	-rm -rf $(distdir)
	GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
	mkdir $(distdir)/=build
	mkdir $(distdir)/=inst
	dc_install_base=`cd $(distdir)/=inst && pwd`; \
	cd $(distdir)/=build \
	  && ../configure --srcdir=.. --prefix=$$dc_install_base \
	  && $(MAKE) $(AM_MAKEFLAGS) \
	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
	  && $(MAKE) $(AM_MAKEFLAGS) check \
	  && $(MAKE) $(AM_MAKEFLAGS) install \
	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
	  && $(MAKE) $(AM_MAKEFLAGS) dist
	-rm -rf $(distdir)
	@banner="$(distdir).tar.gz is ready for distribution"; \
	dashes=`echo "$$banner" | sed s/./=/g`; \
	echo "$$dashes"; \
	echo "$$banner"; \
	echo "$$dashes"
dist: distdir
	-chmod -R a+r $(distdir)
	GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
	-rm -rf $(distdir)
dist-all: distdir
	-chmod -R a+r $(distdir)
	GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
	-rm -rf $(distdir)
distdir: $(DISTFILES)
	-rm -rf $(distdir)
	mkdir $(distdir)
	-chmod 777 $(distdir)
	here=`cd $(top_builddir) && pwd`; \
	top_distdir=`cd $(distdir) && pwd`; \
	distdir=`cd $(distdir) && pwd`; \
	cd $(top_srcdir) \
	  && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile
	@for file in $(DISTFILES); do \
	  d=$(srcdir); \
	  if test -d $$d/$$file; then \
	    cp -pr $$d/$$file $(distdir)/$$file; \
	  else \
	    test -f $(distdir)/$$file \
	    || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
	    || cp -p $$d/$$file $(distdir)/$$file || :; \
	  fi; \
	done
	for subdir in $(SUBDIRS); do \
	  if test "$$subdir" = .; then :; else \
	    test -d $(distdir)/$$subdir \
	    || mkdir $(distdir)/$$subdir \
	    || exit 1; \
	    chmod 777 $(distdir)/$$subdir; \
	    (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
	      || exit 1; \
	  fi; \
	done

DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)

-include $(DEP_FILES)

mostlyclean-depend:

clean-depend:

distclean-depend:
	-rm -rf .deps

maintainer-clean-depend:

%.o: %.c
	@echo '$(COMPILE) -c $<'; \
	$(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
	@-cp .deps/$(*F).pp .deps/$(*F).P; \
	tr ' ' '\012' < .deps/$(*F).pp \
	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
	    >> .deps/$(*F).P; \
	rm .deps/$(*F).pp

%.lo: %.c
	@echo '$(LTCOMPILE) -c $<'; \
	$(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
	@-sed -e 's/^\([^:]*\)\.o[ 	]*:/\1.lo \1.o :/' \
	  < .deps/$(*F).pp > .deps/$(*F).P; \
	tr ' ' '\012' < .deps/$(*F).pp \
	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
	    >> .deps/$(*F).P; \
	rm -f .deps/$(*F).pp
info-am:
info: info-recursive
dvi-am:
dvi: dvi-recursive
check-am: all-am
check: check-recursive
installcheck-am:
installcheck: installcheck-recursive
all-recursive-am: config.h
	$(MAKE) $(AM_MAKEFLAGS) all-recursive

install-exec-am: install-binPROGRAMS install-binSCRIPTS \
		install-sysconfDATA
	@$(NORMAL_INSTALL)
	$(MAKE) $(AM_MAKEFLAGS) install-exec-hook
install-exec: install-exec-recursive

install-data-am: install-man
install-data: install-data-recursive

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-recursive
uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS uninstall-man \
		uninstall-sysconfDATA
uninstall: uninstall-recursive
all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) $(HEADERS) \
		config.h
all-redirect: all-recursive-am
install-strip:
	$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs: installdirs-recursive
installdirs-am:
	$(mkinstalldirs)  $(DESTDIR)$(bindir) $(DESTDIR)$(bindir) \
		$(DESTDIR)$(mandir)/man1 $(DESTDIR)$(sysconfdir)


mostlyclean-generic:

clean-generic:
	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)

distclean-generic:
	-rm -f Makefile $(CONFIG_CLEAN_FILES)
	-rm -f config.cache config.log stamp-h stamp-h[0-9]*
	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)

maintainer-clean-generic:
	-test -z "text2pcap-scannerl$(BUILT_SOURCES)" || rm -f text2pcap-scannerl $(BUILT_SOURCES)
mostlyclean-am:  mostlyclean-hdr mostlyclean-binPROGRAMS \
		mostlyclean-compile mostlyclean-libtool \
		mostlyclean-tags mostlyclean-depend mostlyclean-generic

mostlyclean: mostlyclean-recursive

clean-am:  clean-hdr clean-binPROGRAMS clean-compile clean-libtool \
		clean-tags clean-depend clean-generic mostlyclean-am \
		clean-local

clean: clean-recursive

distclean-am:  distclean-hdr distclean-binPROGRAMS distclean-compile \
		distclean-libtool distclean-tags distclean-depend \
		distclean-generic clean-am
	-rm -f libtool

distclean: distclean-recursive
	-rm -f config.status

maintainer-clean-am:  maintainer-clean-hdr maintainer-clean-binPROGRAMS \
		maintainer-clean-compile maintainer-clean-libtool \
		maintainer-clean-tags maintainer-clean-depend \
		maintainer-clean-generic distclean-am
	@echo "This command is intended for maintainers to use;"
	@echo "it deletes files that may require special tools to rebuild."

maintainer-clean: maintainer-clean-recursive
	-rm -f config.status

.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \
maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \
mostlyclean-compile distclean-compile clean-compile \
maintainer-clean-compile mostlyclean-libtool distclean-libtool \
clean-libtool maintainer-clean-libtool uninstall-binSCRIPTS \
install-binSCRIPTS install-man1 uninstall-man1 install-man \
uninstall-man uninstall-sysconfDATA install-sysconfDATA \
install-data-recursive uninstall-data-recursive install-exec-recursive \
uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
all-recursive check-recursive installcheck-recursive info-recursive \
dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
distclean-tags clean-tags maintainer-clean-tags distdir \
mostlyclean-depend distclean-depend clean-depend \
maintainer-clean-depend info-am info dvi-am dvi check check-am \
installcheck-am installcheck all-recursive-am install-exec-am \
install-exec install-data-am install-data install-am install \
uninstall-am uninstall all-redirect all-am all installdirs-am \
installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean






	nasreq.xml sunping.xml

	packet-aarp.c  \
	packet-afp.c   \
	packet-afs.c   \
	packet-aim.c   \
	packet-aodv.c  \
	packet-arp.c   \
	packet-asap.c  \
	packet-ascend.c\
	packet-atalk.c \
	packet-atm.c   \
	packet-auto_rp.c   \
	packet-bacapp.c   \
	packet-bacnet.c   \
	packet-beep.c \
	packet-bgp.c   \
	packet-bootp.c \
	packet-bootparams.c \
	packet-bpdu.c  \
	packet-bvlc.c \
	packet-cdp.c   \
	packet-cgmp.c  \
	packet-chdlc.c  \
	packet-clip.c  \
	packet-clnp.c  \
	packet-cops.c  \
	packet-cups.c  \
	packet-data.c  \
	packet-dccp.c \
	packet-dcerpc.c  \
	packet-dcerpc-conv.c  \
	packet-dcerpc-dfs.c \
	packet-dcerpc-epm.c  \
	packet-dcerpc-lsa.c \
	packet-dcerpc-mgmt.c  \
	packet-dcerpc-ndr.c  \
	packet-dcerpc-netlogon.c \
	packet-dcerpc-nt.c \
	packet-dcerpc-oxid.c  \
	packet-dcerpc-reg.c \
	packet-dcerpc-remact.c  \
	packet-dcerpc-samr.c \
	packet-dcerpc-spoolss.c \
	packet-dcerpc-srvsvc.c \
	packet-dcerpc-wkssvc.c \
	packet-ddtp.c  \
	packet-dec-bpdu.c \
	packet-dhcpv6.c \
	packet-diameter.c \
	packet-dlsw.c  \
	packet-dns.c   \
	packet-dsi.c   \
	packet-dvmrp.c \
	packet-eap.c \
	packet-eapol.c \
	packet-eigrp.c \
	packet-esis.c  \
	packet-eth.c   \
	packet-ethertype.c   \
	packet-fddi.c  \
	packet-fr.c    \
	packet-frame.c  \
	packet-ftp.c   \
	packet-giop.c  \
	packet-gmrp.c \
	packet-gnutella.c \
	packet-gre.c   \
	packet-gtp.c   \
	packet-gvrp.c  \
	packet-h1.c    \
	packet-h261.c  \
	packet-hclnfsd.c  \
	packet-hsrp.c  \
	packet-http.c  \
	packet-iapp.c  \
	packet-icap.c  \
	packet-icmpv6.c\
	packet-icp.c   \
	packet-icq.c   \
	packet-ieee80211.c \
	packet-ieee8023.c \
	packet-igmp.c  \
	packet-igrp.c  \
	packet-imap.c   \
	packet-ip.c    \
	packet-ipp.c   \
	packet-ipsec.c \
	packet-ipv6.c  \
	packet-ipx.c   \
	packet-irc.c   \
	packet-isakmp.c\
	packet-iscsi.c \
	packet-isis.c  \
	packet-isis-clv.c \
	packet-isis-hello.c \
	packet-isis-lsp.c \
	packet-isis-snp.c \
	packet-isl.c   \
	packet-isup.c  \
	packet-iua.c   \
	packet-kerberos.c \
	packet-klm.c   \
	packet-l2tp.c  \
	packet-lapb.c  \
	packet-lapbether.c \
	packet-lapd.c  \
	packet-ldap.c  \
	packet-ldp.c   \
	packet-llc.c   \
	packet-lmi.c   \
	packet-lmp.c   \
	packet-lpd.c   \
	packet-m2pa.c  \
	packet-m2tp.c  \
	packet-m2ua.c  \
	packet-m3ua.c  \
	packet-mapi.c  \
	packet-mbtcp.c \
	packet-mip.c  \
	packet-mmse.c  \
	packet-mount.c \
	packet-mpeg1.c  \
	packet-mpls.c \
	packet-mrdisc.c \
	packet-msdp.c  \
	packet-msnip.c \
	packet-msproxy.c \
	packet-mtp2.c \
	packet-mtp3.c \
	packet-nbipx.c \
	packet-nbns.c  \
	packet-ncp.c   \
	packet-ncp2222.c   \
	packet-ndmp.c  \
	packet-netbios.c \
	packet-nfs.c   \
	packet-nisplus.c \
	packet-nlm.c   \
	packet-nntp.c  \
	packet-ntp.c  \
	packet-null.c  \
	packet-osi.c   \
	packet-osi-options.c \
	packet-ospf.c  \
	packet-pcnfsd.c \
	packet-pflog.c \
	packet-pgm.c   \
	packet-pim.c   \
	packet-pop.c   \
	packet-portmap.c   \
	packet-ppp.c   \
	packet-pppoe.c \
	packet-pptp.c  \
	packet-prism.c \
	packet-q2931.c \
	packet-q931.c  \
	packet-qllc.c  \
	packet-quake.c \
	packet-quakeworld.c \
	packet-quake2.c \
	packet-quake3.c \
	packet-radius.c\
	packet-ranap.c \
	packet-raw.c   \
	packet-rip.c   \
	packet-ripng.c \
	packet-rlogin.c \
	packet-rpc.c   \
	packet-rquota.c \
	packet-rsh.c   \
	packet-rsvp.c  \
	packet-rtcp.c  \
	packet-rtp.c   \
	packet-rtsp.c  \
	packet-rwall.c \
	packet-rx.c  \
	packet-sap.c   \
	packet-sccp.c  \
	packet-scsi.c  \
	packet-sctp.c  \
	packet-sdp.c   \
	packet-sip.c   \
	packet-skinny.c   \
	packet-slimp3.c   \
	packet-sll.c   \
	packet-smb.c   \
	packet-smb-browse.c \
	packet-smb-common.c \
	packet-smb-logon.c \
	packet-smb-mailslot.c \
	packet-smb-pipe.c \
	packet-smpp.c \
	packet-smtp.c \
	packet-sna.c   \
	packet-snaeth.c \
	packet-snmp.c	\
	packet-socks.c \
	packet-spray.c \
	packet-srvloc.c \
	packet-sscop.c \
	packet-ssl.c   \
	packet-stat.c   \
	packet-stat-notify.c \
	packet-sua.c   \
	packet-syslog.c \
	packet-tacacs.c \
	packet-tcp.c   \
	packet-telnet.c\
	packet-tftp.c  \
	packet-time.c  \
	packet-tns.c \
	packet-tpkt.c  \
	packet-tr.c    \
	packet-trmac.c \
	packet-tsp.c \
	packet-ucp.c   \
	packet-udp.c   \
	packet-v120.c \
	packet-vines.c \
	packet-vj.c   \
	packet-vlan.c \
	packet-vrrp.c \
	packet-vtp.c  \
	packet-wccp.c \
	packet-wcp.c \
	packet-who.c  \
	packet-wap.c \
	packet-wtls.c \
	packet-wsp.c \
	packet-wtp.c \
	packet-x11.c   \
	packet-x25.c   \
	packet-xdmcp.c \
	packet-xot.c   \
	packet-yhoo.c  \
	packet-ypbind.c \
	packet-yppasswd.c \
	packet-ypserv.c \
	packet-ypxfr.c \
	packet-zebra.c

if HAVE_PLUGINS
	plugins/gryphon/packet-gryphon.c \
	plugins/mgcp/packet-mgcp.c \
	plugins/giop/packet-cosnaming.c \
	plugins/giop/packet-coseventcomm.c

	plugins/gryphon/packet-gryphon-static.o		\
	plugins/mgcp/packet-mgcp-static.o		\
	plugins/giop/packet-cosnaming-static.o		\
	plugins/giop/packet-coseventcomm-static.o

	plugins/gryphon/gryphon.la \
	plugins/mgcp/mgcp.la \
	plugins/giop/cosnaming.la \
	plugins/giop/coseventcomm.la

	"-dlopen" self	\
	"-dlopen" plugins/gryphon/gryphon.la \
	"-dlopen" plugins/mgcp/mgcp.la \
	"-dlopen" plugins/giop/cosnaming.la \
	"-dlopen" plugins/giop/coseventcomm.la
else



endif

	packet-afp.h   \
	packet-afs.h   \
	packet-afs-macros.h \
	packet-afs-register-info.h \
	packet-afs-defs.h \
	packet-arp.h   \
	packet-atalk.h \
	packet-bgp.h   \
	packet-bootparams.h \
	packet-chdlc.h \
	packet-clip.h  \
	packet-dccp.h \
	packet-dcerpc.h \
	packet-dcerpc-dfs.h \
	packet-dcerpc-lsa.h \
	packet-dcerpc-netlogon.h \
	packet-dcerpc-nt.h \
	packet-dcerpc-reg.h \
	packet-dcerpc-samr.h \
	packet-dcerpc-spoolss.h \
	packet-dcerpc-srvsvc.h \
	packet-dcerpc-wkssvc.h \
	packet-ddtp.h  \
	packet-diameter-defs.h \
	packet-dns.h   \
	packet-dvmrp.h \
	packet-esis.h  \
	packet-eth.h   \
	packet-fddi.h  \
	packet-frame.h  \
	packet-giop.h  \
	packet-gnutella.h \
	packet-hclnfsd.h  \
	packet-http.h  \
	packet-ieee80211.h \
	packet-ieee8023.h \
	packet-igmp.h  \
	packet-ip.h    \
	packet-ipsec.h \
	packet-ipv6.h  \
	packet-ipx.h   \
	packet-isis.h  \
	packet-isis-clv.h \
	packet-isis-hello.h \
	packet-isis-lsp.h \
	packet-isis-snp.h \
	packet-isl.h   \
	packet-klm.h   \
	packet-ldap.h  \
	packet-llc.h   \
	packet-mount.h \
	packet-mrdisc.h \
	packet-msnip.h \
	packet-mtp3.h  \
	packet-ncp-int.h \
	packet-netbios.h \
	packet-nfs.h   \
	packet-nisplus.h \
	packet-nlm.h   \
	packet-ntp.h  \
	packet-null.h  \
	packet-osi.h   \
	packet-osi-options.h \
	packet-pcnfsd.h \
	packet-pflog.h \
	packet-pim.h   \
	packet-portmap.h   \
	packet-ppp.h   \
	packet-prism.h \
	packet-q931.h  \
	packet-raw.h   \
	packet-ripng.h \
	packet-rpc.h   \
	packet-rquota.h \
	packet-rsvp.h  \
	packet-rtcp.h  \
	packet-rtp.h   \
	packet-rwall.h  \
	packet-rx.h  \
	packet-scsi.h  \
	packet-sll.h   \
	packet-smb-browse.h \
	packet-smb-common.h \
	packet-smb-logon.h \
	packet-smb-mailslot.h \
	packet-smb-pipe.h \
	packet-sna.h   \
	packet-snmp.h	\
	packet-spray.h \
	packet-stat.h   \
	packet-stat-notify.h \
	packet-tcp.h   \
	packet-tns.h \
	packet-tpkt.h  \
	packet-tr.h    \
	packet-udp.h   \
	packet-vines.h \
	packet-vlan.h \
	packet-wccp.h \
	packet-wap.h \
	packet-wtls.h \
	packet-wtp.h \
	packet-wsp.h \
	packet-x11-keysym.h	\
	packet-yhoo.h  \
	packet-ypbind.h \
	packet-yppasswd.h \
	packet-ypserv.h \
	packet-ypxfr.h 

	aftypes.h      \
	alignment.h    \
	afn.c          \
	afn.h          \
	asn1.c         \
	asn1.h         \
	bridged_pids.h \
	column.c       \
	column.h       \
	color.h        \
	conditions.c   \
	conditions.h   \
	capture_stop_conditions.h   \
	capture_stop_conditions.c   \
	etypes.h       \
	follow.c       \
	follow.h       \
	format-oid.h   \
	greproto.h     \
	in_cksum.c     \
	in_cksum.h     \
	ipproto.c      \
	ipproto.h      \
	llcsaps.h      \
	nlpid.h        \
	oui.h          \
	pcap-util.c    \
	pcap-util.h    \
	ppptypes.h     \
	prefs.c        \
	prefs.h        \
	prefs-int.h    \
	print.c        \
	print.h        \
	ps.c           \
	ps.h           \
	ptvcursor.c	\
	ptvcursor.h	\
	reassemble.c   \
	reassemble.h   \
	register.h     \
	ringbuffer.c   \
	ringbuffer.h   \
	rpc_defrag.h   \
	smb.h          \
	util.c         \
	util.h         \
	x11-declarations.h \
	x11-register-info.h \
	x264_prt_id.h  \
	xdlc.c         \
	xdlc.h         \
	xmlstub.c      \
	xmlstub.h

	x11-declarations.h \
	x11-register-info.h

	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	capture.c      \
	capture.h      \
	file.c         \
	file.h         \
	filters.c      \
	filters.h      \
	globals.h      \
	menu.h         \
	progress_dlg.h \
	proto_hier_stats.h	\
	proto_hier_stats.c	\
	simple_dialog.h \
	statusbar.h    \
	summary.c      \
	summary.h      \
	ui_util.h

	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register-static.c     \
	capture.c      \
	capture.h      \
	file.c         \
	file.h         \
	filters.c      \
	filters.h      \
	globals.h      \
	menu.h         \
	progress_dlg.h \
	proto_hier_stats.h	\
	proto_hier_stats.c	\
	simple_dialog.h \
	statusbar.h    \
	summary.c      \
	summary.h      \
	ui_util.h	

	snprintf.c	\
	snprintf.h	\
	snprintf-imp.h	\
	strerror.c	\
	strerror.h	\
	strcasecmp.c	\
	strncasecmp.c	\
	mkstemp.c	\
	mkstemp.h	\
	strptime.c	\
	strptime.h

	@STRCASECMP_O@ @STRNCASECMP_O@ @MKSTEMP_O@ @STRPTIME_O@

	wiretap/libwiretap.a	\
	gtk/libui.a		\
	epan/libethereal.a	\
	epan/ftypes/libftypes.a \
	epan/dfilter/libdfilter.a

	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	$(plugin_libs)

	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)

	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@ 		\
	$(plugin_ldadd)			\
	@PCAP_LIBS@ @GTK_LIBS@

	"-all-static" 			\
	$(plugin_static_ldadd)		\
	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	@PCAP_LIBS@ @GTK_LIBS@		


	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	tethereal.c

	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register-static.c     \
	tethereal.c

	wiretap/libwiretap.a		\
	epan/libethereal.a		\
	epan/ftypes/libftypes.a		\
	epan/dfilter/libdfilter.a

	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	$(plugin_libs)

	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	

	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	$(plugin_ldadd)			\
	@GLIB_LIBS@ -lm \
	@PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@

	"-all-static"		\
	$(plugin_static_ldadd)	\
	wiretap/libwiretap.a	\
	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	@GLIB_LIBS@ -lm \
	@PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@









#
# Build various header files for the X11 dissector.
#
x11-declarations.h x11-register-info.h: x11-fields process-x11-fields.pl
	$(PERL) $(srcdir)/process-x11-fields.pl <$(srcdir)/x11-fields


.sh:
	rm -f $@ [email protected]
	$(editsh) $< > [email protected] && chmod +x [email protected] && mv [email protected] $@

#
# Build "register.c", which contains a function "register_all_protocols()"
# that calls the register routines for all protocols.
#
# We do this by grepping through sources.  If that turns out to be too slow,
# maybe we could just require every .o file to have an register routine
# of a given name (packet-aarp.o -> proto_register_aarp, etc.).
#
# Formatting conventions:  The name of the proto_register_* routines must
# start in column zero, or must be preceded only by "void " starting in
# column zero, and must not be inside #if.
#
# We assume that all dissector routines are in "packet-XXX.c" files.
#
# For some unknown reason, having a big "for" loop in the Makefile
# to scan all the "packet-XXX.c" files doesn't work with some "make"s;
# they seem to pass only the first few names in the list to the shell,
# for some reason.
#
# Therefore, we have a script to generate the "register.c" file.
#
# The first argument is the directory in which the source files live.
# All subsequent arguments are the files to scan.
#
register.c: $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
	@echo Making register.c
	@$(srcdir)/make-reg-dotc register.c $(srcdir) $(DISSECTOR_SRC)

register-static.c: $(plugin_src) $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
	@echo Making register-static.c
	@$(srcdir)/make-reg-dotc register-static.c $(srcdir) $(plugin_src) $(DISSECTOR_SRC)

ps.c: print.ps rdps
	./rdps $(srcdir)/print.ps ps.c

rdps: rdps.c
	$(CC) $(CFLAGS) -o rdps $(srcdir)/rdps.c

randpkt.o: randpkt.c
	$(CC) -DHAVE_CONFIG_H -I. `glib-config --cflags` -c $(srcdir)/randpkt.c

randpkt: randpkt.o wiretap/libwiretap.a
	$(LINK) -o randpkt randpkt.o wiretap/libwiretap.a `glib-config --libs` -lz


	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	dftest.c

	wiretap/libwiretap.a		\
	epan/libethereal.a		\
	epan/ftypes/libftypes.a		\
	epan/dfilter/libdfilter.a

	$(ethereal_optional_objects)	\
	$(dftest_additional_libs)	\
	$(plugin_libs)

	$(ethereal_optional_objects)	\
	$(dftest_additional_libs)	\
	@SNMP_LIBS@ @SSL_LIBS@		\
	$(plugin_ldadd)			\
	@GLIB_LIBS@ -lm \
	@PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@


	idl2eth

	register.c	\
	register-static.c \
	rdps		\
	ps.c		\
	*~

	Ethereal.desktop	\
	aclocal-flags		\
	capture-wpcap.c		\
	capture-wpcap.h		\
	cleanbld.bat		\
	config.h.win32		\
	config.nmake		\
	debian/README.debian	\
	debian/changelog	\
	debian/control		\
	debian/copyright	\
	debian/dirs		\
	debian/docs		\
	debian/menu		\
	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/README.tvbuff	\
	doc/dfilter2pod.pl	\
	doc/editcap.pod		\
	doc/ethereal.pod.template \
	doc/idl2eth.pod		\
	doc/mergecap.pod	\
	doc/randpkt.txt		\
	doc/tethereal.pod.template \
	doc/text2pcap.pod	\
	editcap.c		\
	ethereal_be.py		\
	ethereal_gen.py		\
	mergecap.c		\
	text2pcap.c             \
	text2pcap.h             \
	text2pcap-scanner.l     \
	getopt.c		\
	getopt.h		\
	idl2eth.sh		\
	image/Makefile.nmake	\
	image/README.image	\
	image/clist_ascend.xpm	\
	image/clist_descend.xpm	\
	image/dn_arrow.xpm	\
	image/editcap.rc.in	\
	image/eexcl3d64.xpm	\
	image/eicon3d16.xpm	\
	image/eicon3d32.xpm	\
	image/eicon3d48.xpm	\
	image/eicon3d64.xpm	\
	image/elogo3d48x48.png	\
	image/ethereal.ico	\
	image/ethereal.rc.in	\
	image/ethereal48x48-trans.png  \
	image/ethereal48x48.png \
	image/hi16-app-ethereal.png	\
	image/hi32-app-ethereal.png	\
	image/hi48-app-ethereal.png	\
	image/icon-ethereal.xpm	\
	image/icon-excl.xpm	\
	image/lo16-app-ethereal.png	\
	image/lo32-app-ethereal.png	\
	image/lo48-app-ethereal.png	\
	image/mergecap.rc.in	\
	image/tethereal.rc.in	\
	image/text2pcap.rc.in	\
	image/up_arrow.xpm	\
	INSTALL.configure       \
	Makefile.nmake		\
	make-manuf		\
	make-reg-dotc		\
	make-reg-dotc.py	\
	manuf                   \
	manuf.tmpl		\
	ncp2222.py              \
	packet-ncp2222.inc	\
	print.ps                \
	process-x11-fields.pl	\
	README.aix		\
	README.bsd		\
	README.hpux		\
	README.irix		\
	README.linux		\
	README.tru64		\
	README.vmware		\
	README.win32		\
	randpkt.c		\
	rdps.c			\
	TODO			\
	dictionary.dtd		\
	dictionary.xml		\
	mobileipv4.xml		\
	nasreq.xml		\
	sunping.xml		\
	x11-fields

if SETUID_INSTALL
install-exec-hook:
	-chmod +s $(DESTDIR)$(bindir)/ethereal
	-chmod +s $(DESTDIR)$(bindir)/tethereal
	-chmod +s $(DESTDIR)$(bindir)/ethereal_static
else
install-exec-hook:
endif

#
# Currently register.c can be included in the distribution because
# we always build all protocol dissectors. We used to have to check
# whether or not to build the snmp dissector. If we again need to
# variably build something, making register.c non-portable, uncomment
# the dist-hook line below.
#
# Oh, yuk.  We don't want to include "register.c" in the distribution, as
# its contents depend on the configuration, and therefore we want it
# to be built when the first "make" is done; however, Automake insists
# on putting *all* source into the distribution.
#
# We work around this by having a "dist-hook" rule that deletes
# "register.c", so that "dist" won't pick it up.
#
#dist-hook:
#	@rm -f $(distdir)/register.c

if HAVE_PLUGINS
else
endif

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 -o $@

libtool: $(LIBTOOL_DEPS)
	$(SHELL) ./config.status --recheck


svr4-package: $(bin_SCRIPTS) $(lib_LTLIBRARIES)
	if test x$(HAVE_SVR4_PACKAGING) = xyes ; then \
		rm -rf $(stagedir) ; \
		$(MAKE) DESTDIR=$(stagedir) install-strip; \
		$(srcdir)/packaging/svr4/mkpkg \
			$(PACKAGE) \
			$(PACKAGE)-$(VERSION)-$(host_os)-$(host_cpu)-local \
			$(prefix) \
			$(top_stagedir) ; \
	else \
		echo "Error: SVR4 packaging tools not found." ; \
		echo "Package build abandoned." ; \
	fi

solaris-package: svr4-package

rpm-package: dist
	if test x$(HAVE_RPM) = xyes ; then \
		cd $(rpm_topdir) ; \
		mkdir BUILD RPMS SOURCES ; \
		cd SOURCES ; \
		ln -s ../../../$(distdir).tar.gz ; \
		cd .. ; \
		rpm --define "_topdir `cd . && pwd`" -bb SPECS/ethereal.spec && \
			echo "Package successfully built in `pwd`/RPMS." ; \
	else \
		echo "Error: RPM executable and/or source directory not found." ; \
	fi
srpm-package: dist
	if test x$(HAVE_RPM) = xyes ; then \
		cd $(rpm_topdir) ; \
		mkdir BUILD SRPMS SOURCES ; \
		cd SOURCES ; \
		ln -s ../../../$(distdir).tar.gz ; \
		cd .. ; \
		rpm --define "_topdir `cd . && pwd`" -bs SPECS/ethereal.spec && \
			echo "Package successfully built in `pwd`/SRPMS." ; \
	else \
		echo "Error: RPM executable and/or source directory not found." ; \
	fi

debian-package: debian/rules
	dpkg-buildpackage -rfakeroot -us -uc

clean-local:
	rm -rf $(top_stagedir)

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
# Generated automatically from Makefile.in by configure.
# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am

# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

# Makefile.am
# Automake file for Ethereal
#
# $Id: Makefile.am,v 1.428 2002/05/09 23:50:24 gram Exp $
#
# 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.


SHELL = /bin/sh

srcdir = .
top_srcdir = .
prefix = /usr/local
exec_prefix = ${prefix}

bindir = ${exec_prefix}/bin
sbindir = ${exec_prefix}/sbin
libexecdir = ${exec_prefix}/libexec
datadir = ${prefix}/share
sysconfdir = ${prefix}/etc
sharedstatedir = ${prefix}/com
localstatedir = ${prefix}/var
libdir = ${exec_prefix}/lib
infodir = ${prefix}/info
mandir = ${prefix}/man
includedir = ${prefix}/include
oldincludedir = /usr/include

DESTDIR =

pkgdatadir = $(datadir)/ethereal
pkglibdir = $(libdir)/ethereal
pkgincludedir = $(includedir)/ethereal

top_builddir = .

ACLOCAL = aclocal
AUTOCONF = autoconf
AUTOMAKE = automake
AUTOHEADER = autoheader

INSTALL = /usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL} $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_SCRIPT = ${INSTALL_PROGRAM}
transform = s,x,x,

NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = i686-pc-cygwin
host_triplet = i686-pc-cygwin
AS = @AS@
CC = gcc
CPP = gcc -E
DATAFILE_DIR = /usr/local/etc
DLLTOOL = @DLLTOOL@
ECHO = echo
EXEEXT = .exe
GLIB_CFLAGS = -I/usr/local/include/glib-1.2 -I/usr/local/lib/glib/include
GLIB_CONFIG = /usr/local/bin/glib-config
GLIB_LIBS = -L/usr/local/lib -lgmodule -lglib
GTK_CFLAGS = -I/usr/local/include/gtk-1.2 -I/usr/local/include/glib-1.2 -I/usr/local/lib/glib/include -I/usr/X11R6/include
GTK_CONFIG = /usr/local/bin/gtk-config
GTK_LIBS = -L/usr/local/lib -L/usr/X11R6/lib -lgtk -lgdk -lgmodule -lglib -lintl -lXext -lX11
HAVE_PKGMK = no
HAVE_PKGPROTO = no
HAVE_PKGTRANS = no
HAVE_RPM = 
HAVE_SVR4_PACKAGING = no
LEX = /usr/bin/flex
LIBTOOL = $(SHELL) $(top_builddir)/libtool
LIBTOOL_DEPS = ./ltmain.sh
LN_S = ln -s
MAKEINFO = makeinfo
MKSTEMP_C = 
MKSTEMP_O = 
NSL_LIBS = 
OBJDUMP = @OBJDUMP@
OBJEXT = o
PACKAGE = ethereal
PCAP_LIBS = 
PERL = /usr/bin/perl
PLUGIN_DIR = ${exec_prefix}/lib/ethereal/plugins/0.9.3
POD2MAN = /usr/bin/pod2man
PYTHON = /usr/bin/python
RANLIB = ranlib
SNMP_LIBS = 
SNPRINTF_C = 
SNPRINTF_O = 
SOCKET_LIBS = 
SSL_LIBS = -lcrypto
STRCASECMP_C = 
STRCASECMP_O = 
STRERROR_C = 
STRERROR_O = 
STRIP = strip
STRNCASECMP_C = 
STRNCASECMP_O = 
STRPTIME_C = strptime.c
STRPTIME_O = strptime.o
VERSION = 0.9.3
YACC = bison -y
ac_cv_ethereal_have_rpm = no
dftest_bin = 
editcap_bin = editcap
editcap_man = editcap.1
ethereal_SUBDIRS = gtk
ethereal_bin = ethereal
ethereal_man = ethereal.1
idl2eth_bin = idl2eth
idl2eth_man = idl2eth.1
mergecap_bin = mergecap
mergecap_man = mergecap.1
randpkt_bin = 
tethereal_bin = tethereal
tethereal_man = tethereal.1
text2pcap_bin = text2pcap
text2pcap_man = text2pcap.1
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 editcap mergecap tethereal   text2pcap
bin_SCRIPTS = idl2eth
man1_MANS = ethereal.1 editcap.1 mergecap.1 tethereal.1 text2pcap.1 idl2eth.1
man_MANS = 
EXTRA_PROGRAMS = ethereal ethereal_static tethereal tethereal_static editcap mergecap dftest text2pcap
EXTRA_SCRIPTS = idl2eth
sysconf_DATA = manuf dictionary.dtd dictionary.xml mobileipv4.xml \
DISSECTOR_SRC = \
plugin_src = 
plugin_static_ldadd = 
plugin_libs = 
plugin_ldadd = 
noinst_HEADERS = \
ETHEREAL_COMMON_SRC = \
BUILT_SOURCES = \
ethereal_SOURCES = \
ethereal_static_SOURCES = \
EXTRA_ethereal_SOURCES = \
# Optional objects that I know how to build. These will be
# linked into the ethereal executable.
# They will also be linked into the tethereal executable; if this
# list ever grows to include something that can't be linked with
# tethereal, or if tethereal needs something that ethereal doesn't,
# we should probably split this into stuff needed both
# by ethereal and tethereal and stuff needed only by one or the
# other.
ethereal_optional_objects =   \
# Additional libs that I know how to build. These will be
# linked into the ethereal executable.
ethereal_additional_libs = \
# This is the automake dependency variable for the executable
ethereal_DEPENDENCIES = \
ethereal_static_DEPENDENCIES = \
# This automake variable adds to the link-line for the executable.
#
# Note that Ethereal doesn't have to be linked with -L/usr/local/lib -lgmodule -lglib, as
# they are included in -L/usr/local/lib -L/usr/X11R6/lib -lgtk -lgdk -lgmodule -lglib -lintl -lXext -lX11, and doesn't have to be linked with
#  or , as those should also be included in
# -L/usr/local/lib -L/usr/X11R6/lib -lgtk -lgdk -lgmodule -lglib -lintl -lXext -lX11 (as those are also needed for X applications, and GTK+
# applications are X applications).
ethereal_LDADD = \
ethereal_static_LDADD = \
ethereal_LDFLAGS = -export-dynamic
ethereal_static_LDFLAGS = -Wl,-static
tethereal_SOURCES = \
tethereal_static_SOURCES = \
# Additional libs that I know how to build. These will be
# linked into the tethereal executable.
tethereal_additional_libs = \
# This is the automake dependency variable for the executable
tethereal_DEPENDENCIES = \
tethereal_static_DEPENDENCIES = \
# This automake variable adds to the link-line for the executable
tethereal_LDADD = wiretap/libwiretap.a	\
tethereal_static_LDADD = \
tethereal_LDFLAGS = -export-dynamic
tethereal_static_LDFLAGS = -Wl,-static
# Optional objects that I know how to build, and that are needed by
# text2pcap.
text2pcap_optional_objects =  strptime.o
text2pcap_SOURCES = text2pcap.c text2pcap-scanner.l
text2pcap_DEPENDENCIES = text2pcap.h
# This automake variable adds to the link-line for the executable
text2pcap_LDADD = $(text2pcap_optional_objects)
mergecap_SOURCES = mergecap.c
mergecap_DEPENDENCIES = wiretap/libwiretap.a
editcap_SOURCES = editcap.c
# This is the automake dependency variable for the executable
editcap_DEPENDENCIES = wiretap/libwiretap.a
# This automake variable adds to the link-line for the executable
editcap_LDADD = wiretap/libwiretap.a -L/usr/local/lib -lgmodule -lglib
mergecap_LDADD = wiretap/libwiretap.a -L/usr/local/lib -lgmodule -lglib
#
# Build shell scripts by doing variable substitution.
# Taken from autoconf 2.13.
#
editsh = sed -e 's,@''SHELL''@,$(SHELL),g'
SUFFIXES = .sh
dftest_SOURCES = \
dftest_additional_libs = \
dftest_DEPENDENCIES = \
# This automake variable adds to the link-line for the executable
dftest_LDADD = \
dftest_LDFLAGS = -export-dynamic
CLEANFILES = \
DISTCLEANFILES = \
EXTRA_DIST = \
SUBDIRS = tools wiretap doc epan packaging gtk
# We load top_stagedir with an explicit path so that libtool doesn't freak.
top_stagedir = `cd $(top_srcdir) && pwd`/packaging/svr4.stage
stagedir = $(top_stagedir)/$(PACKAGE).stage
host_cpu = i686
host_os = cygwin
rpm_topdir = `cd $(top_srcdir) && pwd`/packaging/rpm
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = 
bin_PROGRAMS =  ethereal editcap mergecap \
tethereal   text2pcap
PROGRAMS =  $(bin_PROGRAMS)


DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I.
CPPFLAGS =  -I$(top_srcdir) -I$(top_srcdir)/wiretap -I/usr/local/include
LDFLAGS =  -L/usr/local/lib
LIBS = -lz 
ethereal_OBJECTS = 
ethereal_static_OBJECTS = 
tethereal_OBJECTS = 
tethereal_static_OBJECTS = 
editcap_OBJECTS =  editcap.$(OBJEXT)
editcap_LDFLAGS = 
mergecap_OBJECTS =  mergecap.$(OBJEXT)
mergecap_LDFLAGS = 
dftest_OBJECTS = 
text2pcap_OBJECTS =  text2pcap.$(OBJEXT) text2pcap-scanner.$(OBJEXT)
text2pcap_LDFLAGS = 
SCRIPTS =  $(bin_SCRIPTS)

LEX_OUTPUT_ROOT = lex.yy
LEXLIB = -lfl
CFLAGS = -D_U_="__attribute__((unused))" -Wall -W -g -O2 -I$(top_srcdir) -I$(top_srcdir)/wiretap -I/usr/local/include -I/usr/local/include/gtk-1.2 -I/usr/local/include/glib-1.2 -I/usr/local/lib/glib/include -I/usr/X11R6/include
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
man1dir = $(mandir)/man1
MANS = $(man1_MANS) $(man_MANS)

NROFF = nroff
DATA =  $(sysconf_DATA)

HEADERS =  $(noinst_HEADERS)

DIST_COMMON =  README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \
Makefile.am Makefile.in NEWS TODO acconfig.h acinclude.m4 aclocal.m4 \
config.guess config.h.in config.sub configure configure.in install-sh \
ltmain.sh missing mkinstalldirs text2pcap-scanner.c


DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)

TAR = tar
GZIP_ENV = --best
DEP_FILES =  .deps/editcap.P .deps/mergecap.P .deps/text2pcap-scanner.P \
.deps/text2pcap.P
SOURCES = $(ethereal_SOURCES) $(EXTRA_ethereal_SOURCES) $(ethereal_static_SOURCES) $(tethereal_SOURCES) $(tethereal_static_SOURCES) $(editcap_SOURCES) $(mergecap_SOURCES) $(dftest_SOURCES) $(text2pcap_SOURCES)
OBJECTS = $(ethereal_OBJECTS) $(ethereal_static_OBJECTS) $(tethereal_OBJECTS) $(tethereal_static_OBJECTS) $(editcap_OBJECTS) $(mergecap_OBJECTS) $(dftest_OBJECTS) $(text2pcap_OBJECTS)

all: all-redirect
.SUFFIXES:
.SUFFIXES: .S .c .l .lo .o .obj .s .sh
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
	cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile

Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status $(BUILT_SOURCES)
	cd $(top_builddir) \
	  && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status

$(ACLOCAL_M4):  configure.in  acinclude.m4
	cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)

config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	$(SHELL) ./config.status --recheck
$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
	cd $(srcdir) && $(AUTOCONF)

config.h: stamp-h
	@if test ! -f $@; then \
		rm -f stamp-h; \
		$(MAKE) stamp-h; \
	else :; fi
stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
	cd $(top_builddir) \
	  && CONFIG_FILES= CONFIG_HEADERS=config.h \
	     $(SHELL) ./config.status
	@echo timestamp > stamp-h 2> /dev/null
$(srcdir)/config.h.in: $(srcdir)/stamp-h.in
	@if test ! -f $@; then \
		rm -f $(srcdir)/stamp-h.in; \
		$(MAKE) $(srcdir)/stamp-h.in; \
	else :; fi
$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
	cd $(top_srcdir) && $(AUTOHEADER)
	@echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null

mostlyclean-hdr:

clean-hdr:

distclean-hdr:
	-rm -f config.h

maintainer-clean-hdr:

mostlyclean-binPROGRAMS:

clean-binPROGRAMS:
	-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)

distclean-binPROGRAMS:

maintainer-clean-binPROGRAMS:

install-binPROGRAMS: $(bin_PROGRAMS)
	@$(NORMAL_INSTALL)
	$(mkinstalldirs) $(DESTDIR)$(bindir)
	@list='$(bin_PROGRAMS)'; for p in $$list; do \
	  if test -f $$p; then \
	    echo " $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
	    $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
	  else :; fi; \
	done

uninstall-binPROGRAMS:
	@$(NORMAL_UNINSTALL)
	list='$(bin_PROGRAMS)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
	done

# FIXME: We should only use cygpath when building on Windows,
# and only if it is available.
.c.obj:
	$(COMPILE) -c `cygpath -w $<`

.s.o:
	$(COMPILE) -c $<

.S.o:
	$(COMPILE) -c $<

mostlyclean-compile:
	-rm -f *.o core *.core
	-rm -f *.$(OBJEXT)

clean-compile:

distclean-compile:
	-rm -f *.tab.c

maintainer-clean-compile:

.s.lo:
	$(LIBTOOL) --mode=compile $(COMPILE) -c $<

.S.lo:
	$(LIBTOOL) --mode=compile $(COMPILE) -c $<

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs

distclean-libtool:

maintainer-clean-libtool:

ethereal$(EXEEXT): $(ethereal_OBJECTS) $(ethereal_DEPENDENCIES)
	@rm -f ethereal$(EXEEXT)
	$(LINK) $(ethereal_LDFLAGS) $(ethereal_OBJECTS) $(ethereal_LDADD) $(LIBS)

ethereal_static$(EXEEXT): $(ethereal_static_OBJECTS) $(ethereal_static_DEPENDENCIES)
	@rm -f ethereal_static$(EXEEXT)
	$(LINK) $(ethereal_static_LDFLAGS) $(ethereal_static_OBJECTS) $(ethereal_static_LDADD) $(LIBS)

tethereal$(EXEEXT): $(tethereal_OBJECTS) $(tethereal_DEPENDENCIES)
	@rm -f tethereal$(EXEEXT)
	$(LINK) $(tethereal_LDFLAGS) $(tethereal_OBJECTS) $(tethereal_LDADD) $(LIBS)

tethereal_static$(EXEEXT): $(tethereal_static_OBJECTS) $(tethereal_static_DEPENDENCIES)
	@rm -f tethereal_static$(EXEEXT)
	$(LINK) $(tethereal_static_LDFLAGS) $(tethereal_static_OBJECTS) $(tethereal_static_LDADD) $(LIBS)

editcap$(EXEEXT): $(editcap_OBJECTS) $(editcap_DEPENDENCIES)
	@rm -f editcap$(EXEEXT)
	$(LINK) $(editcap_LDFLAGS) $(editcap_OBJECTS) $(editcap_LDADD) $(LIBS)

mergecap$(EXEEXT): $(mergecap_OBJECTS) $(mergecap_DEPENDENCIES)
	@rm -f mergecap$(EXEEXT)
	$(LINK) $(mergecap_LDFLAGS) $(mergecap_OBJECTS) $(mergecap_LDADD) $(LIBS)

dftest$(EXEEXT): $(dftest_OBJECTS) $(dftest_DEPENDENCIES)
	@rm -f dftest$(EXEEXT)
	$(LINK) $(dftest_LDFLAGS) $(dftest_OBJECTS) $(dftest_LDADD) $(LIBS)

text2pcap$(EXEEXT): $(text2pcap_OBJECTS) $(text2pcap_DEPENDENCIES)
	@rm -f text2pcap$(EXEEXT)
	$(LINK) $(text2pcap_LDFLAGS) $(text2pcap_OBJECTS) $(text2pcap_LDADD) $(LIBS)

install-binSCRIPTS: $(bin_SCRIPTS)
	@$(NORMAL_INSTALL)
	$(mkinstalldirs) $(DESTDIR)$(bindir)
	@list='$(bin_SCRIPTS)'; for p in $$list; do \
	  if test -f $$p; then \
	    echo " $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
	    $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
	  else if test -f $(srcdir)/$$p; then \
	    echo " $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
	    $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
	  else :; fi; fi; \
	done

uninstall-binSCRIPTS:
	@$(NORMAL_UNINSTALL)
	list='$(bin_SCRIPTS)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
	done
.l.c:
	$(LEX) $(AM_LFLAGS) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).c $@

install-man1:
	$(mkinstalldirs) $(DESTDIR)$(man1dir)
	@list='$(man1_MANS)'; \
	l2='$(man_MANS)'; for i in $$l2; do \
	  case "$$i" in \
	    *.1*) list="$$list $$i" ;; \
	  esac; \
	done; \
	for i in $$list; do \
	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
	  else file=$$i; fi; \
	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
	  inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
	  inst=`echo $$inst | sed '$(transform)'`.$$ext; \
	  echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \
	  $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \
	done

uninstall-man1:
	@list='$(man1_MANS)'; \
	l2='$(man_MANS)'; for i in $$l2; do \
	  case "$$i" in \
	    *.1*) list="$$list $$i" ;; \
	  esac; \
	done; \
	for i in $$list; do \
	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
	  inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
	  inst=`echo $$inst | sed '$(transform)'`.$$ext; \
	  echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \
	  rm -f $(DESTDIR)$(man1dir)/$$inst; \
	done
install-man: $(MANS)
	@$(NORMAL_INSTALL)
	$(MAKE) $(AM_MAKEFLAGS) install-man1
uninstall-man:
	@$(NORMAL_UNINSTALL)
	$(MAKE) $(AM_MAKEFLAGS) uninstall-man1

install-sysconfDATA: $(sysconf_DATA)
	@$(NORMAL_INSTALL)
	$(mkinstalldirs) $(DESTDIR)$(sysconfdir)
	@list='$(sysconf_DATA)'; for p in $$list; do \
	  if test -f $(srcdir)/$$p; then \
	    echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(sysconfdir)/$$p"; \
	    $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(sysconfdir)/$$p; \
	  else if test -f $$p; then \
	    echo " $(INSTALL_DATA) $$p $(DESTDIR)$(sysconfdir)/$$p"; \
	    $(INSTALL_DATA) $$p $(DESTDIR)$(sysconfdir)/$$p; \
	  fi; fi; \
	done

uninstall-sysconfDATA:
	@$(NORMAL_UNINSTALL)
	list='$(sysconf_DATA)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(sysconfdir)/$$p; \
	done

# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
#     (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.



all-recursive install-data-recursive install-exec-recursive \
installdirs-recursive install-recursive uninstall-recursive  \
check-recursive installcheck-recursive info-recursive dvi-recursive:
	@set fnord $(MAKEFLAGS); amf=$$2; \
	dot_seen=no; \
	target=`echo $@ | sed s/-recursive//`; \
	list='$(SUBDIRS)'; for subdir in $$list; do \
	  echo "Making $$target in $$subdir"; \
	  if test "$$subdir" = "."; then \
	    dot_seen=yes; \
	    local_target="$$target-am"; \
	  else \
	    local_target="$$target"; \
	  fi; \
	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
	done; \
	if test "$$dot_seen" = "no"; then \
	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
	fi; test -z "$$fail"

mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
	@set fnord $(MAKEFLAGS); amf=$$2; \
	dot_seen=no; \
	rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
	  rev="$$subdir $$rev"; \
	  test "$$subdir" != "." || dot_seen=yes; \
	done; \
	test "$$dot_seen" = "no" && rev=". $$rev"; \
	target=`echo $@ | sed s/-recursive//`; \
	for subdir in $$rev; do \
	  echo "Making $$target in $$subdir"; \
	  if test "$$subdir" = "."; then \
	    local_target="$$target-am"; \
	  else \
	    local_target="$$target"; \
	  fi; \
	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
	done && test -z "$$fail"
tags-recursive:
	list='$(SUBDIRS)'; for subdir in $$list; do \
	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
	done

tags: TAGS

ID: $(HEADERS) $(SOURCES) $(LISP)
	list='$(SOURCES) $(HEADERS)'; \
	unique=`for i in $$list; do echo $$i; done | \
	  awk '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	here=`pwd` && cd $(srcdir) \
	  && mkid -f$$here/ID $$unique $(LISP)

TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP)
	tags=; \
	here=`pwd`; \
	list='$(SUBDIRS)'; for subdir in $$list; do \
   if test "$$subdir" = .; then :; else \
	    test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
   fi; \
	done; \
	list='$(SOURCES) $(HEADERS)'; \
	unique=`for i in $$list; do echo $$i; done | \
	  awk '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
	  || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)

mostlyclean-tags:

clean-tags:

distclean-tags:
	-rm -f TAGS ID

maintainer-clean-tags:

distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)

# This target untars the dist file and tries a VPATH configuration.  Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
	-rm -rf $(distdir)
	GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
	mkdir $(distdir)/=build
	mkdir $(distdir)/=inst
	dc_install_base=`cd $(distdir)/=inst && pwd`; \
	cd $(distdir)/=build \
	  && ../configure --srcdir=.. --prefix=$$dc_install_base \
	  && $(MAKE) $(AM_MAKEFLAGS) \
	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
	  && $(MAKE) $(AM_MAKEFLAGS) check \
	  && $(MAKE) $(AM_MAKEFLAGS) install \
	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
	  && $(MAKE) $(AM_MAKEFLAGS) dist
	-rm -rf $(distdir)
	@banner="$(distdir).tar.gz is ready for distribution"; \
	dashes=`echo "$$banner" | sed s/./=/g`; \
	echo "$$dashes"; \
	echo "$$banner"; \
	echo "$$dashes"
dist: distdir
	-chmod -R a+r $(distdir)
	GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
	-rm -rf $(distdir)
dist-all: distdir
	-chmod -R a+r $(distdir)
	GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
	-rm -rf $(distdir)
distdir: $(DISTFILES)
	-rm -rf $(distdir)
	mkdir $(distdir)
	-chmod 777 $(distdir)
	here=`cd $(top_builddir) && pwd`; \
	top_distdir=`cd $(distdir) && pwd`; \
	distdir=`cd $(distdir) && pwd`; \
	cd $(top_srcdir) \
	  && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile
	@for file in $(DISTFILES); do \
	  d=$(srcdir); \
	  if test -d $$d/$$file; then \
	    cp -pr $$d/$$file $(distdir)/$$file; \
	  else \
	    test -f $(distdir)/$$file \
	    || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
	    || cp -p $$d/$$file $(distdir)/$$file || :; \
	  fi; \
	done
	for subdir in $(SUBDIRS); do \
	  if test "$$subdir" = .; then :; else \
	    test -d $(distdir)/$$subdir \
	    || mkdir $(distdir)/$$subdir \
	    || exit 1; \
	    chmod 777 $(distdir)/$$subdir; \
	    (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
	      || exit 1; \
	  fi; \
	done

DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)

-include $(DEP_FILES)

mostlyclean-depend:

clean-depend:

distclean-depend:
	-rm -rf .deps

maintainer-clean-depend:

%.o: %.c
	@echo '$(COMPILE) -c $<'; \
	$(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
	@-cp .deps/$(*F).pp .deps/$(*F).P; \
	tr ' ' '\012' < .deps/$(*F).pp \
	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
	    >> .deps/$(*F).P; \
	rm .deps/$(*F).pp

%.lo: %.c
	@echo '$(LTCOMPILE) -c $<'; \
	$(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
	@-sed -e 's/^\([^:]*\)\.o[ 	]*:/\1.lo \1.o :/' \
	  < .deps/$(*F).pp > .deps/$(*F).P; \
	tr ' ' '\012' < .deps/$(*F).pp \
	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
	    >> .deps/$(*F).P; \
	rm -f .deps/$(*F).pp
info-am:
info: info-recursive
dvi-am:
dvi: dvi-recursive
check-am: all-am
check: check-recursive
installcheck-am:
installcheck: installcheck-recursive
all-recursive-am: config.h
	$(MAKE) $(AM_MAKEFLAGS) all-recursive

install-exec-am: install-binPROGRAMS install-binSCRIPTS \
		install-sysconfDATA
	@$(NORMAL_INSTALL)
	$(MAKE) $(AM_MAKEFLAGS) install-exec-hook
install-exec: install-exec-recursive

install-data-am: install-man
install-data: install-data-recursive

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-recursive
uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS uninstall-man \
		uninstall-sysconfDATA
uninstall: uninstall-recursive
all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) $(HEADERS) \
		config.h
all-redirect: all-recursive-am
install-strip:
	$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs: installdirs-recursive
installdirs-am:
	$(mkinstalldirs)  $(DESTDIR)$(bindir) $(DESTDIR)$(bindir) \
		$(DESTDIR)$(mandir)/man1 $(DESTDIR)$(sysconfdir)


mostlyclean-generic:

clean-generic:
	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)

distclean-generic:
	-rm -f Makefile $(CONFIG_CLEAN_FILES)
	-rm -f config.cache config.log stamp-h stamp-h[0-9]*
	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)

maintainer-clean-generic:
	-test -z "text2pcap-scannerl$(BUILT_SOURCES)" || rm -f text2pcap-scannerl $(BUILT_SOURCES)
mostlyclean-am:  mostlyclean-hdr mostlyclean-binPROGRAMS \
		mostlyclean-compile mostlyclean-libtool \
		mostlyclean-tags mostlyclean-depend mostlyclean-generic

mostlyclean: mostlyclean-recursive

clean-am:  clean-hdr clean-binPROGRAMS clean-compile clean-libtool \
		clean-tags clean-depend clean-generic mostlyclean-am \
		clean-local

clean: clean-recursive

distclean-am:  distclean-hdr distclean-binPROGRAMS distclean-compile \
		distclean-libtool distclean-tags distclean-depend \
		distclean-generic clean-am
	-rm -f libtool

distclean: distclean-recursive
	-rm -f config.status

maintainer-clean-am:  maintainer-clean-hdr maintainer-clean-binPROGRAMS \
		maintainer-clean-compile maintainer-clean-libtool \
		maintainer-clean-tags maintainer-clean-depend \
		maintainer-clean-generic distclean-am
	@echo "This command is intended for maintainers to use;"
	@echo "it deletes files that may require special tools to rebuild."

maintainer-clean: maintainer-clean-recursive
	-rm -f config.status

.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \
maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \
mostlyclean-compile distclean-compile clean-compile \
maintainer-clean-compile mostlyclean-libtool distclean-libtool \
clean-libtool maintainer-clean-libtool uninstall-binSCRIPTS \
install-binSCRIPTS install-man1 uninstall-man1 install-man \
uninstall-man uninstall-sysconfDATA install-sysconfDATA \
install-data-recursive uninstall-data-recursive install-exec-recursive \
uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
all-recursive check-recursive installcheck-recursive info-recursive \
dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
distclean-tags clean-tags maintainer-clean-tags distdir \
mostlyclean-depend distclean-depend clean-depend \
maintainer-clean-depend info-am info dvi-am dvi check check-am \
installcheck-am installcheck all-recursive-am install-exec-am \
install-exec install-data-am install-data install-am install \
uninstall-am uninstall all-redirect all-am all installdirs-am \
installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean






	nasreq.xml sunping.xml

	packet-aarp.c  \
	packet-afp.c   \
	packet-afs.c   \
	packet-aim.c   \
	packet-aodv.c  \
	packet-arp.c   \
	packet-asap.c  \
	packet-ascend.c\
	packet-atalk.c \
	packet-atm.c   \
	packet-auto_rp.c   \
	packet-bacapp.c   \
	packet-bacnet.c   \
	packet-beep.c \
	packet-bgp.c   \
	packet-bootp.c \
	packet-bootparams.c \
	packet-bpdu.c  \
	packet-bvlc.c \
	packet-cdp.c   \
	packet-cgmp.c  \
	packet-chdlc.c  \
	packet-clip.c  \
	packet-clnp.c  \
	packet-cops.c  \
	packet-cups.c  \
	packet-data.c  \
	packet-dccp.c \
	packet-dcerpc.c  \
	packet-dcerpc-conv.c  \
	packet-dcerpc-dfs.c \
	packet-dcerpc-epm.c  \
	packet-dcerpc-lsa.c \
	packet-dcerpc-mgmt.c  \
	packet-dcerpc-ndr.c  \
	packet-dcerpc-netlogon.c \
	packet-dcerpc-nt.c \
	packet-dcerpc-oxid.c  \
	packet-dcerpc-reg.c \
	packet-dcerpc-remact.c  \
	packet-dcerpc-samr.c \
	packet-dcerpc-spoolss.c \
	packet-dcerpc-srvsvc.c \
	packet-dcerpc-wkssvc.c \
	packet-ddtp.c  \
	packet-dec-bpdu.c \
	packet-dhcpv6.c \
	packet-diameter.c \
	packet-dlsw.c  \
	packet-dns.c   \
	packet-dsi.c   \
	packet-dvmrp.c \
	packet-eap.c \
	packet-eapol.c \
	packet-eigrp.c \
	packet-esis.c  \
	packet-eth.c   \
	packet-ethertype.c   \
	packet-fddi.c  \
	packet-fr.c    \
	packet-frame.c  \
	packet-ftp.c   \
	packet-giop.c  \
	packet-gmrp.c \
	packet-gnutella.c \
	packet-gre.c   \
	packet-gtp.c   \
	packet-gvrp.c  \
	packet-h1.c    \
	packet-h261.c  \
	packet-hclnfsd.c  \
	packet-hsrp.c  \
	packet-http.c  \
	packet-iapp.c  \
	packet-icap.c  \
	packet-icmpv6.c\
	packet-icp.c   \
	packet-icq.c   \
	packet-ieee80211.c \
	packet-ieee8023.c \
	packet-igmp.c  \
	packet-igrp.c  \
	packet-imap.c   \
	packet-ip.c    \
	packet-ipp.c   \
	packet-ipsec.c \
	packet-ipv6.c  \
	packet-ipx.c   \
	packet-irc.c   \
	packet-isakmp.c\
	packet-iscsi.c \
	packet-isis.c  \
	packet-isis-clv.c \
	packet-isis-hello.c \
	packet-isis-lsp.c \
	packet-isis-snp.c \
	packet-isl.c   \
	packet-isup.c  \
	packet-iua.c   \
	packet-kerberos.c \
	packet-klm.c   \
	packet-l2tp.c  \
	packet-lapb.c  \
	packet-lapbether.c \
	packet-lapd.c  \
	packet-ldap.c  \
	packet-ldp.c   \
	packet-llc.c   \
	packet-lmi.c   \
	packet-lmp.c   \
	packet-lpd.c   \
	packet-m2pa.c  \
	packet-m2tp.c  \
	packet-m2ua.c  \
	packet-m3ua.c  \
	packet-mapi.c  \
	packet-mbtcp.c \
	packet-mip.c  \
	packet-mmse.c  \
	packet-mount.c \
	packet-mpeg1.c  \
	packet-mpls.c \
	packet-mrdisc.c \
	packet-msdp.c  \
	packet-msnip.c \
	packet-msproxy.c \
	packet-mtp2.c \
	packet-mtp3.c \
	packet-nbipx.c \
	packet-nbns.c  \
	packet-ncp.c   \
	packet-ncp2222.c   \
	packet-ndmp.c  \
	packet-netbios.c \
	packet-nfs.c   \
	packet-nisplus.c \
	packet-nlm.c   \
	packet-nntp.c  \
	packet-ntp.c  \
	packet-null.c  \
	packet-osi.c   \
	packet-osi-options.c \
	packet-ospf.c  \
	packet-pcnfsd.c \
	packet-pflog.c \
	packet-pgm.c   \
	packet-pim.c   \
	packet-pop.c   \
	packet-portmap.c   \
	packet-ppp.c   \
	packet-pppoe.c \
	packet-pptp.c  \
	packet-prism.c \
	packet-q2931.c \
	packet-q931.c  \
	packet-qllc.c  \
	packet-quake.c \
	packet-quakeworld.c \
	packet-quake2.c \
	packet-quake3.c \
	packet-radius.c\
	packet-ranap.c \
	packet-raw.c   \
	packet-rip.c   \
	packet-ripng.c \
	packet-rlogin.c \
	packet-rpc.c   \
	packet-rquota.c \
	packet-rsh.c   \
	packet-rsvp.c  \
	packet-rtcp.c  \
	packet-rtp.c   \
	packet-rtsp.c  \
	packet-rwall.c \
	packet-rx.c  \
	packet-sap.c   \
	packet-sccp.c  \
	packet-scsi.c  \
	packet-sctp.c  \
	packet-sdp.c   \
	packet-sip.c   \
	packet-skinny.c   \
	packet-slimp3.c   \
	packet-sll.c   \
	packet-smb.c   \
	packet-smb-browse.c \
	packet-smb-common.c \
	packet-smb-logon.c \
	packet-smb-mailslot.c \
	packet-smb-pipe.c \
	packet-smpp.c \
	packet-smtp.c \
	packet-sna.c   \
	packet-snaeth.c \
	packet-snmp.c	\
	packet-socks.c \
	packet-spray.c \
	packet-srvloc.c \
	packet-sscop.c \
	packet-ssl.c   \
	packet-stat.c   \
	packet-stat-notify.c \
	packet-sua.c   \
	packet-syslog.c \
	packet-tacacs.c \
	packet-tcp.c   \
	packet-telnet.c\
	packet-tftp.c  \
	packet-time.c  \
	packet-tns.c \
	packet-tpkt.c  \
	packet-tr.c    \
	packet-trmac.c \
	packet-tsp.c \
	packet-ucp.c   \
	packet-udp.c   \
	packet-v120.c \
	packet-vines.c \
	packet-vj.c   \
	packet-vlan.c \
	packet-vrrp.c \
	packet-vtp.c  \
	packet-wccp.c \
	packet-wcp.c \
	packet-who.c  \
	packet-wap.c \
	packet-wtls.c \
	packet-wsp.c \
	packet-wtp.c \
	packet-x11.c   \
	packet-x25.c   \
	packet-xdmcp.c \
	packet-xot.c   \
	packet-yhoo.c  \
	packet-ypbind.c \
	packet-yppasswd.c \
	packet-ypserv.c \
	packet-ypxfr.c \
	packet-zebra.c

if HAVE_PLUGINS
	plugins/gryphon/packet-gryphon.c \
	plugins/mgcp/packet-mgcp.c \
	plugins/giop/packet-cosnaming.c \
	plugins/giop/packet-coseventcomm.c

	plugins/gryphon/packet-gryphon-static.o		\
	plugins/mgcp/packet-mgcp-static.o		\
	plugins/giop/packet-cosnaming-static.o		\
	plugins/giop/packet-coseventcomm-static.o

	plugins/gryphon/gryphon.la \
	plugins/mgcp/mgcp.la \
	plugins/giop/cosnaming.la \
	plugins/giop/coseventcomm.la

	"-dlopen" self	\
	"-dlopen" plugins/gryphon/gryphon.la \
	"-dlopen" plugins/mgcp/mgcp.la \
	"-dlopen" plugins/giop/cosnaming.la \
	"-dlopen" plugins/giop/coseventcomm.la
else



endif

	packet-afp.h   \
	packet-afs.h   \
	packet-afs-macros.h \
	packet-afs-register-info.h \
	packet-afs-defs.h \
	packet-arp.h   \
	packet-atalk.h \
	packet-bgp.h   \
	packet-bootparams.h \
	packet-chdlc.h \
	packet-clip.h  \
	packet-dccp.h \
	packet-dcerpc.h \
	packet-dcerpc-dfs.h \
	packet-dcerpc-lsa.h \
	packet-dcerpc-netlogon.h \
	packet-dcerpc-nt.h \
	packet-dcerpc-reg.h \
	packet-dcerpc-samr.h \
	packet-dcerpc-spoolss.h \
	packet-dcerpc-srvsvc.h \
	packet-dcerpc-wkssvc.h \
	packet-ddtp.h  \
	packet-diameter-defs.h \
	packet-dns.h   \
	packet-dvmrp.h \
	packet-esis.h  \
	packet-eth.h   \
	packet-fddi.h  \
	packet-frame.h  \
	packet-giop.h  \
	packet-gnutella.h \
	packet-hclnfsd.h  \
	packet-http.h  \
	packet-ieee80211.h \
	packet-ieee8023.h \
	packet-igmp.h  \
	packet-ip.h    \
	packet-ipsec.h \
	packet-ipv6.h  \
	packet-ipx.h   \
	packet-isis.h  \
	packet-isis-clv.h \
	packet-isis-hello.h \
	packet-isis-lsp.h \
	packet-isis-snp.h \
	packet-isl.h   \
	packet-klm.h   \
	packet-ldap.h  \
	packet-llc.h   \
	packet-mount.h \
	packet-mrdisc.h \
	packet-msnip.h \
	packet-mtp3.h  \
	packet-ncp-int.h \
	packet-netbios.h \
	packet-nfs.h   \
	packet-nisplus.h \
	packet-nlm.h   \
	packet-ntp.h  \
	packet-null.h  \
	packet-osi.h   \
	packet-osi-options.h \
	packet-pcnfsd.h \
	packet-pflog.h \
	packet-pim.h   \
	packet-portmap.h   \
	packet-ppp.h   \
	packet-prism.h \
	packet-q931.h  \
	packet-raw.h   \
	packet-ripng.h \
	packet-rpc.h   \
	packet-rquota.h \
	packet-rsvp.h  \
	packet-rtcp.h  \
	packet-rtp.h   \
	packet-rwall.h  \
	packet-rx.h  \
	packet-scsi.h  \
	packet-sll.h   \
	packet-smb-browse.h \
	packet-smb-common.h \
	packet-smb-logon.h \
	packet-smb-mailslot.h \
	packet-smb-pipe.h \
	packet-sna.h   \
	packet-snmp.h	\
	packet-spray.h \
	packet-stat.h   \
	packet-stat-notify.h \
	packet-tcp.h   \
	packet-tns.h \
	packet-tpkt.h  \
	packet-tr.h    \
	packet-udp.h   \
	packet-vines.h \
	packet-vlan.h \
	packet-wccp.h \
	packet-wap.h \
	packet-wtls.h \
	packet-wtp.h \
	packet-wsp.h \
	packet-x11-keysym.h	\
	packet-yhoo.h  \
	packet-ypbind.h \
	packet-yppasswd.h \
	packet-ypserv.h \
	packet-ypxfr.h 

	aftypes.h      \
	alignment.h    \
	afn.c          \
	afn.h          \
	asn1.c         \
	asn1.h         \
	bridged_pids.h \
	column.c       \
	column.h       \
	color.h        \
	conditions.c   \
	conditions.h   \
	capture_stop_conditions.h   \
	capture_stop_conditions.c   \
	etypes.h       \
	follow.c       \
	follow.h       \
	format-oid.h   \
	greproto.h     \
	in_cksum.c     \
	in_cksum.h     \
	ipproto.c      \
	ipproto.h      \
	llcsaps.h      \
	nlpid.h        \
	oui.h          \
	pcap-util.c    \
	pcap-util.h    \
	ppptypes.h     \
	prefs.c        \
	prefs.h        \
	prefs-int.h    \
	print.c        \
	print.h        \
	ps.c           \
	ps.h           \
	ptvcursor.c	\
	ptvcursor.h	\
	reassemble.c   \
	reassemble.h   \
	register.h     \
	ringbuffer.c   \
	ringbuffer.h   \
	rpc_defrag.h   \
	smb.h          \
	util.c         \
	util.h         \
	x11-declarations.h \
	x11-register-info.h \
	x264_prt_id.h  \
	xdlc.c         \
	xdlc.h         \
	xmlstub.c      \
	xmlstub.h

	x11-declarations.h \
	x11-register-info.h

	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	capture.c      \
	capture.h      \
	file.c         \
	file.h         \
	filters.c      \
	filters.h      \
	globals.h      \
	menu.h         \
	progress_dlg.h \
	proto_hier_stats.h	\
	proto_hier_stats.c	\
	simple_dialog.h \
	statusbar.h    \
	summary.c      \
	summary.h      \
	ui_util.h

	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register-static.c     \
	capture.c      \
	capture.h      \
	file.c         \
	file.h         \
	filters.c      \
	filters.h      \
	globals.h      \
	menu.h         \
	progress_dlg.h \
	proto_hier_stats.h	\
	proto_hier_stats.c	\
	simple_dialog.h \
	statusbar.h    \
	summary.c      \
	summary.h      \
	ui_util.h	

	snprintf.c	\
	snprintf.h	\
	snprintf-imp.h	\
	strerror.c	\
	strerror.h	\
	strcasecmp.c	\
	strncasecmp.c	\
	mkstemp.c	\
	mkstemp.h	\
	strptime.c	\
	strptime.h

	   strptime.o

	wiretap/libwiretap.a	\
	gtk/libui.a		\
	epan/libethereal.a	\
	epan/ftypes/libftypes.a \
	epan/dfilter/libdfilter.a

	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	$(plugin_libs)

	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)

	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	 -lcrypto 		\
	$(plugin_ldadd)			\
	 -L/usr/local/lib -L/usr/X11R6/lib -lgtk -lgdk -lgmodule -lglib -lintl -lXext -lX11

	"-all-static" 			\
	$(plugin_static_ldadd)		\
	$(ethereal_optional_objects)	\
	$(ethereal_additional_libs)	\
	 -lcrypto		\
	 -L/usr/local/lib -L/usr/X11R6/lib -lgtk -lgdk -lgmodule -lglib -lintl -lXext -lX11		


	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	tethereal.c

	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register-static.c     \
	tethereal.c

	wiretap/libwiretap.a		\
	epan/libethereal.a		\
	epan/ftypes/libftypes.a		\
	epan/dfilter/libdfilter.a

	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	$(plugin_libs)

	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	

	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	 -lcrypto		\
	$(plugin_ldadd)			\
	-L/usr/local/lib -lgmodule -lglib -lm \
	  

	"-all-static"		\
	$(plugin_static_ldadd)	\
	wiretap/libwiretap.a	\
	$(ethereal_optional_objects)	\
	$(tethereal_additional_libs)	\
	 -lcrypto		\
	-L/usr/local/lib -lgmodule -lglib -lm \
	  









#
# Build various header files for the X11 dissector.
#
x11-declarations.h x11-register-info.h: x11-fields process-x11-fields.pl
	$(PERL) $(srcdir)/process-x11-fields.pl <$(srcdir)/x11-fields


.sh:
	rm -f $@ [email protected]
	$(editsh) $< > [email protected] && chmod +x [email protected] && mv [email protected] $@

#
# Build "register.c", which contains a function "register_all_protocols()"
# that calls the register routines for all protocols.
#
# We do this by grepping through sources.  If that turns out to be too slow,
# maybe we could just require every .o file to have an register routine
# of a given name (packet-aarp.o -> proto_register_aarp, etc.).
#
# Formatting conventions:  The name of the proto_register_* routines must
# start in column zero, or must be preceded only by "void " starting in
# column zero, and must not be inside #if.
#
# We assume that all dissector routines are in "packet-XXX.c" files.
#
# For some unknown reason, having a big "for" loop in the Makefile
# to scan all the "packet-XXX.c" files doesn't work with some "make"s;
# they seem to pass only the first few names in the list to the shell,
# for some reason.
#
# Therefore, we have a script to generate the "register.c" file.
#
# The first argument is the directory in which the source files live.
# All subsequent arguments are the files to scan.
#
register.c: $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
	@echo Making register.c
	@$(srcdir)/make-reg-dotc register.c $(srcdir) $(DISSECTOR_SRC)

register-static.c: $(plugin_src) $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
	@echo Making register-static.c
	@$(srcdir)/make-reg-dotc register-static.c $(srcdir) $(plugin_src) $(DISSECTOR_SRC)

ps.c: print.ps rdps
	./rdps $(srcdir)/print.ps ps.c

rdps: rdps.c
	$(CC) $(CFLAGS) -o rdps $(srcdir)/rdps.c

randpkt.o: randpkt.c
	$(CC) -DHAVE_CONFIG_H -I. `glib-config --cflags` -c $(srcdir)/randpkt.c

randpkt: randpkt.o wiretap/libwiretap.a
	$(LINK) -o randpkt randpkt.o wiretap/libwiretap.a `glib-config --libs` -lz


	$(DISSECTOR_SRC) \
	$(ETHEREAL_COMMON_SRC) \
	register.c     \
	dftest.c

	wiretap/libwiretap.a		\
	epan/libethereal.a		\
	epan/ftypes/libftypes.a		\
	epan/dfilter/libdfilter.a

	$(ethereal_optional_objects)	\
	$(dftest_additional_libs)	\
	$(plugin_libs)

	$(ethereal_optional_objects)	\
	$(dftest_additional_libs)	\
	 -lcrypto		\
	$(plugin_ldadd)			\
	-L/usr/local/lib -lgmodule -lglib -lm \
	  


	idl2eth

	register.c	\
	register-static.c \
	rdps		\
	ps.c		\
	*~

	Ethereal.desktop	\
	aclocal-flags		\
	capture-wpcap.c		\
	capture-wpcap.h		\
	cleanbld.bat		\
	config.h.win32		\
	config.nmake		\
	debian/README.debian	\
	debian/changelog	\
	debian/control		\
	debian/copyright	\
	debian/dirs		\
	debian/docs		\
	debian/menu		\
	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/README.tvbuff	\
	doc/dfilter2pod.pl	\
	doc/editcap.pod		\
	doc/ethereal.pod.template \
	doc/idl2eth.pod		\
	doc/mergecap.pod	\
	doc/randpkt.txt		\
	doc/tethereal.pod.template \
	doc/text2pcap.pod	\
	editcap.c		\
	ethereal_be.py		\
	ethereal_gen.py		\
	mergecap.c		\
	text2pcap.c             \
	text2pcap.h             \
	text2pcap-scanner.l     \
	getopt.c		\
	getopt.h		\
	idl2eth.sh		\
	image/Makefile.nmake	\
	image/README.image	\
	image/clist_ascend.xpm	\
	image/clist_descend.xpm	\
	image/dn_arrow.xpm	\
	image/editcap.rc.in	\
	image/eexcl3d64.xpm	\
	image/eicon3d16.xpm	\
	image/eicon3d32.xpm	\
	image/eicon3d48.xpm	\
	image/eicon3d64.xpm	\
	image/elogo3d48x48.png	\
	image/ethereal.ico	\
	image/ethereal.rc.in	\
	image/ethereal48x48-trans.png  \
	image/ethereal48x48.png \
	image/hi16-app-ethereal.png	\
	image/hi32-app-ethereal.png	\
	image/hi48-app-ethereal.png	\
	image/icon-ethereal.xpm	\
	image/icon-excl.xpm	\
	image/lo16-app-ethereal.png	\
	image/lo32-app-ethereal.png	\
	image/lo48-app-ethereal.png	\
	image/mergecap.rc.in	\
	image/tethereal.rc.in	\
	image/text2pcap.rc.in	\
	image/up_arrow.xpm	\
	INSTALL.configure       \
	Makefile.nmake		\
	make-manuf		\
	make-reg-dotc		\
	make-reg-dotc.py	\
	manuf                   \
	manuf.tmpl		\
	ncp2222.py              \
	packet-ncp2222.inc	\
	print.ps                \
	process-x11-fields.pl	\
	README.aix		\
	README.bsd		\
	README.hpux		\
	README.irix		\
	README.linux		\
	README.tru64		\
	README.vmware		\
	README.win32		\
	randpkt.c		\
	rdps.c			\
	TODO			\
	dictionary.dtd		\
	dictionary.xml		\
	mobileipv4.xml		\
	nasreq.xml		\
	sunping.xml		\
	x11-fields

if SETUID_INSTALL
install-exec-hook:
	-chmod +s $(DESTDIR)$(bindir)/ethereal
	-chmod +s $(DESTDIR)$(bindir)/tethereal
	-chmod +s $(DESTDIR)$(bindir)/ethereal_static
else
install-exec-hook:
endif

#
# Currently register.c can be included in the distribution because
# we always build all protocol dissectors. We used to have to check
# whether or not to build the snmp dissector. If we again need to
# variably build something, making register.c non-portable, uncomment
# the dist-hook line below.
#
# Oh, yuk.  We don't want to include "register.c" in the distribution, as
# its contents depend on the configuration, and therefore we want it
# to be built when the first "make" is done; however, Automake insists
# on putting *all* source into the distribution.
#
# We work around this by having a "dist-hook" rule that deletes
# "register.c", so that "dist" won't pick it up.
#
#dist-hook:
#	@rm -f $(distdir)/register.c

if HAVE_PLUGINS
else
endif

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 -o $@

libtool: $(LIBTOOL_DEPS)
	$(SHELL) ./config.status --recheck


svr4-package: $(bin_SCRIPTS) $(lib_LTLIBRARIES)
	if test x$(HAVE_SVR4_PACKAGING) = xyes ; then \
		rm -rf $(stagedir) ; \
		$(MAKE) DESTDIR=$(stagedir) install-strip; \
		$(srcdir)/packaging/svr4/mkpkg \
			$(PACKAGE) \
			$(PACKAGE)-$(VERSION)-$(host_os)-$(host_cpu)-local \
			$(prefix) \
			$(top_stagedir) ; \
	else \
		echo "Error: SVR4 packaging tools not found." ; \
		echo "Package build abandoned." ; \
	fi

solaris-package: svr4-package

rpm-package: dist
	if test x$(HAVE_RPM) = xyes ; then \
		cd $(rpm_topdir) ; \
		mkdir BUILD RPMS SOURCES ; \
		cd SOURCES ; \
		ln -s ../../../$(distdir).tar.gz ; \
		cd .. ; \
		rpm --define "_topdir `cd . && pwd`" -bb SPECS/ethereal.spec && \
			echo "Package successfully built in `pwd`/RPMS." ; \
	else \
		echo "Error: RPM executable and/or source directory not found." ; \
	fi
srpm-package: dist
	if test x$(HAVE_RPM) = xyes ; then \
		cd $(rpm_topdir) ; \
		mkdir BUILD SRPMS SOURCES ; \
		cd SOURCES ; \
		ln -s ../../../$(distdir).tar.gz ; \
		cd .. ; \
		rpm --define "_topdir `cd . && pwd`" -bs SPECS/ethereal.spec && \
			echo "Package successfully built in `pwd`/SRPMS." ; \
	else \
		echo "Error: RPM executable and/or source directory not found." ; \
	fi

debian-package: debian/rules
	dpkg-buildpackage -rfakeroot -us -uc

clean-local:
	rm -rf $(top_stagedir)

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: