modify the tool tip "Nodes in the diagram are identified with network source and...
[obnox/wireshark/wip.git] / config.nmake
index 618c31674c3b9cde0fac8c694bb09380235cb198..1d6a57b6b856844e1f8be2a3f3dd4e75d215c2e6 100644 (file)
@@ -1,6 +1,11 @@
-# $Id: config.nmake,v 1.89 2004/05/23 22:21:30 guy Exp $
+# $Id$
+
+# Some more informations about the settings in this file, can be found 
+# in the file README.win32.
+
+# The current Ethereal version
+VERSION=0.10.13
 
-VERSION=0.10.4
 #
 # The RC_VERSION should be comma-separated, not dot-separated, 
 # as per Graham Bloice's message in
@@ -12,18 +17,30 @@ VERSION=0.10.4
 # number to be correctly displayed in the explorer properties dialog
 # for the executables, and XP's tooltip, rather than 0.0.0.0."
 #
-RC_VERSION=0,10,4
-WTAP_VERSION=0.1
+RC_VERSION=0,10,13
+
+# The version of the wiretap library
+WTAP_VERSION=0.3
+RC_WTAP_VERSION=0,3
 
 #
 # If you're building with WinPcap 2.3, set WINPCAP_VERSION to 2.3; if
 # you're building with WinPcap 3.0, set it to 3.0; if you're building
-# with WinPcap 3.1 alpha, set it to 3.1.
+# with WinPcap 3.1, set it to 3.1.
 #
 # If you're not building with WinPcap at all, don't set it (comment
 # out or remove the line that sets it).
 #
-WINPCAP_VERSION=3.0
+WINPCAP_VERSION=3.1
+
+# 
+# Directory, where your User's Guide reside, relative to the source dir.
+# (currently unused)
+#
+# If you don't have the User's Guide, comment this line out, so that 
+# ETHEREAL_EUG_DIR isn't defined.
+#
+#ETHEREAL_EUG_DIR=docbook/eug_html_chunked
 
 # 
 # Base directory, where your libraries reside, which needs to be 
@@ -54,14 +71,22 @@ GLIB_DIR=$(ETHEREAL_LIBS)\glib
 # reside.
 #
 GTK1_DIR=$(ETHEREAL_LIBS)\gtk+
-#GTK2_DIR=$(ETHEREAL_LIBS)\gtk2
+GTK2_DIR=$(ETHEREAL_LIBS)\gtk2
 
 # Declare the version of your gtk2 and pango. (MAJOR + MINOR Version number
 # but without MICRO version number) 
-# These macros are used by the nsis installer script.
+# These macros are used by the nsis installer script and by the setup target.
 #
-GTK2_INST_VERSION=2.2
-PANGO_INST_VERSION=1.2
+#GTK2_INST_VERSION=2.2
+#PANGO_INST_VERSION=1.2
+#GTK2_INST_VERSION=2.4
+#PANGO_INST_VERSION=1.4
+# GTK 2.6 is the mainline since Ethereal 0.10.14
+GTK2_INST_VERSION=2.6
+PANGO_INST_VERSION=1.8
+# Support for GTK 2.8 is currently experimental ...
+#GTK2_INST_VERSION=2.8
+#PANGO_INST_VERSION=1.10
 
 #
 # If you have GTK-Wimp, set this to the pathname of the directory in
@@ -70,7 +95,11 @@ PANGO_INST_VERSION=1.2
 # If you don't have GTK-Wimp, comment this line out, so that GTK-Wimp isn't
 # defined.
 #
-#GTK_WIMP_DIR=$(ETHEREAL_LIBS)\gtk-wimp
+# Please note: GTK 2.8 (and later?) includes GTK-Wimp
+# (in this case these GTK-Wimp related settings will have no effect)
+#
+GTK_WIMP_DIR=$(ETHEREAL_LIBS)\gtk-wimp
+GTK_THEME_DIR=$(GTK_WIMP_DIR)\Theme\gtk-2.0
 
 #
 # If you have Zlib, set this to the pathname of the directory in
@@ -79,7 +108,7 @@ PANGO_INST_VERSION=1.2
 # If you don't have Zlib, comment this line out, so that Zlib isn't
 # defined.
 #
-ZLIB_DIR=$(ETHEREAL_LIBS)\zlib121-dll
+ZLIB_DIR=$(ETHEREAL_LIBS)\zlib123-dll
 
 #
 # Set PCAP_DIR to the pathname of the directory in which the WinPcap
@@ -91,7 +120,7 @@ PCAP_DIR=$(ETHEREAL_LIBS)\WPdpack
 # Set NET_SNMP_DIR to the pathname of the directory in which the
 # Net-SNMP include files and library resides.
 #
-NET_SNMP_DIR=$(ETHEREAL_LIBS)\net-snmp-5.1
+NET_SNMP_DIR=$(ETHEREAL_LIBS)\net-snmp-5.2.1.2
 
 #
 # If you have GNU ADNS, set this to the pathname of the directory in
@@ -100,7 +129,7 @@ NET_SNMP_DIR=$(ETHEREAL_LIBS)\net-snmp-5.1
 # If you don't have GNU ADNS, comment this line out, so that ADNS_DIR
 # isn't defined.
 #
-ADNS_DIR=$(ETHEREAL_LIBS)\adns-1.0-win32-03
+ADNS_DIR=$(ETHEREAL_LIBS)\adns-1.0-win32-05
 
 #
 # If you have the PCRE (Perl Compatible Regular Expressions) library,
@@ -110,7 +139,16 @@ ADNS_DIR=$(ETHEREAL_LIBS)\adns-1.0-win32-03
 # If you don't have PCRE, comment this line out, so that PCRE_DIR
 # isn't defined.
 #
-PCRE_DIR=$(ETHEREAL_LIBS)\pcre-4.4
+PCRE_DIR=$(ETHEREAL_LIBS)\pcre-6.4
+
+#
+# If you have the Nettle encryption library, set this to the pathname
+# of the directory in which the nettle package has been extracted.
+#
+# If you don't have Nettle, comment this line out, so that NETTLE_DIR
+# isn't defined.
+#
+# NETTLE_DIR=$(ETHEREAL_LIBS)\nettle-1.10
 
 #
 # Set ICONV_DIR to the pathname of the directory in which the
@@ -130,28 +168,46 @@ GETTEXT_DIR=$(ETHEREAL_LIBS)\gettext-runtime-0.13.1
 LOCAL_CFLAGS=/Zi /W3
 
 # Linker flags
-# /DEBUG generate debug info
+# /DEBUG  generate debug info
+# /PROFILE generate map file(s) for profiling
 LOCAL_LDFLAGS=/DEBUG
 
 # Set PDB_FILE according to your VC++ version 
 PDB_FILE=vc*.pdb
 
-# Set path if you need to find some binary
-PATH=c:\cygwin\bin;c:\python23;$(PATH)
+# Set up the path to the cygwin binaries
+CYGWIN_PATH=c:\cygwin\bin
+
+# Set up the path to some required DLLs
+DLL_PATH=$(GLIB_DIR)\bin;$(GETTEXT_DIR)\bin;$(ICONV_DIR)\bin
 
-# Set path to some required DLLs
-PATH=$(GLIB_DIR)\bin;$(GETTEXT_DIR)\bin;$(ICONV_DIR)\bin;$(PATH)
 
+# Set the following commands to find the tools.
+# The easiest way is to use the corresponding packages from cygwin.
+
+# command for a shell (typically cygwin's bash package)
 SH=bash
+
+# command for perl (typically cygwin's perl package)
 PERL=perl
+
+# command for pod2man and pod2html (part of the perl package)
 POD2MAN=$(SH) pod2man
 POD2HTML=$(SH) pod2html
-PYTHON="C:/python23/python.exe"
+
+# command for python (native windows version)
+#PYTHON="C:/python23/python.exe"
+# add native python to the path (not needed if cygwin's python is used)
+#PATH=c:\python23;$(PATH)
+
+# command for python (typically cygwin's python package)
+PYTHON=env python
+
+# command for lex/flexx (typically cygwin's flex package)
 LEX=flex
-YACC=bison
 
-# Set YACC_OPTS if cygnus bison can't find template file.
-#YACC_OPTS=-S t:\w32-ix86\cygnus\cygwin-b20\share\bison.simple 
+# command for yacc/bison (typically cygwin's bison package)
+YACC=bison
 
 # To build the installer
 MAKENSIS="C:/program files/nsis/makensis.exe"
@@ -165,16 +221,48 @@ MAKENSIS="C:/program files/nsis/makensis.exe"
 #
 MAKENSIS_MODERN_UI=USE
 
-# To build the developers documentation with doxygen (www.doxygen.org).
+# To build the developers documentation with doxygen and dot.
 # Currently experimental only.
+# You will have to download and install:
 #
-# If you don't want the developers documentation (or don't have doxygen),
+# Doxygen from: www.doxygen.org
+# Graphviz from: http://www.research.att.com/sw/tools/graphviz/
+#
+# If you don't want the developers documentation (or don't have the tools),
 # comment this line out, so that DOXYGEN isn't defined.
 #
 #DOXYGEN="C:/program files/doxygen/bin/doxygen.exe"
 
-# If you wan't to build a libethereal.dll, you should comment out the following line
-#ENABLE_LIBETHEREAL=USE
+# To build compressed html help format .chm from doxygen output.
+# Currently experimental only.
+# You will have to download and install the html help compiler from:
+#
+# http://msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html
+# /hwMicrosoftHTMLHelpDownloads.asp 
+#
+# Then point HHC to the html help compiler exe.
+#
+# The .chm file(s) are not generated by default. You will have to generate the 
+# file(s) by calling the Makefile.nmake's target doxygen.chm in the submodules (epan/gk/...).
+#
+#HHC="C:/Program Files/HTML Help Workshop/hhc.exe"
+
+# According to http://bugs.ethereal.com/bugzilla/show_bug.cgi?id=403
+# XCOPY under Windows NT doesn't support the "/Y" flag.  This works
+# around that bug.
+# XXX - This apparently doesn't work for some versions of nmake:
+# http://support.microsoft.com/default.aspx?scid=kb;en-us;86814
+# It looks like we'll have to call "set copycmd=/y" before we run xcopy.
+COPYCMD=/y
+
+# If you don't want to build libethereal.dll, you should comment out the
+# following line. (Note: for plugin support this option must stay activated)
+ENABLE_LIBETHEREAL=USE
+
+!IFDEF ENABLE_LIBETHEREAL
+# Uncomment next line to link plugins with the import library of libethereal.dll 
+LINK_PLUGINS_WITH_LIBETHEREAL=USE
+!ENDIF
 
 #
 # You should not have to change anything below this comment.
@@ -204,6 +292,7 @@ GTK1_LIBS=$(GTK1_DIR)\lib\gtk.lib \
 GTK2_CFLAGS=$(GLIB_CFLAGS) /I$(GTK2_DIR)\include\gtk-2.0 \
        /I$(GTK2_DIR)\lib\gtk-2.0\include \
        /I$(GTK2_DIR)\include\atk-1.0 \
+       /I$(GTK2_DIR)\include\cairo \
        /I$(GTK2_DIR)\include\pango-1.0
 GTK2_LIBS=$(GTK2_DIR)\lib\gtk-win32-2.0.lib \
        $(GTK2_DIR)\lib\gdk-win32-2.0.lib \
@@ -211,24 +300,56 @@ GTK2_LIBS=$(GTK2_DIR)\lib\gtk-win32-2.0.lib \
        $(GTK2_DIR)\lib\pango-1.0.lib \
        $(GLIB_LIBS)
 
+# the lib dir of GTK2.6 didn't changed since 2.4.0
+!IF "$(GTK2_INST_VERSION)" == "2.8"
+GTK2_LIB_DIR=2.4.0
+NEED_LIBPNG_DLL=USE
+NEED_CAIRO_DLL=USE
+GTK_WIMP_DIR=$(GTK2_DIR)\lib\gtk-2.0\$(GTK2_LIB_DIR)\engines
+GTK_THEME_DIR=$(GTK2_DIR)\share\themes\MS-Windows\gtk-2.0
+!ELSEIF "$(GTK2_INST_VERSION)" == "2.6"
+GTK2_LIB_DIR=2.4.0
+!ELSEIF "$(GTK2_INST_VERSION)" == "2.4"
+GTK2_LIB_DIR=2.4.0
+!ELSEIF "$(GTK2_INST_VERSION)" == "2.2"
+GTK2_LIB_DIR=2.2.0
+!ENDIF
+
+# the lib dir of PANGO1.8 didn't changed since 1.4.0
+!IF "$(PANGO_INST_VERSION)" == "1.10"
+PANGO_LIB_DIR=1.4.0
+!ELSEIF "$(PANGO_INST_VERSION)" == "1.8"
+PANGO_LIB_DIR=1.4.0
+!ELSEIF "$(PANGO_INST_VERSION)" == "1.4"
+PANGO_LIB_DIR=1.4.0
+!ELSEIF "$(PANGO_INST_VERSION)" == "1.2"
+PANGO_LIB_DIR=1.2.0
+!ENDIF
+
+
 !IFDEF WINPCAP_VERSION
 # Nmake uses carets to escape special characters
 WINPCAP_CONFIG=^#define HAVE_LIBPCAP 1
 !IF "$(WINPCAP_VERSION)" == "3.0" || "$(WINPCAP_VERSION)" == "3.1"
 PCAP_FINDALLDEVS_CONFIG=^#define HAVE_PCAP_FINDALLDEVS 1
+PCAP_DATALINK_NAME_TO_VAL_CONFIG=^#define HAVE_PCAP_DATALINK_NAME_TO_VAL 1
+PCAP_DATALINK_VAL_TO_NAME_CONFIG=^#define HAVE_PCAP_DATALINK_VAL_TO_NAME 1
 WPCAP_CONSTIFIED_CONFIG=^#define WPCAP_CONSTIFIED 1
 !ELSE
 PCAP_FINDALLDEVS_CONFIG=
+PCAP_DATALINK_VAL_TO_NAME_CONFIG=
 WPCAP_CONSTIFIED=
 !ENDIF
 !ELSE
 WINPCAP_CONFIG=
 PCAP_FINDALLDEVS_CONFIG=
+PCAP_DATALINK_NAME_TO_VAL_CONFIG=
+PCAP_DATALINK_VAL_TO_NAME_CONFIG=
 WPCAP_CONSTIFIED=
 !ENDIF
 
 !IFDEF ZLIB_DIR
-PATH=$(ZLIB_DIR);$(PATH)
+ZLIB_PATH=$(ZLIB_DIR)
 ZLIB_CFLAGS=/I$(ZLIB_DIR)\include
 ZLIB_LIBS=$(ZLIB_DIR)\lib\zdll.lib
 # Nmake uses carets to escape special characters
@@ -240,7 +361,7 @@ ZLIB_CONFIG=
 !ENDIF
 
 !IFDEF ADNS_DIR
-PATH=$(ADNS_DIR)\adns_win32\lib;$(PATH)
+ADNS_PATH=$(ADNS_DIR)\adns_win32\lib
 ADNS_CFLAGS=/I$(ADNS_DIR)\src /I$(ADNS_DIR)\adns_win32
 ADNS_LIBS=$(ADNS_DIR)\adns_win32\lib\adns_dll.lib
 # Nmake uses carets to escape special characters
@@ -252,7 +373,7 @@ ADNS_CONFIG=
 !ENDIF
 
 !IFDEF PCRE_DIR
-PATH=$(PCRE_DIR)\bin;$(PATH)
+PCRE_PATH=$(PCRE_DIR)\bin
 PCRE_CFLAGS=/I$(PCRE_DIR)\include
 PCRE_LIBS=$(PCRE_DIR)\lib\pcre.lib
 # Nmake uses carets to escape special characters
@@ -263,8 +384,22 @@ PCRE_LIBS=
 PCRE_CONFIG=
 !ENDIF
 
+!IFDEF NETTLE_DIR
+NETTLE_CFLAGS=/I$(NETTLE_DIR)
+NETTLE_LIBS=$(NETTLE_DIR)\libnettle.lib
+# Nmake uses carets to escape special characters
+NETTLE_CONFIG=^#define HAVE_LIBNETTLE 1
+!else
+NETTLE_CFLAGS=
+NETTLE_LIBS=
+NETTLE_CONFIG=
+!ENDIF
+
 !IFDEF ENABLE_LIBETHEREAL
 LIBETHEREAL_CONFIG=^#define HAVE_LIBETHEREALDLL 1
 !ELSE
 LIBETHEREAL_CONFIG=
 !ENDIF
+
+# Construct the path
+PATH=$(PATH);$(CYGWIN_PATH);$(DLL_PATH);$(ZLIB_PATH);$(ADNS_PATH)