1!IFDEF CPU 2LIBS = $(LIBS) bufferoverflowU.lib 3CFLAGS = $(CFLAGS) -GS- -Zc:forScope 4!ENDIF 5 6!IFNDEF O 7!IFDEF CPU 8O=$(CPU) 9!ELSE 10O=O 11!ENDIF 12!ENDIF 13 14!IF "$(CPU)" != "IA64" 15!IF "$(CPU)" != "AMD64" 16MY_ML = ml 17!ELSE 18MY_ML = ml64 19!ENDIF 20!ENDIF 21 22COMPL_ASM = $(MY_ML) -c -Fo$O/ $** 23 24CFLAGS = $(CFLAGS) -nologo -c -Fo$O/ -EHsc -Gz -WX -Gy 25 26!IFDEF MY_STATIC_LINK 27!IFNDEF MY_SINGLE_THREAD 28CFLAGS = $(CFLAGS) -MT 29!ENDIF 30!ELSE 31CFLAGS = $(CFLAGS) -MD 32!ENDIF 33 34!IFDEF NEW_COMPILER 35CFLAGS_O1 = $(CFLAGS) -O1 -W4 -Wp64 36CFLAGS_O2 = $(CFLAGS) -O2 -W4 -Wp64 37!ELSE 38CFLAGS_O1 = $(CFLAGS) -O1 -W3 39CFLAGS_O2 = $(CFLAGS) -O2 -W3 40!ENDIF 41 42LFLAGS = $(LFLAGS) -nologo -OPT:NOWIN98 -OPT:REF 43 44!IFDEF DEF_FILE 45LFLAGS = $(LFLAGS) -DLL -DEF:$(DEF_FILE) 46!ENDIF 47 48PROGPATH = $O\$(PROG) 49 50COMPL_O1 = $(CPP) $(CFLAGS_O1) $** 51COMPL_O2 = $(CPP) $(CFLAGS_O2) $** 52COMPL_PCH = $(CPP) $(CFLAGS_O1) -Yc"StdAfx.h" -Fp$O/a.pch $** 53COMPL = $(CPP) $(CFLAGS_O1) -Yu"StdAfx.h" -Fp$O/a.pch $** 54 55all: $(PROGPATH) 56 57clean: 58 -del /Q $(PROGPATH) $O\*.exe $O\*.dll $O\*.obj $O\*.lib $O\*.exp $O\*.res $O\*.pch 59 60$O: 61 if not exist "$O" mkdir "$O" 62 63$(PROGPATH): $O $(OBJS) $(DEF_FILE) 64 link $(LFLAGS) -out:$(PROGPATH) $(OBJS) $(LIBS) 65$O\resource.res: $(*B).rc 66 rc -fo$@ $** 67$O\StdAfx.obj: $(*B).cpp 68 $(COMPL_PCH) 69