windows-nt/Source/XPSP1/NT/base/mvdm/wow16/sherlock/makefile.sub
2020-09-26 16:20:57 +08:00

76 lines
2 KiB
Plaintext

!INCLUDE ..\makefile.inc
#
# retail flags
CL = $(CL) -c -AS -G2sw -Os -D__MSC__ -W3 -Zpe
MASM = $(ASM) $(INCS)
#
# debug flags
#
!if !$(FREEBUILD)
DEBUG=1
CDEBUG = /Od /Oi /Zd
ADEBUG = -Zd
LDEBUG = /LI
!endif
!ifdef DEBUG
CL = $(CL) $(CDEBUG)
MASM = $(MASM) $(ADEBUG)
LDEBUG = $(LDEBUG)
!endif
INCS = -I..\inc -I..\..\inc -I..\toolhelp
INCLUDES=..\inc;..\..\inc;..\toolhelp;$(SDK_INC_PATH)
OBJ = $(DEST)\drwatson.obj $(DEST)\disasm.obj $(DEST)\getsym.obj $(DEST)\watson.obj $(DEST)\error.obj
RES_DIR=.\messages\$(ALT_PROJECT)
all: $(DEST)\drwatson.exe
.c{$(DEST)}.obj:
set include=$(INCLUDES)
$(CL) -Fo$* $(*F).c
$(DEST)\drwatson.obj: drwatson.c drwatson.h disasm.h str.h
$(DEST)\error.obj: error.c str.h
$(DEST)\disasm.obj : disasm.c disasm.h
$(DEST)\getsym.obj : getsym.c drwatson.h disasm.h
$(DEST)\watson.obj : watson.asm
$(MASM) watson.asm,$(DEST)\watson,$(DEST)\watson.lst;
$(DEST)\drwatson.rc : $(RES_DIR)\drwatson.rc
copy $? $@
$(DEST)\drwatson.rcv : $(RES_DIR)\drwatson.rcv
copy $? $@
$(DEST)\drwatson.res: $(DEST)\drwatson.rc $(DEST)\drwatson.rcv ..\inc\common.ver str.h
set INCLUDE=$(INCLUDES)
$(RC) -r $(INCS) $(DEST)\drwatson.rc
$(DEST)\sherlock.lnk: makefile.sub
echo $(DEST)\drwatson.obj $(DEST)\disasm.obj $(DEST)\getsym.obj $(DEST)\watson.obj $(DEST)\error.obj>$@
echo $(DEST)\drwatson.exe>>$@
echo $(DEST)\drwatson.map>>$@
echo /batch ..\lib\$(ALT_PROJECT)\libw ..\lib\slibcew ..\toolhelp\$(DEST)\toolhelp>>$@
echo drwatson.def /ALIGN:16 /NOE /NOD /MAP;>>$@
$(DEST)\drwatson.exe: $(DEST)\sherlock.lnk $(DEST)\drwatson.res $(DEST)\sherlock.lnk drwatson.def \
$(DEST)\drwatson.obj $(DEST)\disasm.obj $(DEST)\getsym.obj $(DEST)\watson.obj $(DEST)\error.obj
$(LINK) $(LDEBUG) @$(DEST)\sherlock.lnk
mapsym -o $*.sym $*
$(RC) -t -30 $(DEST)\drwatson.res $(DEST)\drwatson.exe
binplace -o $(ALT_PROJECT_TARGET) $(DEST)\drwatson.exe $(DEST)\drwatson.map $(DEST)\drwatson.sym
# note that TOOLHELP.LIB must exist somewhere on your lib path
clean: all