aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2012-02-18 23:55:41 +0000
committerGuy Harris <guy@alum.mit.edu>2012-02-18 23:55:41 +0000
commit530c8c53902c2da8f49551c6874c89e319ba1534 (patch)
tree3af372a25e0c8420185112cb18ed6a5020ed0746
parentb42cfb1ff1d055da56326895484a0723f514aef4 (diff)
downloadwireshark-530c8c53902c2da8f49551c6874c89e319ba1534.tar.gz
wireshark-530c8c53902c2da8f49551c6874c89e319ba1534.tar.bz2
wireshark-530c8c53902c2da8f49551c6874c89e319ba1534.zip
Create a libui (static) library in the ui directory, which contains the
object files from all the source files in the ui directory (but not in its subdirectories), and link the programs that need it with them. This cleans things up a little bit, and may also fix the Windows build. svn path=/trunk/; revision=41061
-rw-r--r--Makefile.am7
-rw-r--r--Makefile.common23
-rw-r--r--Makefile.nmake71
-rw-r--r--configure.in4
-rw-r--r--ui/Makefile.am113
-rw-r--r--ui/Makefile.common58
-rw-r--r--ui/Makefile.nmake80
-rw-r--r--ui/doxygen.cfg.in66
8 files changed, 383 insertions, 39 deletions
diff --git a/Makefile.am b/Makefile.am
index 192dd67873..b4648fda78 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -386,6 +386,7 @@ endif
# @GTK_LIBS@ (as those are also needed for X applications, and GTK+
# applications are X applications).
wireshark_LDADD = \
+ ui/libui.a \
ui/gtk/libgtkui.a \
ui/gtk/libgtkui_dirty.a \
codecs/libcodec.a \
@@ -416,6 +417,7 @@ endif
# Libraries and plugin flags with which to link tshark.
tshark_LDADD = \
+ ui/libui.a \
wiretap/libwiretap.la \
epan/libwireshark.la \
wsutil/libwsutil.la \
@@ -443,6 +445,7 @@ endif
# Libraries and plugin flags with which to link rawshark.
rawshark_LDADD = \
+ ui/libui.a \
wiretap/libwiretap.la \
epan/libwireshark.la \
wsutil/libwsutil.la \
@@ -509,6 +512,7 @@ randpkt_CFLAGS = $(AM_CLEAN_CFLAGS)
# Libraries and plugin flags with which to link dftest.
dftest_LDADD = \
+ ui/libui.a \
wiretap/libwiretap.la \
wsutil/libwsutil.la \
epan/libwireshark.la \
@@ -955,7 +959,7 @@ endif
endif
-DIST_SUBDIRS = asn1 codecs doc epan ui/gtk help packaging plugins tools wiretap wsutil docbook
+DIST_SUBDIRS = asn1 codecs doc epan ui ui/gtk help packaging plugins tools wiretap wsutil docbook
if HAVE_PLUGINS
SUBDIRS = tools wsutil wiretap epan plugins packaging help @wireshark_SUBDIRS@ . doc
@@ -1077,6 +1081,7 @@ checkapi_local:
checkapi: checkapi_local
cd wiretap && $(MAKE) checkapi
cd codecs && $(MAKE) checkapi
+ cd ui && $(MAKE) checkapi
cd ui/gtk && $(MAKE) checkapi
## cd epan && $(MAKE) checkapi
## cd epan/crypt && $(MAKE) checkapi
diff --git a/Makefile.common b/Makefile.common
index 731c55e8e9..b139687892 100644
--- a/Makefile.common
+++ b/Makefile.common
@@ -84,7 +84,6 @@ WIRESHARK_COMMON_INCLUDES = \
timestats.h \
tap-megaco-common.h \
tap-rtp-common.h \
- ui/util.h \
version_info.h
# sources common for wireshark and tshark, but not rawshark;
@@ -161,14 +160,12 @@ wireshark_SOURCES = \
recent.c \
summary.c \
tempfile.c \
- u3.c \
- ui/util.c
+ u3.c
# corresponding headers
wireshark_INCLUDES = \
airpcap.h \
airpcap_loader.h \
- ui/alert_box.h \
capture.h \
capture_info.h \
capture_opts.h \
@@ -176,20 +173,13 @@ wireshark_INCLUDES = \
filters.h \
g711.h \
globals.h \
- ui/last_open_dir.h \
log.h \
- ui/main_statusbar.h \
merge.h \
- ui/progress_dlg.h \
- ui/recent.h \
- ui/recent_utils.h \
proto_hier_stats.h \
- ui/simple_dialog.h \
stat_menu.h \
summary.h \
sync_pipe.h \
- u3.h \
- ui/ui_util.h
+ u3.h
# tshark specifics
tshark_SOURCES = \
@@ -199,14 +189,12 @@ tshark_SOURCES = \
capture_opts.c \
tempfile.c \
tshark-tap-register.c \
- tshark.c \
- ui/util.c
+ tshark.c
# rawshark specifics
rawshark_SOURCES = \
$(WIRESHARK_COMMON_SRC) \
- rawshark.c \
- ui/util.c
+ rawshark.c
# text2pcap specifics
text2pcap_SOURCES = \
@@ -232,8 +220,7 @@ capinfos_SOURCES = \
# dftest specifics
dftest_SOURCES = \
- ui/cli/dftest.c \
- ui/util.c
+ ui/cli/dftest.c
# randpkt specifics
randpkt_SOURCES = \
diff --git a/Makefile.nmake b/Makefile.nmake
index 5ab6234349..279a3cec27 100644
--- a/Makefile.nmake
+++ b/Makefile.nmake
@@ -238,13 +238,33 @@ packaging_zip: all
!IFDEF WIRESHARK_GENERATE_BSC_FILE
# FIXME: Add epan\wspython\*.sbr when we support Python embedding
# Note: Certain .sbr files which cause bscmake warning "too many references... ignoring ..."
-wireshark.bsc: *.sbr codecs\*.sbr epan\*.sbr epan\crypt\*.sbr epan\dfilter\*.sbr \
- epan\dissectors\*.sbr epan\ftypes\*.sbr epan\wslua\*.sbr ui\gtk\*.sbr \
- plugins\asn1\*.sbr plugins\docsis\*.sbr plugins\ethercat\*.sbr \
- plugins\giop\*.sbr plugins\gryphon\*.sbr plugins\irda\*.sbr plugins\m2m\*.sbr \
- plugins\mate\*.sbr plugins\opcua\*.sbr plugins\profinet\*.sbr plugins\stats_tree\*.sbr \
- plugins\unistim\*.sbr plugins\wimax\*.sbr plugins\wimaxasncp\*.sbr \
- wiretap\*.sbr wsutil\*.sbr
+wireshark.bsc: \
+ *.sbr \
+ codecs\*.sbr \
+ epan\*.sbr \
+ epan\crypt\*.sbr \
+ epan\dfilter\*.sbr \
+ epan\dissectors\*.sbr \
+ epan\ftypes\*.sbr \
+ epan\wslua\*.sbr \
+ ui\*.sbr \
+ ui\gtk\*.sbr \
+ plugins\asn1\*.sbr \
+ plugins\docsis\*.sbr \
+ plugins\ethercat\*.sbr \
+ plugins\giop\*.sbr \
+ plugins\gryphon\*.sbr \
+ plugins\irda\*.sbr \
+ plugins\m2m\*.sbr \
+ plugins\mate\*.sbr \
+ plugins\opcua\*.sbr \
+ plugins\profinet\*.sbr \
+ lugins\stats_tree\*.sbr \
+ plugins\unistim\*.sbr \
+ plugins\wimax\*.sbr \
+ plugins\wimaxasncp\*.sbr \
+ wiretap\*.sbr \
+ wsutil\*.sbr
$(BSCMAKE) @<<
/o $@ $?
<<
@@ -262,28 +282,28 @@ $(RESOURCES): image
wiretap\wiretap-$(WTAP_VERSION).lib: image $(ZLIB_DLL) wiretap
-wireshark.exe : $(LIBS_CHECK) config.h $(wireshark_OBJECTS) codecs epan gtk win32 image\wireshark.res wsutil\libwsutil.lib wiretap\wiretap-$(WTAP_VERSION).lib codecs\codecs.lib ui\gtk\libgtkui.lib ui\win32\libgtkui_win32.lib plugins
+wireshark.exe : $(LIBS_CHECK) config.h $(wireshark_OBJECTS) codecs epan gtk ui win32 image\wireshark.res wsutil\libwsutil.lib wiretap\wiretap-$(WTAP_VERSION).lib codecs\codecs.lib ui\libui.lib ui\gtk\libgtkui.lib ui\win32\libgtkui_win32.lib plugins
@echo Linking $@
$(LINK) @<<
- /OUT:wireshark.exe $(guiflags) $(guilibsdll) $(LDFLAGS) /LARGEADDRESSAWARE /SUBSYSTEM:windows $(wireshark_LIBS) $(GTK_LIBS) codecs\codecs.lib ui\gtk\libgtkui.lib ui\win32\libgtkui_win32.lib $(wireshark_OBJECTS) image\wireshark.res
+ /OUT:wireshark.exe $(guiflags) $(guilibsdll) $(LDFLAGS) /LARGEADDRESSAWARE /SUBSYSTEM:windows $(wireshark_LIBS) $(GTK_LIBS) codecs\codecs.lib ui\libui.lib ui\gtk\libgtkui.lib ui\win32\libgtkui_win32.lib $(wireshark_OBJECTS) image\wireshark.res
<<
!IFDEF MANIFEST_INFO_REQUIRED
mt.exe -nologo -manifest "wireshark.exe.manifest" -outputresource:wireshark.exe;1
!ENDIF
-tshark.exe : $(LIBS_CHECK) config.h $(tshark_OBJECTS) epan image\tshark.res wsutil\libwsutil.lib wiretap\wiretap-$(WTAP_VERSION).lib plugins
+tshark.exe : $(LIBS_CHECK) config.h $(tshark_OBJECTS) epan ui image\tshark.res wsutil\libwsutil.lib wiretap\wiretap-$(WTAP_VERSION).lib plugins
@echo Linking $@
$(LINK) @<<
- /OUT:tshark.exe $(conflags) $(conlibsdll) $(LDFLAGS) /LARGEADDRESSAWARE /SUBSYSTEM:console $(tshark_LIBS) $(tshark_OBJECTS) image\tshark.res
+ /OUT:tshark.exe $(conflags) $(conlibsdll) $(LDFLAGS) /LARGEADDRESSAWARE /SUBSYSTEM:console $(tshark_LIBS) $(tshark_OBJECTS) ui\libui.lib image\tshark.res
<<
!IFDEF MANIFEST_INFO_REQUIRED
mt.exe -nologo -manifest "tshark.exe.manifest" -outputresource:tshark.exe;1
!ENDIF
-rawshark.exe : $(LIBS_CHECK) config.h $(rawshark_OBJECTS) epan image\rawshark.res wsutil\libwsutil.lib wiretap\wiretap-$(WTAP_VERSION).lib plugins
+rawshark.exe : $(LIBS_CHECK) config.h $(rawshark_OBJECTS) epan ui image\rawshark.res wsutil\libwsutil.lib wiretap\wiretap-$(WTAP_VERSION).lib plugins
@echo Linking $@
$(LINK) @<<
- /OUT:rawshark.exe $(conflags) $(conlibsdll) $(LDFLAGS) /LARGEADDRESSAWARE /SUBSYSTEM:console $(rawshark_LIBS) $(rawshark_OBJECTS) image\rawshark.res
+ /OUT:rawshark.exe $(conflags) $(conlibsdll) $(LDFLAGS) /LARGEADDRESSAWARE /SUBSYSTEM:console $(rawshark_LIBS) $(rawshark_OBJECTS) ui\libui.lib image\rawshark.res
<<
!IFDEF MANIFEST_INFO_REQUIRED
mt.exe -nologo -manifest "rawshark.exe.manifest" -outputresource:rawshark.exe;1
@@ -331,10 +351,10 @@ text2pcap.exe : $(LIBS_CHECK) config.h text2pcap.obj text2pcap-scanner.obj wsuti
mt.exe -nologo -manifest "text2pcap.exe.manifest" -outputresource:text2pcap.exe;1
!ENDIF
-dftest.exe : $(dftest_OBJECTS) epan
+dftest.exe : $(dftest_OBJECTS) epan ui
@echo Linking $@
$(LINK) @<<
- /OUT:dftest.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console $(dftest_LIBS) $(dftest_OBJECTS)
+ /OUT:dftest.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console $(dftest_LIBS) ui\libui.lib $(dftest_OBJECTS)
<<
!IFDEF MANIFEST_INFO_REQUIRED
mt.exe -nologo -manifest "dftest.exe.manifest" -outputresource:dftest.exe;1
@@ -499,7 +519,9 @@ clean: clean-local
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
cd ../codecs
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
- cd ../ui/gtk
+ cd ../ui
+ $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
+ cd gtk
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
cd ../win32
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
@@ -545,7 +567,9 @@ distclean: distclean-local
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean
cd ../codecs
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean
- cd ../ui/gtk
+ cd ../ui
+ $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean
+ cd gtk
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean
cd ../win32
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean
@@ -584,7 +608,9 @@ maintainer-clean: maintainer-clean-local
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake maintainer-clean
cd ../codecs
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake maintainer-clean
- cd ../ui/gtk
+ cd ../ui
+ $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake maintainer-clean
+ cd gtk
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake maintainer-clean
cd ../win32
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake maintainer-clean
@@ -689,6 +715,11 @@ codecs::
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
cd ..
+ui:: help config.h svnversion.h doxygen
+ cd ui
+ $(MAKE) /$(MAKEFLAGS) /f Makefile.nmake libui.lib
+ cd ..
+
gtk:: help config.h svnversion.h doxygen
cd ui/gtk
$(MAKE) /$(MAKEFLAGS) /f Makefile.nmake libgtkui.lib
@@ -1160,7 +1191,9 @@ checkapi: checkapi_local
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake checkapi
cd ../codecs
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake checkapi
- cd ../ui/gtk
+ cd ../ui
+ $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake checkapi
+ cd gtk
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake checkapi
cd ../win32
$(MAKE) /$(MAKEFLAGS) -f Makefile.nmake checkapi
diff --git a/configure.in b/configure.in
index 9b64a49a24..93ef920301 100644
--- a/configure.in
+++ b/configure.in
@@ -860,7 +860,7 @@ else
#
wireshark_bin="wireshark\$(EXEEXT)"
wireshark_man="wireshark.1"
- wireshark_SUBDIRS="codecs ui/gtk"
+ wireshark_SUBDIRS="codecs ui ui/gtk"
# Don't use GLIB_CFLAGS
AM_PATH_GLIB_2_0(2.14.0, , AC_MSG_ERROR(GLib 2.14 or later distribution not found.), gthread gmodule)
@@ -1981,6 +1981,8 @@ AC_OUTPUT(
epan/wslua/Makefile
epan/wspython/Makefile
codecs/Makefile
+ ui/Makefile
+ ui/doxygen.cfg
ui/gtk/Makefile
ui/gtk/doxygen.cfg
help/Makefile
diff --git a/ui/Makefile.am b/ui/Makefile.am
new file mode 100644
index 0000000000..ebe8e0064c
--- /dev/null
+++ b/ui/Makefile.am
@@ -0,0 +1,113 @@
+# Makefile.am
+# Automake file for the common-to-all-toolkits user interface routines
+# for Wireshark
+#
+# $Id$
+#
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# 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.
+
+include Makefile.common
+include ../Makefile.am.inc
+
+if HAVE_WARNINGS_AS_ERRORS
+AM_CLEAN_CFLAGS = -Werror
+endif
+
+noinst_LIBRARIES = libui.a
+
+CLEANFILES = \
+ libui.a \
+ *~
+
+MAINTAINERCLEANFILES = \
+ $(GENERATED_FILES) \
+ Makefile.in
+
+RUNLEX=$(top_srcdir)/tools/runlex.sh
+
+text_import_scanner_lex.h: text_import_scanner.c
+
+wireshark-tap-register.c: $(WIRESHARK_TAP_SRC) $(top_srcdir)/tools/make-tapreg-dotc
+ @echo Making wireshark-tap-register.c
+ @$(top_srcdir)/tools/make-tapreg-dotc wireshark-tap-register.c $(srcdir) $(WIRESHARK_TAP_SRC)
+
+libui_a_SOURCES = \
+ $(WIRESHARK_UI_SRC) \
+ $(GENERATED_C_FILES) \
+ $(GENERATED_H_FILES) \
+ $(noinst_HEADERS) \
+ $(WIRESHARK_TAP_SRC)
+
+libui_a_CFLAGS = $(AM_CLEAN_CFLAGS)
+
+libui_a_DEPENDENCIES =
+
+# Common headers
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/wiretap $(LIBGCRYPT_CFLAGS) $(LIBGNUTLS_CFLAGS) $(PORTAUDIO_INCLUDES)
+
+
+doxygen:
+if HAVE_DOXYGEN
+ $(DOXYGEN) doxygen.cfg
+endif # HAVE_DOXYGEN
+
+checkapi: checkapi-base checkapi-todo
+
+checkapi-base:
+ $(PERL) ../tools/checkAPIs.pl -g deprecated-gtk \
+ $(WIRESHARK_UI_SRC) \
+ $(WIRESHARK_TAP_SRC) \
+ capture_if_details_dlg_win32.c
+
+checkapi-todo:
+ $(PERL) ../tools/checkAPIs.pl -M -g deprecated-gtk-todo \
+ $(WIRESHARK_UI_SRC) \
+ $(WIRESHARK_TAP_SRC) \
+ capture_if_details_dlg_win32.c
+
+expert_indicators.h:
+ echo "/* This file was automatically generated. DO NOT EDIT. */" > $@
+ echo >> $@
+ for elevel in chat error none note warn ; do \
+ gdk-pixbuf-csource --raw --name=expert_$${elevel}_pb_data ../image/expert_$${elevel}.png >> $@ ;\
+ done
+
+network_icons.h:
+ echo "/* This file was automatically generated. DO NOT EDIT. */" > $@
+ echo >> $@
+ for icon in bluetooth usb wired wireless ; do \
+ gdk-pixbuf-csource --raw --name=network_$${icon}_pb_data ../image/toolbar/network_$${icon}_16.png >> $@ ;\
+ done
+
+remote_icons.h:
+ echo "/* This file was automatically generated. DO NOT EDIT. */" > $@
+ echo >> $@
+ for icon in arrow globe sat ; do \
+ gdk-pixbuf-csource --raw --name=remote_$${icon}_pb_data ../image/toolbar/remote_$${icon}_16.png >> $@ ;\
+ done
+
+pipe_icon.h:
+ echo "/* This file was automatically generated. DO NOT EDIT. */" > $@
+ echo >> $@
+ gdk-pixbuf-csource --raw --name=pipe_pb_data ../image/toolbar/pipe_16.png >> $@
+
+EXTRA_DIST = \
+ $(GENERATOR_FILES) \
+ Makefile.common \
+ Makefile.nmake
diff --git a/ui/Makefile.common b/ui/Makefile.common
new file mode 100644
index 0000000000..738612656e
--- /dev/null
+++ b/ui/Makefile.common
@@ -0,0 +1,58 @@
+# Makefile.common
+# Contains the stuff from Makefile.am and Makefile.nmake that is
+# a) common to both files and
+# b) portable between both files
+#
+# $Id$
+#
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# 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.
+
+# Generated header files that we want in the distribution.
+GENERATED_HEADER_FILES =
+
+# Generated C source files that we want in the distribution.
+GENERATED_C_FILES =
+
+GENERATED_H_FILES =
+
+DIRTY_GENERATED_C_FILES =
+
+# All the generated files we want in the distribution.
+GENERATED_FILES = \
+ $(GENERATED_HEADER_FILES) \
+ $(GENERATED_C_FILES) \
+ $(GENERATED_H_FILES) \
+ $(DIRTY_GENERATED_C_FILES)
+
+# Files that generate compileable files
+GENERATOR_FILES =
+
+WIRESHARK_UI_SRC = \
+ util.c
+
+noinst_HEADERS = \
+ alert_box.h \
+ last_open_dir.h \
+ main_statusbar.h \
+ progress_dlg.h \
+ recent.h \
+ recent_utils.h \
+ simple_dialog.h \
+ ui_util.h \
+ util.h
diff --git a/ui/Makefile.nmake b/ui/Makefile.nmake
new file mode 100644
index 0000000000..d699c67461
--- /dev/null
+++ b/ui/Makefile.nmake
@@ -0,0 +1,80 @@
+## Makefile for building wireshark.exe with Microsoft C and nmake
+## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
+#
+# $Id$
+
+include ..\config.nmake
+include ..\Makefile.nmake.inc
+
+############### no need to modify below this line #########
+
+# We use GENERATED_CFLAGS to get around flex's non-LLP64-compliant output
+GENERATED_CFLAGS=\
+ $(STANDARD_CFLAGS) \
+ -D_NEED_VAR_IMPORT_ /Zm800 \
+ /I.. /I../wiretap $(GTK_CFLAGS) $(GNUTLS_CFLAGS) \
+ /I$(PCAP_DIR)\WPCAP\LIBPCAP /I$(PCAP_DIR)\WPCAP\LIBPCAP\bpf \
+ /I$(PCAP_DIR)\WPCAP\LIBPCAP\lbl \
+ /I$(PCAP_DIR)\include $(AIRPCAP_CFLAGS) \
+ $(PORTAUDIO_CFLAGS) $(GEOIP_CFLAGS) \
+ $(HHC_CFLAGS)
+
+CFLAGS=$(WARNINGS_ARE_ERRORS) $(GENERATED_CFLAGS)
+
+.c.obj::
+ $(CC) $(CVARSDLL) $(CFLAGS) $(WSUG_CFLAGS) -Fd.\ -c $<
+
+include Makefile.common
+
+
+# if you add files here, be sure to include them also in Makefile.am EXTRA_DIST
+WIRESHARK_UI_SRC = \
+ $(WIRESHARK_UI_SRC) \
+ $(GENERATED_C_FILES)
+
+WIRESHARK_UI_OBJECTS = \
+ $(WIRESHARK_UI_SRC:.c=.obj) \
+ $(DIRTY_GENERATED_C_FILES:.c=.obj)
+
+libui.lib : ..\config.h $(WIRESHARK_UI_OBJECTS)
+ link /lib /out:libui.lib $(WIRESHARK_UI_OBJECTS)
+
+clean:
+ rm -f $(WIRESHARK_UI_OBJECTS) $(WIRESHARK_TAP_OBJECTS) libui.lib *.pdb doxygen.cfg html/*.* wireshark-tap-register-cache.pkl
+ if exist html rmdir html
+
+distclean: clean
+
+maintainer-clean: distclean
+ rm -f $(GENERATED_FILES)
+
+# convert doxygen.cfg.in to doxygen.cfg with stamped version info
+doxygen.cfg: ..\config.nmake doxygen.cfg.in
+!IFDEF DOXYGEN
+ sed -e s/@VERSION@/$(VERSION)/ \
+ < doxygen.cfg.in > $@
+!ENDIF
+
+doxygen-run:
+!IFDEF DOXYGEN
+ $(DOXYGEN) doxygen.cfg
+!ENDIF
+
+# MS html help compiler hhc returns 1 on success, but as nmake expects 0 it would stop here.
+# the prepended -1 will raise the accepted error levels of nmake, so it will continue
+doxygen.chm:
+!IFDEF HHC
+ -1 $(HHC) html\index.hhp
+!ENDIF
+
+doxygen: doxygen.cfg doxygen-run doxygen.chm
+
+checkapi: checkapi-base checkapi-todo
+
+checkapi-base:
+ $(PERL) ../tools/checkAPIs.pl -g deprecated-gtk \
+ $(WIRESHARK_UI_SRC)
+
+checkapi-todo:
+ $(PERL) ../tools/checkAPIs.pl -M -g deprecated-gtk-todo \
+ $(WIRESHARK_UI_SRC)
diff --git a/ui/doxygen.cfg.in b/ui/doxygen.cfg.in
new file mode 100644
index 0000000000..a13a95f983
--- /dev/null
+++ b/ui/doxygen.cfg.in
@@ -0,0 +1,66 @@
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = Wireshark-UI
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER = @VERSION@
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY =
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = . alert_box.h last_open_dir.h main_statusbar.h progress_dlg.h recent.h recent_utils.h simple_dialog.h ui_util.h util.h
+
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
+# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc
+
+FILE_PATTERNS = *.h
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+
+EXCLUDE_PATTERNS =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE = wireshark-ui.chm
+
+@INCLUDE = ../doxygen_global.cfg