# # Whatever you put in for $(CC) must be able to grok ANSI C. # CC = cl LD = cl YACC = yacc LEX = flex WINZIP = C:\apps\Winzip\wzzip # The suffix appended to executables. # This should be set for Cygwin and Windows. EXE = .exe #EXE = # Compiler directives for debugging !ifdef DEBUG DEBUG_CFLAGS = /MTd /ZI /Od /FD /GZ /D "DEBUG" DEBUG_LFLAGS = /DEBUG /PDBTYPE:SEPT LIBS= libcmtd.lib kernel32.lib ws2_32.lib !else DEBUG_CFLAGS = /MT /Ot /Oy /Ob1 /Gs /Gy /D "NDEBUG" DEBUG_LFLAGS = LIBS= libcmt.lib kernel32.lib ws2_32.lib !endif RAND=RANDOM DEFS= /D "$(RAND)" /D "LEX" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "_CONSOLE" /D "_MBCS" /D "TRACE" OPTIM= /nologo /GX /W1 $(DEBUG_CFLAGS) /G$(PROCESSOR_LEVEL) CFLAGS= $(OPTIM) $(DEFS) LFLAGS = /link /NOLOGO /NODEFAULTLIB /SUBSYSTEM:CONSOLE $(DEBUG_LFLAGS) HDR = config.h wiz_list.h sent.h security.h regexp.h object.h lnode.h \ interpret.h comm.h os.h telnet.h SRC=lang.y lexical.l main.c lnode.c interpret.c simulate.c object.c backend.c \ comm1.c ed.c regexp.c wiz_list.c swap.c string_space.c os.c OBJ=lang.obj lexical.obj main.obj lnode.obj interpret.obj simulate.obj \ object.obj backend.obj comm1.obj ed.obj regexp.obj wiz_list.obj \ swap.obj string_space.obj os.obj XTRA = README CHANGES.1.4.0-A CHANGES Copyright Makefile INSTALL_NOTES IDEA \ makefile.bor makefile.vc restart_mud MISCSRC = count_active.c MISCOBJ = $(MISCSRC:.c=.obj) # OTHER = mudlib/* # Files in the standard distribution DISTFILES = $(SRC) $(HDR) $(XTRA) $(OTHER) $(MISCSRC) PDIST = $(DISTFILES:%=lpmud\%) !ifndef RELEASE RELEASE = dist !endif # Dependency information OBJDEPENDS = $(OBJ) $(MISCOBJ) TARGETS = parse$(EXE) count_active$(EXE) all: $(TARGETS) parse$(EXE) : $(OBJ) $(LD) $(OBJ) $(LIBS) /Fe$@ $(LFLAGS) count_active$(EXE) : $(MISCOBJ) $(LD) $(MISCOBJ) $(LIBS) /Fe$@ $(LFLAGS) lang.c y.tab.h : lang.y $(YACC) -d lang.y -move y.tab.c lang.c lexical.c : lexical.l $(LEX) lexical.l -move lex.yy.c lexical.c clean : -del *.pdb *.ilk $(TARGETS) lang.c y.tab.h lexical.c $(OBJDEPENDS) dist : $(DISTFILES) @echo "Building distribution..." @-md lpmud @!copy /y $** lpmud 1>NUL @echo .svn > ex.tmp @xcopy mudlib lpmud\mudlib /I /E /Y /Q /EXCLUDE:ex.tmp @del ex.tmp @$(WINZIP) -Pr lpmud-$(RELEASE).zip lpmud 1>NUL 2>NUL @rd /s /q lpmud @echo "Done." .c.obj: $(CC) $(CFLAGS) /c /Tc$(<:\=/)