## Makefile for building ethereal.exe with Microsoft C and nmake
## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
#
-# $Id: Makefile.nmake,v 1.10 2003/10/10 21:31:47 guy Exp $
+# $Id$
include ..\..\config.nmake
LEMON=..\..\tools\lemon
CFLAGS=-DHAVE_CONFIG_H /I. /I.. /I..\.. /I$(LEMON) \
- $(GTK_CFLAGS) /I$(PCAP_DIR)\include -D_U_="" $(LOCAL_CFLAGS)
+ $(GLIB_CFLAGS) $(PCRE_CFLAGS) /I$(PCAP_DIR)\include -D_U_="" $(LOCAL_CFLAGS)
CVARSDLL=-DWIN32 -DNULL=0 -D_MT -D_DLL
OBJECTS = \
dfilter.obj \
+ dfunctions.obj \
dfvm.obj \
drange.obj \
gencode.obj \
grammar.obj \
scanner.obj \
semcheck.obj \
+ sttype-function.obj \
sttype-integer.obj \
sttype-pointer.obj \
sttype-range.obj \
syntax-tree.obj
dfilter.lib : $(OBJECTS)
- lib /out:dfilter.lib $(OBJECTS)
+ link /lib /out:dfilter.lib $(OBJECTS)
-$(OBJECTS): ..\config.h
+$(OBJECTS): ..\..\config.h
-..\config.h:
- cd ..
- $(MAKE) -f makefile.nmake config.h
- cd dfilter
+..\..\config.h: ..\..\config.h.win32 ..\..\config.nmake
+ cd ..\..
+ $(MAKE) -f Makefile.nmake config.h
+ cd epan\dfilter
clean:
rm -f $(OBJECTS) dfilter.lib $(PDB_FILE)
+#
+# We remove the generated files with "distclean" because one of them,
+# "scanner.c", needs different #includes for UN*X and Windows
+# (UN*X versions of Flex make it include <unistd.h>, but that's a
+# UN*X-only header), so if you're going to build from source, you need
+# to build "scanner.c" from "scanner.l" with Flex.
+# This might not be necessary for "grammar.{c,h}", but we handle them
+# the same for now.
+#
distclean: clean
rm -f scanner.c grammar.c grammar.h grammar.out
+maintainer-clean: distclean
+
scanner.c : scanner.l
$(LEX) -Pdf_ -oscanner.c scanner.l