diff --git a/Makefile.nmake b/Makefile.nmake index aac6423db7..fa076f5787 100644 --- a/Makefile.nmake +++ b/Makefile.nmake @@ -1,7 +1,7 @@ ## Makefile for building ethereal.exe with Microsoft C and nmake ## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake # -# $Id: Makefile.nmake,v 1.410 2004/03/22 20:35:07 gerald Exp $ +# $Id: Makefile.nmake,v 1.411 2004/04/08 20:36:09 gerald Exp $ include config.nmake include @@ -350,3 +350,54 @@ help:: cd help $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake cd .. + +REQUIRED_APPS=\ + bison \ + flex \ + grep \ + perl \ + python \ + sed \ + unzip \ + wget + +setup: + @$(SH) tools\win32-setup.sh --appverify $(REQUIRED_APPS) + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + glib glib-2.2.3-20040116.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + glib glib-dev-2.2.3-20040116.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk+ gtk+-1.3.0-20030717.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk+ gtk+-dev-1.3.0-20030115.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + libiconv-1.9.1.bin.woe32 libiconv-1.9.1.bin.woe32.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gettext-runtime-0.13.1 gettext-runtime-0.13.1.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + . net-snmp-5.1.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + . wpdpack_3_0.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + . adns-1.0-win32-03.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + . pcre-4.4.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + zlib121-dll zlib121-dll.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk2 gtk2/gtk+-2.2.4-20040124.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk2 gtk2/gtk+-dev-2.2.4-20040124.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk2 gtk2/pango-1.2.5-20040124.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk2 gtk2/pango-dev-1.2.5-20040124.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk2 gtk2/atk-1.4.0.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk2 gtk2/atk-dev-1.4.0.zip + @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \ + gtk-wimp gtk2/gtk-wimp-0.5.3-bin.zip + @echo "" + @echo Ethereal is ready to build. diff --git a/README.win32 b/README.win32 index 730039b61f..bbf5c1c173 100644 --- a/README.win32 +++ b/README.win32 @@ -1,4 +1,4 @@ -$Id: README.win32,v 1.65 2004/02/24 19:42:22 ulfl Exp $ +$Id: README.win32,v 1.66 2004/04/08 20:36:09 gerald Exp $ Installing Ethereal, Tethereal, and Editcap on Win32 ==================================================== @@ -169,8 +169,10 @@ The ADNS package is also available at its homepage: By default, the build process looks for these packages in C:\ethereal-win32-libs. You can place them in a different directory, but -you must update config.nmake accordingly. The default location for each -package is as follows: +you must update the ETHEREAL_LIBS variable in config.nmake accordingly. +The default location for each package is listed below. If you're running +MSVC++, you cat run "nmake -f makefile.nmake setup" to download each +file and unpack it in the $ETHEREAL_LIBS directory. Package Default Location ------- ---------------- diff --git a/config.nmake b/config.nmake index b120766a5d..60f1ecf463 100644 --- a/config.nmake +++ b/config.nmake @@ -1,4 +1,4 @@ -# $Id: config.nmake,v 1.84 2004/03/22 17:03:29 gerald Exp $ +# $Id: config.nmake,v 1.85 2004/04/08 20:36:09 gerald Exp $ VERSION=0.10.3 # @@ -93,7 +93,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-01 +ADNS_DIR=$(ETHEREAL_LIBS)\adns-1.0-win32-03 # # If you have the PCRE (Perl Compatible Regular Expressions) library, @@ -130,7 +130,7 @@ LOCAL_LDFLAGS=/DEBUG PDB_FILE=vc*.pdb # Set path if you need to find some binary -PATH=c:\cygwin\bin;c:\python22;$(PATH) +PATH=c:\cygwin\bin;c:\python23;$(PATH) # Set path to some required DLLs PATH=.\wiretap;$(GLIB_DIR)\bin;$(GETTEXT_DIR)\bin;$(ICONV_DIR)\bin;$(PATH) @@ -139,7 +139,7 @@ SH=bash PERL=perl POD2MAN=$(SH) pod2man POD2HTML=$(SH) pod2html -PYTHON="C:/python22/python.exe" +PYTHON="C:/python23/python.exe" LEX=flex YACC=bison diff --git a/tools/win32-setup.sh b/tools/win32-setup.sh new file mode 100644 index 0000000000..158e622eca --- /dev/null +++ b/tools/win32-setup.sh @@ -0,0 +1,61 @@ +#!/bin/sh + +DOWNLOAD_PREFIX="http://www.ethereal.com/distribution/win32/development" + +err_exit () { + echo "ERROR: $1" + echo "" + exit 1 +} + +usage () { + echo "Usage:" + echo " $0 --appverify [] ..." + echo " $0 --download " + echo "" + exit 1 +} + + +case "$1" in +'--appverify') + shift + if [ "$*" == "" ] ; then + usage + fi + echo "Checking for required applications:" + for APP in $* ; do + APP_LOC=`which $APP 2> /dev/null` + if [ "$APP_LOC" = "" ] ; then + err_exit "Can't find $APP" + fi + echo " $APP: $APP_LOC $res" + done + ;; +'--download') + if [ "$2" == "" -o "$3" == "" -o "$4" == "" ] ; then + usage + fi + DEST_PATH=`cygpath --unix "$2"` + DEST_SUBDIR=$3 + PACKAGE_PATH=$4 + PACKAGE=`basename "$PACKAGE_PATH"` + echo "Downloading $4 into $DEST_PATH, installing into $3" + if [ ! -d "$DEST_PATH/$DEST_SUBDIR" ] ; then + mkdir -p "$DEST_PATH/$DEST_SUBDIR" || \ + err_exit "Can't create $DEST_PATH/$DEST_SUBDIR" + fi + cd "$DEST_PATH" || err_exit "Can't find $DEST_PATH" + wget -nc "$DOWNLOAD_PREFIX/$PACKAGE_PATH" || \ + err_exit "Can't download $DOWNLOAD_PREFIX/$PACKAGE_PATH" + cd $DEST_SUBDIR + echo "Extracting $DEST_PATH/$PACKAGE into $DEST_PATH/$DEST_SUBDIR" + unzip -nq "$DEST_PATH/$PACKAGE" || + err_exit "Couldn't unpack $DEST_PATH/$PACKAGE" + ;; +'*') + usage + ;; +esac + +exit 0