1 ## Makefile for building ethereal.exe with Microsoft C and nmake
2 ## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
4 # $Id: Makefile.nmake,v 1.121 2001/06/29 18:55:49 guy Exp $
9 ############### no need to modify below this line #########
14 LDFLAGS = /NOLOGO /INCREMENTAL:no /MACHINE:I386 $(LOCAL_LDFLAGS)
16 CFLAGS=-DHAVE_CONFIG_H $(LOCAL_CFLAGS) /I$(GLIB_DIR) /I$(GLIB_DIR)\gmodule \
17 /I$(GTK_DIR) /Iepan /Iwiretap /I$(GTK_DIR)\gdk /I$(GTK_DIR)\gdk\win32 \
20 CVARSDLL=-DWIN32 -DNULL=0 -D_MT -D_DLL
23 $(CC) $(CVARSDLL) $(CFLAGS) -Fd$O\ -c $<
134 packet-osi-options.c \
145 packet-quakeworld.c \
168 packet-smb-browse.c \
169 packet-smb-common.c \
171 packet-smb-mailslot.c \
181 packet-stat-notify.c \
216 DISSECTOR_OBJECTS = $(DISSECTOR_SRC:.c=.obj)
218 ETHEREAL_COMMON_OBJECTS = \
236 $(DISSECTOR_OBJECTS) \
237 $(ETHEREAL_COMMON_OBJECTS) \
241 proto_hier_stats.obj \
244 tethereal_OBJECTS = \
245 $(DISSECTOR_OBJECTS) \
246 $(ETHEREAL_COMMON_OBJECTS) \
250 $(DISSECTOR_OBJECTS) \
251 $(ETHEREAL_COMMON_OBJECTS) \
260 ethereal_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
261 gtk\libui.lib epan\ethereal.lib \
262 epan\dfilter\dfilter.lib epan\ftypes\ftypes.lib \
263 wsock32.lib user32.lib \
264 $(GTK_DIR)\gtk\gtk-$(GTK_VERSION).lib \
265 $(GTK_DIR)\gdk\gdk-$(GTK_VERSION).lib \
266 $(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
267 $(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib
268 # $(PCAP_DIR)\lib\wpcap.lib
270 tethereal_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
272 epan\dfilter\dfilter.lib epan\ftypes\ftypes.lib \
273 wsock32.lib user32.lib \
274 $(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
275 $(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib
277 editcap_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
278 wsock32.lib user32.lib \
279 $(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
280 $(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib
282 dftest_LIBS= epan\ethereal.lib \
283 epan\dfilter\dfilter.lib epan\ftypes\ftypes.lib \
284 wsock32.lib user32.lib \
285 $(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
286 $(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib
288 EXECUTABLES=ethereal.exe tethereal.exe editcap.exe text2pcap.exe
290 RESOURCES=image\ethereal.res image\tethereal.res image\editcap.res image\text2pcap.res
292 all: tools wiretap gtk epan image $(EXECUTABLES) $(RESOURCES)
294 ethereal.exe : config.h $(ethereal_OBJECTS) $(EXTRA_OBJECTS) image\ethereal.res wiretap\wiretap-$(WTAP_VERSION).lib gtk\libui.lib plugins
297 /OUT:ethereal.exe $(guiflags) $(guilibsdll) $(LDFLAGS) /SUBSYSTEM:windows $(ethereal_LIBS) $(ethereal_OBJECTS) $(EXTRA_OBJECTS) image\ethereal.res
300 tethereal.exe : config.h $(tethereal_OBJECTS) $(EXTRA_OBJECTS) image\tethereal.res wiretap\wiretap-$(WTAP_VERSION).lib plugins
303 /OUT:tethereal.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console $(tethereal_LIBS) $(tethereal_OBJECTS) $(EXTRA_OBJECTS) image\tethereal.res
306 editcap.exe : config.h editcap.obj getopt.obj wiretap\wiretap-$(WTAP_VERSION).lib image\editcap.res
309 /OUT:editcap.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console editcap.obj getopt.obj $(editcap_LIBS) image\editcap.res
312 text2pcap.exe : config.h text2pcap.obj text2pcap-scanner.obj getopt.obj image\text2pcap.res
315 /OUT:text2pcap.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console text2pcap.obj text2pcap-scanner.obj getopt.obj image\text2pcap.res
318 dftest.exe : $(dftest_OBJECTS) $(EXTRA_OBJECTS)
320 /OUT:dftest.exe $(conflags) $(conlibsdll) $(LDFLAGS) /SUBSYSTEM:console $(dftest_LIBS) $(dftest_OBJECTS) $(EXTRA_OBJECTS)
323 config.h : config.h.win32
324 sed -e s/@VERSION@/$(VERSION)/ < config.h.win32 > $@
326 ps.c : rdps.exe print.ps
330 # The header files listed here are built from x11-fields using Perl;
331 # we declare a dependency here so that they get built.
333 packet-x11.obj : packet-x11.c x11-declarations.h x11-register-info.h
336 # Build various header files for the X11 dissector.
338 x11-declarations.h x11-register-info.h: x11-fields process-x11-fields.pl
339 $(PERL) process-x11-fields.pl <x11-fields
341 packet-ncp2222.c : ncp2222.py
342 @echo Making packet-ncp2222.c
343 $(PYTHON) ncp2222.py > packet-ncp2222.c
345 register.c: $(DISSECTOR_SRC)
346 @echo Making register.c
347 @$(PYTHON) make-reg-dotc.py . $(DISSECTOR_SRC)
348 # How are ifdef's done in NMAKE? It would be nice
349 # to use python if PYTHON is defined, otherwise try to use shell.
350 # @sh make-reg-dotc . $(DISSECTOR_SRC)
352 text2pcap-scanner.c : text2pcap-scanner.l
353 $(LEX) -otext2pcap-scanner.c text2pcap-scanner.l
356 rm -f $(ethereal_OBJECTS) $(EXTRA_OBJECTS) $(EXECUTABLES) \
357 tethereal.obj editcap.obj text2pcap.obj \
358 text2pcap-scanner.c register.c rdps.obj config.h \
359 ps.c packet-ncp2222.c register.c
361 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
363 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
365 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
367 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
369 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
371 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean
376 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
381 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
386 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
391 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
396 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake
401 $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake