Guy Harris <guy@xxxxxxxxxx> writes:
> > I can unpack ethereal-0.8.18 and build it sucessfully on my NT box,
> > but I can not do the same from the source tree.
> >
> > I pulled the source tree out of CVS (actually 2-3 days ago) and ran
> > autogen.sh on a Solaris box to generate all the various config stuff.
>
> If you have an NT box with all the tools mentioned in the "README.win32"
> file, you should just be able to
>
> modify the "config.nmake" file to point to the places where
> GTK+, GLib, WinPcap, Perl, Python, Flex, and Berkeley YACC or
> Bison are located;
>
> build with "nmake -f makefile.nmake";
Thanks for the response. That is what I was doing. I copied
the directory again and started fresh. That time everything
worked or at least worked better.
Building out of CVS on NT appears to be bumping up against
some limitations on the length of command lines. Basically,
with the addition of new file names since 0.8.18 when
DISSECTOR_SRC is being expanded the commandline is too long.
I played around a bit and came up with a kludgy work around.
For reasons that are not clear to me echo didn't exhibit the
same line too long behavior (perhaps because it is a builtin
or something like that?) that I saw when trying to run python.
Since sh didn't have any problem with the long command line
either I just echoed the command out to a file and then ran
the command with sh.
While I was messing with the make file I noticed a comment
stating that it would be nice if we could execute python iff
the variable PYTHON was defined. Otherwise run the sh
version.
I added the ifdef for nmake. That works, but the sh script
fails. I didn't investigate further.
Now I am also seeing a link error, but I'll investigate that
more tomorrow. (Windows only...)
Index: Makefile.nmake
===================================================================
RCS file: /cvsroot/ethereal/Makefile.nmake,v
retrieving revision 1.124
diff -u -r1.124 Makefile.nmake
--- Makefile.nmake 2001/07/11 18:19:15 1.124
+++ Makefile.nmake 2001/07/12 14:15:45
@@ -349,12 +349,16 @@
@echo Making packet-ncp2222.c
$(PYTHON) ncp2222.py > packet-ncp2222.c
-register.c: $(DISSECTOR_SRC)
+register.c: mkreg.sh
@echo Making register.c
- @$(PYTHON) make-reg-dotc.py . $(DISSECTOR_SRC)
-# How are ifdef's done in NMAKE? It would be nice
-# to use python if PYTHON is defined, otherwise try to use shell.
-# @sh make-reg-dotc . $(DISSECTOR_SRC)
+ @sh mkreg.sh
+
+mkreg.sh: $(DISSECTOR_SRC)
+!IFDEF PYTHON
+ @echo $(PYTHON) make-reg-dotc.py . $(DISSECTOR_SRC) >mkreg.sh
+!ELSE
+ @echo sh make-reg-dotc . $(DISSECTOR_SRC) >mkreg.sh
+!ENDIF
text2pcap-scanner.c : text2pcap-scanner.l
$(LEX) -otext2pcap-scanner.c text2pcap-scanner.l
--
-Andrew Feren
Cetacean Networks, Inc.
Portsmouth, NH