Ethereal-dev: [Ethereal-dev] Win32 build patches
Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.
From: Hamish Moffatt <hamish@xxxxxxxxxxxx>
Date: Fri, 4 Jan 2002 17:36:15 +1100
Here's a couple of patches to ease building on Win32. Changes are: 1. The clean targets in various makefiles missed a few files. 2. For building the doc directory, I couldn't find man2html. Looks like this step was done on UNIX in 0.8.20. There's a comment in the existing makefile suggesting this be changed to use pod2html. Did that, works fine. Added POD2HTML variable in config.nmake, similar to POD2MAN. (You don't want the rest of my changes to that file though.) 3. ethereal.nsi.in isn't compatible with recent versions of NSIS, as the way the uninstaller is generated has changed. Fixed. It builds well now. It's still a three step process though: build in top level directory; build in doc subdirectory; build in packaging\nsis directory. Some extra rules in the packaging\nsis\makefile.nmake would help with that, I'll work on that next. To build you need VC++, all the GTK/GDK development libraries, Perl, Python, Cygwin, and NSIS installed. Nice and simple. :-) regards, Hamish -- Hamish Moffatt VK3SB <hamish@xxxxxxxxxx> <hamish@xxxxxxxxxxxx>
diff -ur ethereal-0.9.0.orig/Makefile.nmake ethereal-0.9.0/Makefile.nmake --- ethereal-0.9.0.orig/Makefile.nmake Tue Dec 25 02:31:28 2001 +++ ethereal-0.9.0/Makefile.nmake Fri Jan 04 12:32:42 2002 @@ -407,7 +407,8 @@ rm -f $(ethereal_OBJECTS) $(EXTRA_OBJECTS) $(EXECUTABLES) $(PDB_FILE) \ tethereal.obj editcap.obj mergecap.obj text2pcap.obj \ text2pcap-scanner.obj text2pcap-scanner.c register.c \ - rdps.obj rdps.pdb config.h ps.c packet-ncp2222.c register.c + rdps.obj rdps.pdb config.h ps.c packet-ncp2222.c register.c \ + rdps.exe rdps.ilk $(RESOURCES) cd wiretap $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean cd ../gtk diff -ur ethereal-0.9.0.orig/config.nmake ethereal-0.9.0/config.nmake --- ethereal-0.9.0.orig/config.nmake Mon Dec 24 07:11:24 2001 +++ ethereal-0.9.0/config.nmake Fri Jan 04 12:13:48 2002 @@ -7,23 +7,24 @@ GTK_VERSION=1.3 GLIB_VERSION=1.3 -GLIB_DIR=F:\gram\win32tools\src\glib -GTK_DIR=F:\gram\win32tools\src\gtk+ -ZLIB_DIR=F:\gram\win32tools\src\zlib-1.1.3 -PCAP_DIR=F:\gram\win32tools\WPdpack +GLIB_DIR=C:\ethereal-win32-libs\glib +GTK_DIR=C:\ethereal-win32-libs\gtk+ +ZLIB_DIR=C:\ethereal-win32-libs\zlib-1.1.3 +PCAP_DIR=C:\ethereal-win32-libs\WPdpack LOCAL_CFLAGS=-Zi LOCAL_LDFLAGS=/DEBUG # Set PDB_FILE according to your VC++ version -PDB_FILE=vc60.pdb +PDB_FILE=vc50.pdb # Set path if you need to find some binary -#PATH=t:\w32-ix86\cygnus\cygwin-b20\H-i586-cygwin32\bin;$(PATH) +PATH=c:\cygnus\cygwin-b20\H-i586-cygwin32\bin;c:\python22;c:\ethereal-0.9.0\wiretap;c:\program files\gnu;$(PATH) PERL=perl -POD2MAN=perl /usr/bin/pod2man -PYTHON="C:/python21/python.exe" +POD2MAN=pod2man +POD2HTML=pod2html +PYTHON="C:/python22/python.exe" LEX=flex YACC=bison diff -ur ethereal-0.9.0.orig/doc/Makefile.nmake ethereal-0.9.0/doc/Makefile.nmake --- ethereal-0.9.0.orig/doc/Makefile.nmake Sun Sep 16 23:41:04 2001 +++ ethereal-0.9.0/doc/Makefile.nmake Fri Jan 04 12:25:30 2002 @@ -29,33 +29,18 @@ doc: ethereal.html tethereal.html editcap.html idl2eth.html \ mergecap.html text2pcap.html -# -# XXX - can't we just use "pod2html" here? -# -ethereal.html : ethereal.1 - man2html ethereal.1 > $@ - -tethereal.html : tethereal.1 - man2html tethereal.1 > $@ - -editcap.html : editcap.1 - man2html editcap.1 > $@ - -idl2eth.html : idl2eth.1 - man2html idl2eth.1 > $@ - -mergecap.html : mergecap.1 - man2html mergecap.1 > $@ - -text2pcap.html : text2pcap.1 - man2html text2pcap.1 > $@ - ethereal.1: ethereal.pod ../config.h $(POD2MAN) ethereal.pod \ --center="The Ethereal Network Analyzer" \ --release=$(VERSION) \ > ethereal.1 +ethereal.html: ethereal.pod ../config.h + $(POD2HTML) ethereal.pod \ + --title="The Ethereal Network Analyzer $(VERSION)" \ + --noindex \ + > ethereal.html + ethereal.pod: ethereal.pod.template ../tethereal.exe ..\\tethereal.exe -G | $(PERL) dfilter2pod.pl ethereal.pod.template > ethereal.pod @@ -65,6 +50,12 @@ --release=$(VERSION) \ > tethereal.1 +tethereal.html: tethereal.pod ../config.h + $(POD2HTML) tethereal.pod \ + --title="The Ethereal Network Analyzer $(VERSION)" \ + --noindex \ + > tethereal.html + tethereal.pod: tethereal.pod.template ../tethereal.exe ..\\tethereal.exe -G | $(PERL) dfilter2pod.pl tethereal.pod.template > tethereal.pod @@ -74,24 +65,48 @@ --release=$(VERSION) \ > editcap.1 +editcap.html: editcap.pod ../config.h + $(POD2HTML) editcap.pod \ + --title="The Ethereal Network Analyzer $(VERSION)" \ + --noindex \ + > editcap.html + mergecap.1: mergecap.pod ../config.h $(POD2MAN) mergecap.pod \ --center="The Ethereal Network Analyzer" \ --release=$(VERSION) \ > mergecap.1 +mergecap.html: mergecap.pod ../config.h + $(POD2HTML) mergecap.pod \ + --title="The Ethereal Network Analyzer $(VERSION)" \ + --noindex \ + > mergecap.html + idl2eth.1: idl2eth.pod ../config.h $(POD2MAN) idl2eth.pod \ --center="The Ethereal Network Analyzer" \ --release=$(VERSION) \ > idl2eth.1 +idl2eth.html: idl2eth.pod ../config.h + $(POD2HTML) idl2eth.pod \ + --title="The Ethereal Network Analyzer $(VERSION)" \ + --noindex \ + > idl2eth.html + text2pcap.1: text2pcap.pod ../config.h $(POD2MAN) text2pcap.pod \ --center="The Ethereal Network Analyzer" \ --release=$(VERSION) \ > text2pcap.1 +text2pcap.html: text2pcap.pod ../config.h + $(POD2HTML) text2pcap.pod \ + --title="The Ethereal Network Analyzer $(VERSION)" \ + --noindex \ + > text2pcap.html + clean: rm -f ethereal.html ethereal.1 ethereal.pod rm -f tethereal.html tethereal.1 tethereal.pod @@ -99,3 +114,4 @@ rm -f idl2eth.html idl2eth.1 rm -f mergecap.html mergecap.1 rm -f text2pcap.html text2pcap.1 + rm -f pod2htm* diff -ur ethereal-0.9.0.orig/packaging/nsis/ethereal.nsi.in ethereal-0.9.0/packaging/nsis/ethereal.nsi.in --- ethereal-0.9.0.orig/packaging/nsis/ethereal.nsi.in Thu Dec 20 13:38:36 2001 +++ ethereal-0.9.0/packaging/nsis/ethereal.nsi.in Fri Jan 04 12:07:42 2002 @@ -16,8 +16,7 @@ Icon "..\..\image\ethereal.ico" ; Uninstall stuff -UninstallText "This will uninstall Etheral. Hit 'Next' to continue." -UninstallExeName "uninstall.exe" +UninstallText "This will uninstall Ethereal. Hit 'Next' to continue." ; ============================================================================ ; License page configuration @@ -73,6 +72,7 @@ ; Write the uninstall keys for Windows WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Ethereal" "DisplayName" "Ethereal" WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Ethereal" "UninstallString" '"$INSTDIR\uninstall.exe"' +WriteUninstaller "uninstall.exe" SectionEnd Section "Ethereal" @@ -165,5 +165,6 @@ RMDir "$INSTDIR\plugins\@VERSION@" RMDir "$INSTDIR\plugins" RMDir "$INSTDIR" + SectionEnd diff -ur ethereal-0.9.0.orig/tools/lemon/Makefile.nmake ethereal-0.9.0/tools/lemon/Makefile.nmake --- ethereal-0.9.0.orig/tools/lemon/Makefile.nmake Wed Dec 12 15:23:32 2001 +++ ethereal-0.9.0/tools/lemon/Makefile.nmake Fri Jan 04 12:23:46 2002 @@ -9,4 +9,4 @@ all : lemon.exe clean: - rm -f lemon.obj lemon.exe $(PDB_FILE) lemon.pdb + rm -f lemon.obj lemon.exe lemon.ilk $(PDB_FILE) lemon.pdb
- Follow-Ups:
- Re: [Ethereal-dev] Win32 build patches
- From: Guy Harris
- Re: [Ethereal-dev] Win32 build patches
- Prev by Date: Re: [Ethereal-dev] Workaround for problem on Mac OS X
- Next by Date: Re: [Ethereal-dev] Updates to spoolss dissector
- Previous by thread: Re: [Ethereal-dev] SSL desegmentation patch
- Next by thread: Re: [Ethereal-dev] Win32 build patches
- Index(es):