Add a Makefile.nmake target called "setup" that uses the script

tools\win32-setup.sh to

  - Check for applications required to build Ethereal
  - Download and unpack required packages into $ETHEREAL_LIBS

Update ADNS to the latest version.

Make Python 2.3 the default.

svn path=/trunk/; revision=10567
This commit is contained in:
Gerald Combs 2004-04-08 20:36:09 +00:00
parent 9ebddd2d71
commit a011fb14e2
4 changed files with 122 additions and 8 deletions

View File

@ -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 <win32.mak>
@ -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.

View File

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

View File

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

61
tools/win32-setup.sh Normal file
View File

@ -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 <appname> [<appname>] ..."
echo " $0 --download <destination> <subdirectory> <package>"
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