## Makefile for building ethereal.exe with Microsoft C and nmake ## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake # # $Id$ include ..\config.nmake include include Makefile.common ############### no need to modify below this line ######### CFLAGS=-DHAVE_CONFIG_H /I. /I.. /I../wiretap $(GLIB_CFLAGS) \ $(ZLIB_CFLAGS) $(ADNS_CFLAGS) $(PCRE_CFLAGS) /I$(PCAP_DIR)\include \ -D_U_="" $(LOCAL_CFLAGS) CVARSDLL=-DWIN32 -DNULL=0 -D_MT -D_DLL # For use when making libethereal.dll libethereal_LIBS = \ $(GLIB_LIBS) \ $(ADNS_LIBS) \ $(PCRE_LIBS) \ $(NETTLE_LIBS) \ $(ZLIB_LIBS) \ $(NET_SNMP_DIR)\win32\lib\netsnmp.lib \ ftypes\ftypes.lib \ dfilter\dfilter.lib \ dissectors\dissectors.lib # declare before .c.obj:: DISSECTOR_SUPPORT_OBJECTS = $(DISSECTOR_SUPPORT_SRC:.c=.obj) .c.obj:: $(CC) $(CVARSDLL) $(CFLAGS) -Fd.\ -c $< LIBETHEREAL_OBJECTS = $(LIBETHEREAL_SRC:.c=.obj) EXTRA_OBJECTS = \ # snprintf.obj \ # strerror.obj \ inet_aton.obj \ inet_pton.obj \ inet_ntop.obj \ ../mkstemp.obj \ ../strptime.obj #EXTRA_SRC = $(EXTRA_SRC:../=) #EXTRA_OBJECTS = $(EXTRA_SRC:.c=.obj) !IFDEF ENABLE_LIBETHEREAL all: ftypes dfilter dissectors libethereal.dll !ELSE all: ftypes dfilter dissectors ethereal.lib !ENDIF # For use when making libethereal.dll libethereal.lib: libethereal.dll libethereal.exp: libethereal.dll #DISSECTOR_SUPPORT_SRC = $(DISSECTOR_SUPPORT_SRC:../=) #DISSECTOR_SUPPORT_OBJECTS = $(DISSECTOR_SUPPORT_SRC:.c=.obj) #DISSECTOR_SUPPORT_OBJECTS = $(DISSECTOR_SUPPORT_OBJECTS:../=) libethereal.dll: ..\config.h $(LIBETHEREAL_OBJECTS) libethereal.def ftypes dfilter dissectors $(DISSECTOR_SUPPORT_OBJECTS) doxygen $(EXTRA_OBJECTS) ..\image\libethereal.res @echo Linking libethereal.dll $(link) $(dlllflags) $(conlibsdll) \ $(LOCAL_LDFLAGS) \ /DEF:libethereal.def /OUT:libethereal.dll \ /IMPLIB:libethereal.lib $(LIBETHEREAL_OBJECTS) \ $(libethereal_LIBS) ..\image\libethereal.res \ dissectors\register.obj $(DISSECTOR_SUPPORT_OBJECTS) \ $(EXTRA_OBJECTS) ethereal.lib : ..\config.h $(LIBETHEREAL_OBJECTS) $(EXTRA_OBJECTS) link /lib /out:ethereal.lib $(LIBETHEREAL_OBJECTS) \ $(EXTRA_OBJECTS) $(DISSECTOR_SUPPORT_OBJECTS) ..\config.h : ..\config.h.win32 ..\config.nmake cd .. $(MAKE) -f Makefile.nmake config.h cd epan clean: rm -f $(LIBETHEREAL_OBJECTS) $(DISSECTOR_SUPPORT_OBJECTS) $(EXTRA_OBJECTS) ethereal.lib libethereal.dll libethereal.lib libethereal.exp $(PDB_FILE) doxygen.cfg html/*.* if exist html rmdir html cd ftypes $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean cd ../dfilter $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean cd ../dissectors $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean cd .. distclean: clean rm -f config.h register.c cd ftypes $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean cd ../dfilter $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean cd ../dissectors $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake distclean cd .. ftypes:: ..\config.h cd ftypes $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake cd .. dfilter:: ..\config.h cd dfilter $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake cd .. dissectors:: ..\config.h cd dissectors $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake cd .. doxygen.cfg: ..\config.nmake doxygen.cfg.in sed -e s/@VERSION@/$(VERSION)/ \ < doxygen.cfg.in > $@ doxygen-run: !IFDEF DOXYGEN $(DOXYGEN) doxygen.cfg !ENDIF doxygen: doxygen.cfg doxygen-run