From Olivier Jacques: Add #defines to disable XML validation.
[obnox/wireshark/wip.git] / Makefile.am
index ace9fe2c985d831cc61765b3b6081b5b21e60be6..1f8899ae84877a21e2ec0cf338eff5db104ec28d 100644 (file)
@@ -1,7 +1,7 @@
 # Makefile.am
 # Automake file for Ethereal
 #
-# $Id: Makefile.am,v 1.714 2004/03/02 01:21:56 jmayer Exp $
+# $Id$
 #
 # Ethereal - Network traffic analyzer
 # By Gerald Combs <gerald@ethereal.com>
@@ -60,27 +60,30 @@ ACLOCAL_AMFLAGS = `./aclocal-flags`
 # 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_PROGRAMS = @ethereal_bin@ @capinfo_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@
+man1_MANS = @ethereal_man@ @capinfo_man@ @editcap_man@ @mergecap_man@ @tethereal_man@ @text2pcap_man@ @idl2eth_man@
 man4_MANS = @etherealfilter_man@
 man_MANS =
 
-EXTRA_PROGRAMS = ethereal tethereal editcap mergecap dftest randpkt text2pcap
+EXTRA_PROGRAMS = ethereal tethereal capinfo editcap mergecap dftest \
+       randpkt text2pcap
 EXTRA_SCRIPTS = idl2eth
 
 #
 # Ethereal configuration files are put in $(pkgdatadir).  It currently
-# contains the "manuf" file and a "diameter" directory.
+# contains the "AUTHORS-SHORT" and "manuf" files and a "diameter" directory.
 #
-pkgdata_DATA = manuf
+pkgdata_DATA = AUTHORS-SHORT manuf ethereal.html tethereal.html \
+       ethereal-filter.html capinfo.html editcap.html \
+       idl2eth.html mergecap.html text2pcap.html
 
 #
 # Install the Diameter DTD and XML files in the "diameter" subdirectory
 # of that directory.
 #
 diameterdir = $(pkgdatadir)/diameter
-diameter_DATA = dictionary.dtd dictionary.xml mobileipv4.xml \
+diameter_DATA = dictionary.dtd dictionary.xml imscxdx.xml mobileipv4.xml \
        nasreq.xml sunping.xml
 
 PLATFORM_SRC = pcap-util-unix.c
@@ -92,6 +95,7 @@ plugin_libs = \
        plugins/acn/acn.la \
        plugins/artnet/artnet.la \
        plugins/asn1/asn1.la \
+       plugins/ciscosm/ciscosm.la \
        plugins/docsis/docsis.la \
        plugins/enttec/enttec.la \
        plugins/giop/cosnaming.la \
@@ -101,9 +105,12 @@ plugin_libs = \
        plugins/lwres/lwres.la \
        plugins/megaco/megaco.la \
        plugins/mgcp/mgcp.la \
+       plugins/opsi/opsi.la \
        plugins/pcli/pcli.la \
        plugins/rdm/rdm.la \
+       plugins/rlm/rlm.la \
        plugins/rtnet/rtnet.la \
+       plugins/rudp/rudp.la \
        plugins/v5ua/v5ua.la
 
 if ENABLE_STATIC
@@ -111,6 +118,7 @@ plugin_ldadd = \
        plugins/acn/packet-acn.o \
        plugins/artnet/packet-artnet.o \
        plugins/asn1/packet-asn1.o \
+       plugins/ciscosm/packet-sm.o \
        plugins/docsis/packet-bpkmattr.o \
        plugins/docsis/packet-bpkmreq.o \
        plugins/docsis/packet-bpkmrsp.o \
@@ -142,9 +150,12 @@ plugin_ldadd = \
        plugins/lwres/packet-lwres.o \
        plugins/megaco/packet-megaco.o \
        plugins/mgcp/packet-mgcp.o \
+       plugins/opsi/packet-opsi.o \
        plugins/pcli/packet-pcli.o \
        plugins/rdm/packet-rdm.o \
+       plugins/rlm/packet-rlm.o \
        plugins/rtnet/packet-rtnet.o \
+       plugins/rudp/packet-rudp.o \
        plugins/v5ua/packet-v5ua.o
 
 else           # ENABLE_STATIC
@@ -153,6 +164,7 @@ plugin_ldadd = \
        "-dlopen" plugins/acn/acn.la \
        "-dlopen" plugins/artnet/artnet.la \
        "-dlopen" plugins/asn1/asn1.la \
+       "-dlopen" plugins/ciscosm/ciscosm.la \
        "-dlopen" plugins/docsis/docsis.la \
        "-dlopen" plugins/enttec/enttec.la \
        "-dlopen" plugins/giop/cosnaming.la \
@@ -162,9 +174,12 @@ plugin_ldadd = \
        "-dlopen" plugins/lwres/lwres.la \
        "-dlopen" plugins/megaco/megaco.la \
        "-dlopen" plugins/mgcp/mgcp.la \
+       "-dlopen" plugins/opsi/opsi.la \
        "-dlopen" plugins/pcli/pcli.la \
        "-dlopen" plugins/rdm/rdm.la \
+       "-dlopen" plugins/rlm/rlm.la \
        "-dlopen" plugins/rtnet/rtnet.la \
+       "-dlopen" plugins/rudp/rudp.la \
        "-dlopen" plugins/v5ua/v5ua.la
 
 endif          # ENABLE_STATIC
@@ -189,11 +204,9 @@ 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 = \
-       wiretap/libwiretap.a    \
        gtk/libui.a             \
-       epan/libethereal.a      \
-       epan/ftypes/libftypes.a \
-       epan/dfilter/libdfilter.a
+       wiretap/libwiretap.la   \
+       epan/libethereal.la
 
 # This is the automake dependency variable for the executable
 ethereal_DEPENDENCIES = \
@@ -220,16 +233,14 @@ ethereal_LDADD = \
        $(ethereal_additional_libs)     \
        @SNMP_LIBS@ @SSL_LIBS@          \
        $(plugin_ldadd)                 \
-       @PCRE_LIBS@ \
-       @PCAP_LIBS@ @GTK_LIBS@ @ADNS_LIBS@
+       @PCRE_LIBS@                     \
+       @PCAP_LIBS@ @GTK_LIBS@ @ADNS_LIBS@ @KRB5_LIBS@ @FRAMEWORKS@
 
 # 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
+       wiretap/libwiretap.la           \
+       epan/libethereal.la
 
 # This is the automake dependency variable for the executable
 tethereal_DEPENDENCIES = \
@@ -243,9 +254,9 @@ tethereal_LDADD = \
        $(tethereal_additional_libs)    \
        @SNMP_LIBS@ @SSL_LIBS@          \
        $(plugin_ldadd)                 \
-       @PCRE_LIBS@ \
+       @PCRE_LIBS@                     \
        @GLIB_LIBS@ -lm                 \
-       @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ @ADNS_LIBS@
+       @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ @ADNS_LIBS@ @KRB5_LIBS@
 
 if ENABLE_STATIC
 tethereal_LDFLAGS = -Wl,-static -all-static
@@ -263,14 +274,16 @@ text2pcap_DEPENDENCIES = text2pcap.h
 text2pcap_LDADD = $(text2pcap_optional_objects) \
        @GLIB_LIBS@ -lm
 
-mergecap_DEPENDENCIES = wiretap/libwiretap.a
+mergecap_DEPENDENCIES = wiretap/libwiretap.la
 
 # This is the automake dependency variable for the executable
-editcap_DEPENDENCIES = wiretap/libwiretap.a
+capinfo_DEPENDENCIES = wiretap/libwiretap.la
+editcap_DEPENDENCIES = wiretap/libwiretap.la
 
 # 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@
+capinfo_LDADD = wiretap/libwiretap.la @GLIB_LIBS@
+editcap_LDADD = wiretap/libwiretap.la @GLIB_LIBS@
+mergecap_LDADD = wiretap/libwiretap.la @GLIB_LIBS@
 
 # Common headers
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/wiretap
@@ -278,14 +291,24 @@ AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/wiretap
 #
 # Build the version string
 #
-cvsversion.h:
+# FORCE is the portable version of .PHONY
+FORCE:
+
+svnversion.h: FORCE
        $(PERL) $(srcdir)/make-version.pl
 
 #
-# Build various header files for the X11 dissector.
+# Build the short version of the authors file for the about dialog
+#
+AUTHORS-SHORT: AUTHORS make-authors-short.pl
+       $(PERL) $(srcdir)/perlnoutf.pl $(srcdir)/make-authors-short.pl < AUTHORS > AUTHORS-SHORT
+
+#
+# Build the short version of the authors file with formatting codes for the
+# man page
 #
-x11-declarations.h x11-register-info.h: x11-fields process-x11-fields.pl
-       $(PERL) $(srcdir)/process-x11-fields.pl <$(srcdir)/x11-fields
+AUTHORS-SHORT-FORMAT: AUTHORS-SHORT make-authors-format.pl
+       $(PERL) $(srcdir)/perlnoutf.pl $(srcdir)/make-authors-format.pl < AUTHORS-SHORT > AUTHORS-SHORT-FORMAT
 
 #
 # Build shell scripts by doing variable substitution.
@@ -299,49 +322,14 @@ SUFFIXES = .sh
        $(editsh) $< > $@.tmp && chmod +x $@.tmp && mv $@.tmp $@
 
 #
-# 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 name of the file to write.
-# The second argument is the directory in which the source files live.
-# All subsequent arguments are the files to scan.
-#
-register.c: $(plugin_src) $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
-       @if test -n $(PYTHON); then \
-               echo Making register.c with python ; \
-               $(PYTHON) $(srcdir)/make-reg-dotc.py $(srcdir) $(DISSECTOR_SRC) ; \
-       else \
-               echo Making register.c with shell script ; \
-               $(srcdir)/make-reg-dotc register.c $(srcdir) \
-                       $(plugin_src) $(DISSECTOR_SRC) ; \
-       fi
-
-#
-# Build "tethereal-tap-register.c", which contains a function 
+# Build "tethereal-tap-register.c", which contains a function
 # "register_all_tap_listeners()"
 # that calls the register routines for all tehtereal tap listeners.
 #
 # We do this by grepping through sources.
 #
-# Formatting conventions:  The name of the tap_listener_register_* 
-# routines must start in column zero, or must be preceded only by 
+# Formatting conventions:  The name of the tap_listener_register_*
+# routines must start in column zero, or must be preceded only by
 # "void " starting in column zero, and must not be inside #if.
 #
 # The first argument is the directory in which the source files live.
@@ -350,28 +338,26 @@ register.c: $(plugin_src) $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc
 tethereal-tap-register.c: $(TETHEREAL_TAP_SRC) $(srcdir)/make-tapreg-dotc
        @echo Making tethereal-tap-register.c
        @$(srcdir)/make-tapreg-dotc tethereal-tap-register.c $(srcdir) $(TETHEREAL_TAP_SRC)
-
 ps.c: print.ps rdps
        ./rdps $(srcdir)/print.ps ps.c
 
 rdps: rdps.c
        $(CC) $(CFLAGS) -o rdps $(srcdir)/rdps.c
 
-randpkt_additional_libs = wiretap/libwiretap.a
+randpkt_additional_libs = wiretap/libwiretap.la
 
 randpkt_DEPENDENCIES = \
        $(randpkt_additional_libs)
 
 randpkt_LDADD = \
        $(randpkt_additional_libs) \
-       @GLIB_LIBS@ -lm \
+       @GLIB_LIBS@ -lm                 \
        @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ @ADNS_LIBS@
 
 dftest_additional_libs =               \
-       wiretap/libwiretap.a            \
-       epan/libethereal.a              \
-       epan/ftypes/libftypes.a         \
-       epan/dfilter/libdfilter.a
+       wiretap/libwiretap.la           \
+       epan/libethereal.la
 
 dftest_DEPENDENCIES = \
        $(ethereal_optional_objects)    \
@@ -382,20 +368,20 @@ dftest_DEPENDENCIES = \
 dftest_LDADD = \
        $(ethereal_optional_objects)    \
        $(dftest_additional_libs)       \
-       @SNMP_LIBS@ @SSL_LIBS@          \
+       @SNMP_LIBS@ @SSL_LIBS@          \
        $(plugin_ldadd)                 \
-       @PCRE_LIBS@ \
-       @GLIB_LIBS@ -lm \
-       @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ @ADNS_LIBS@
+       @PCRE_LIBS@                     \
+       @GLIB_LIBS@ -lm                 \
+       @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ @ADNS_LIBS@ @KRB5_LIBS@
 
 dftest_LDFLAGS = -export-dynamic
 
 CLEANFILES =   \
+       svnversion.h \
        @rdps_bin@ \
        idl2eth
 
 DISTCLEANFILES = \
-       aclocal-missing/*.m4 \
        ps.c \
        *~
 
@@ -403,7 +389,8 @@ MAINTAINERCLEANFILES =              \
        ps.c
 
 EXTRA_DIST = \
-       Ethereal.desktop        \
+       AUTHORS-SHORT           \
+       AUTHORS-SHORT-FORMAT    \
        FAQ                     \
        INSTALL.configure       \
        Makefile.common         \
@@ -413,6 +400,7 @@ EXTRA_DIST = \
        README.hpux             \
        README.irix             \
        README.linux            \
+       README.macos            \
        README.tru64            \
        README.vmware           \
        README.win32            \
@@ -422,8 +410,8 @@ EXTRA_DIST = \
        aclocal-fallback/gtk-2.0.m4 \
        aclocal-fallback/gtk.m4 \
        aclocal-flags           \
-       aclocal-missing/dummy   \
        autogen.sh              \
+       capinfo.c               \
        capture-wpcap.c         \
        capture-wpcap.h         \
        cleanbld.bat            \
@@ -452,6 +440,7 @@ EXTRA_DIST = \
        doc/README.tapping      \
        doc/README.tvbuff       \
        doc/README.xml-output   \
+       doc/capinfo.pod         \
        doc/dfilter2pod.pl      \
        doc/editcap.pod         \
        doc/ethereal-filter.pod.template \
@@ -461,15 +450,19 @@ EXTRA_DIST = \
        doc/randpkt.txt         \
        doc/tethereal.pod       \
        doc/text2pcap.pod       \
+       doxygen.cfg.in          \
        editcap.c               \
+       epan/libethereal.def    \
        ethereal_be.py          \
        ethereal_gen.py         \
+       ethereal.desktop        \
        getopt.c                \
        getopt.h                \
        idl2eth.sh              \
        image/Ethereal.icns     \
        image/Makefile.nmake    \
        image/README.image      \
+       image/capinfo.rc.in     \
        image/clist_ascend.xpm  \
        image/clist_descend.xpm \
        image/dn_arrow.xpm      \
@@ -489,6 +482,7 @@ EXTRA_DIST = \
        image/hi48-app-ethereal.png     \
        image/icon-ethereal.xpm \
        image/icon-excl.xpm     \
+       image/libethereal.rc.in \
        image/lo16-app-ethereal.png     \
        image/lo32-app-ethereal.png     \
        image/lo48-app-ethereal.png     \
@@ -527,9 +521,17 @@ EXTRA_DIST = \
        image/toolbar/stock_zoom_in_24.xpm \
        image/toolbar/stock_zoom_out_24.xpm \
        image/up_arrow.xpm      \
+       image/icon_layout_1.xpm \
+       image/icon_layout_2.xpm \
+       image/icon_layout_3.xpm \
+       image/icon_layout_4.xpm \
+       image/icon_layout_5.xpm \
+       image/icon_layout_6.xpm \
+       image/wiretap.rc.in     \
+       imscxdx.xml             \
+       make-authors-format.pl  \
+       make-authors-short.pl   \
        make-manuf              \
-       make-reg-dotc           \
-       make-reg-dotc.py        \
        make-tapreg-dotc        \
        make-version.pl         \
        manuf                   \
@@ -537,18 +539,15 @@ EXTRA_DIST = \
        mergecap.c              \
        mobileipv4.xml          \
        nasreq.xml              \
-       ncp2222.py              \
-       packet-ncp2222.inc      \
+       perlnoutf.pl            \
        print.ps                \
-       process-x11-fields.pl   \
        randpkt.c               \
        rdps.c                  \
        sunping.xml             \
        text2pcap-scanner.l     \
        text2pcap.c             \
        text2pcap.h             \
-       wka.tmpl                \
-       x11-fields
+       wka.tmpl
 
 if SETUID_INSTALL
 install-exec-hook:
@@ -558,24 +557,6 @@ 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
-
 DIST_SUBDIRS = tools wiretap doc epan plugins packaging gtk help
 
 if HAVE_PLUGINS
@@ -584,11 +565,11 @@ else
 SUBDIRS = tools wiretap doc epan packaging help @ethereal_SUBDIRS@
 endif
 
-ethereal.1: ethereal doc/ethereal.pod
+ethereal.1: doc/ethereal.pod AUTHORS-SHORT-FORMAT
        (cd doc ; \
        $(MAKE) ../ethereal.1 )
 
-tethereal.1: tethereal doc/tethereal.pod
+tethereal.1: doc/tethereal.pod
        (cd doc ; \
        $(MAKE) ../tethereal.1 )
 
@@ -596,6 +577,10 @@ ethereal-filter.4: tethereal doc/ethereal-filter.pod.template
        (cd doc ; \
        $(MAKE) ../ethereal-filter.4 )
 
+capinfo.1: doc/capinfo.pod
+       (cd doc ; \
+       $(MAKE) ../capinfo.1 )
+
 editcap.1: doc/editcap.pod
        (cd doc ; \
        $(MAKE) ../editcap.1 )
@@ -612,8 +597,37 @@ text2pcap.1: doc/text2pcap.pod
        (cd doc ; \
        $(MAKE) ../text2pcap.1 )
 
-packet-ncp2222.c : ncp2222.py
-       $(PYTHON) $(srcdir)/ncp2222.py -o $@
+ethereal.html: doc/ethereal.pod AUTHORS-SHORT-FORMAT
+       (cd doc ; \
+       $(MAKE) ../ethereal.html )
+
+tethereal.html: doc/tethereal.pod
+       (cd doc ; \
+       $(MAKE) ../tethereal.html )
+
+ethereal-filter.html: tethereal doc/ethereal-filter.pod.template
+       (cd doc ; \
+       $(MAKE) ../ethereal-filter.html )
+
+capinfo.html: doc/capinfo.pod
+       (cd doc ; \
+       $(MAKE) ../capinfo.html )
+
+editcap.html: doc/editcap.pod
+       (cd doc ; \
+       $(MAKE) ../editcap.html )
+
+idl2eth.html: doc/idl2eth.pod
+       (cd doc ; \
+       $(MAKE) ../idl2eth.html )
+
+mergecap.html: doc/mergecap.pod
+       (cd doc ; \
+       $(MAKE) ../mergecap.html )
+
+text2pcap.html: doc/text2pcap.pod
+       (cd doc ; \
+       $(MAKE) ../text2pcap.html )
 
 libtool: $(LIBTOOL_DEPS)
        $(SHELL) ./config.status --recheck