# MAKEFILE FOR MICROSOFT VISUAL C++
VERSION16 = 
VERSION32 = 50
DRIVE32   = F:\PROGRA~1\DEVSTU~1\VC
DRIVE16   = H:
SRCPATH   = .
BIN16PATH = $(DRIVE16)\MSVC$(VERSION16)\BIN
BIN32PATH = $(DRIVE32)\BIN
LIB16PATH = $(DRIVE16)\MSVC$(VERSION16)\LIB
LIB32PATH = $(DRIVE32)\LIB
INC16PATH = $(DRIVE16)\MSVC$(VERSION16)\INCLUDE
INC32PATH = $(DRIVE32)\INCLUDE
#
CC16    = $(BIN16PATH)\CL
LINK16  = $(BIN16PATH)\LINK
RC16    = $(BIN16PATH)\RC
IMP16   = $(BIN16PATH)\IMPLIB
LIB16   = $(BIN16PATH)\LIB
CC32    = $(BIN32PATH)\CL
RC32    = $(DRIVE32)\..\SHARED~1\BIN\RC
LINK32  = $(BIN32PATH)\LINK
#
D16MODEL  = L            # large model
DOSMODEL  = S            # compact model
W16MODEL  = S            # small model
#
C16FLAGS  = /nologo /G3 /W3 /O2 /Ox /D "NDEBUG" -I$(INC16PATH) -I$(SRCPATH)  
C32FLAGS  = /nologo /G3 /W3 /O2 /Ox /D "NDEBUG" -I$(INC32PATH) -I$(SRCPATH)

W16DEFS   = -DWIN16  # Sorry, but MSVC can't handle 386 asm code (-DASM -DFP)
W32DEFS   = -DWIN32  -DASM
#
DOSLIBS   = $(LIB16PATH)\OLDNAMES $(LIB16PATH)\SLIBCE DES3$(DOSMODEL)
D16LIBS   = $(LIB16PATH)\OLDNAMES $(LIB16PATH)\LIBW $(LIB16PATH)\LDLLCEW
W16LIBS   = $(LIB16PATH)\OLDNAMES $(LIB16PATH)\LIBW $(LIB16PATH)\SLIBCEW
W32LIBS   = $(LIB32PATH)\OLDNAMES.LIB $(LIB32PATH)\KERNEL32.LIB $(LIB32PATH)\USER32.LIB $(LIB32PATH)\LIBC.LIB DES3W32.LIB
D32LIBS   = $(LIB32PATH)\OLDNAMES.LIB $(LIB32PATH)\KERNEL32.LIB $(LIB32PATH)\LIBCMT.LIB
#
LDDOS     = $(LINK16) /NOLOGO /NOI /STACK:5120 /ONERROR:NOEXE
LD16      = $(LINK16) /NOLOGO /NOD /NOE /PACKC:61440 /ALIGN:16 /ONERROR:NOEXE
LDDLL32   = $(LINK32) $(D32LIBS) /NOLOGO /SUBSYSTEM:CONSOLE /MACHINE:I386 /DLL
LDEXE32   = $(LINK32) $(W32LIBS) /NOLOGO /SUBSYSTEM:WINDOWS /MACHINE:I386
#
# ALL:    DOS W16 W32
#
# W32:    DES3W32.DLL W32VALID.EXE

W32VALID.EXE: W32VALID.OBJ DES3W32.DLL
        $(LDEXE32) /DEF:$(SRCPATH)\W32VALID.DEF /OUT:W32VALID.EXE W32VALID.OBJ
        @IF EXIST W32VALID.OBJ DEL W32VALID.OBJ
     	@IF EXIST W32VALID.EXP DEL W32VALID.EXP
 	@IF EXIST W32VALID.LIB DEL W32VALID.LIB

W32VALID.OBJ: $(SRCPATH)\WINVALID.C # $(SRCPATH)\DES3.H
     	$(CC32) $(C32FLAGS) /ML /D "WIN32" /FoW32VALID.OBJ /c $(SRCPATH)\WINVALID.C

#DES3W32.DLL: DES3W32.OBJ DES3W32.RES
#     	$(LDDLL32) /DEF:$(SRCPATH)\DES3W32.DEF /OUT:DES3W32.DLL /IMPLIB:DES3W32.LIB DES3W32.OBJ DES3W32.RES
#     	@IF EXIST DES3W32.OBJ DEL DES3W32.OBJ
#     	@IF EXIST DES3W32.RES DEL DES3W32.RES
#        @IF EXIST DES3W32.EXP DEL DES3W32.EXP

#DES3W32.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H $(SRCPATH)\TABLES.H
#	$(CC32) $(C32FLAGS) $(W32DEFS) /MT  /FoDES3W32.OBJ /c $(SRCPATH)\DES3.C

#DES3W32.RES: $(SRCPATH)\DES3.RC
#     	$(RC32) /dNDEBUG /i$(SRCPATH) /i$(INC32PATH) -FoDES3W32.RES $(SRCPATH)\DES3.RC
#

#W16:	W16VALID.EXE DES3.VBX DES3W16.DLL

#W16VALID.EXE: W16VALID.OBJ DES3W16.DLL
#     	$(LD16) W16VALID,W16VALID,,$(W16LIBS),$(SRCPATH)\W16VALID;
#        @IF EXIST W16VALID.OBJ DEL W16VALID.OBJ
#     	@IF EXIST W16VALID.MAP DEL W16VALID.MAP

#W16VALID.OBJ: $(SRCPATH)\WINVALID.C $(SRCPATH)\DES3.H
#     	$(CC16) $(C16FLAGS) /A$(W16MODEL)w  /D "WIN16" /GA /FoW16VALID.OBJ /c  $(SRCPATH)\WINVALID.C

#DES3.VBX: DES3.OBJ DES3W16.RES
#     	$(LD16) DES3, DES3.VBX,,$(D16LIBS),$(SRCPATH)\DES3VBX;
#     	$(RC16) DES3W16.RES DES3.VBX
#     	@IF EXIST DES3.OBJ DEL DES3.OBJ
#     	@IF EXIST DES3W16.RES DEL DES3W16.RES
#        @IF EXIST DES3.MAP DEL DES3.MAP

#DES3.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H $(SRCPATH)\TABLES.H
#     	$(CC16) $(C16FLAGS)  /A$(D16MODEL)w  /D "WIN16" /Gcsw  /FoDES3.OBJ /c $(SRCPATH)\DES3.C

#DES3W16.DLL: DES3W16.OBJ DES3W16.RES
#	$(LD16) DES3W16,DES3W16.DLL,,$(D16LIBS),$(SRCPATH)\DES3W16;
#	$(RC16) DES3W16.RES DES3W16.DLL
#        $(IMP16) /NOWEP DES3W16.LIB DES3W16.DLL
#	@IF EXIST DES3W16.OBJ DEL DES3W16.OBJ
#        @IF EXIST DES3W16.MAP DEL DES3W16.MAP

#DES3W16.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H $(SRCPATH)\TABLES.H
#	$(CC16) $(C16FLAGS)  /A$(D16MODEL)w  /D "WIN16" /Gcsw  /FoDES3W16.OBJ /c $(SRCPATH)\DES3.C

#DES3W16.RES: $(SRCPATH)\DES3.RC
#     	$(RC16) -dNDEBUG -I$(INC16PATH) -R -FoDES3W16.RES $(SRCPATH)\DES3.RC
#

#DOS:   	DOSEXES DOSLIBS
#DOSEXES: DES.EXE BENCH.EXE TESTECB.EXE TESTCBC.EXE
#DOSLIBS: DES3S.LIB DES3C.LIB DES3M.LIB DES3L.LIB DES3H.LIB

#TESTCBC.EXE: TESTCBC.OBJ DES3$(DOSMODEL).LIB
#     	$(LDDOS) TESTCBC, TESTCBC,,$(DOSLIBS);
#     	@IF EXIST TESTCBC.OBJ DEL TESTCBC.OBJ
#     	@IF EXIST TESTCBC.MAP DEL TESTCBC.MAP

#TESTCBC.OBJ: $(SRCPATH)\TESTCBC.C $(SRCPATH)\DES3.H
#	$(CC16) $(C16FLAGS) /A$(DOSMODEL) /FoTESTCBC.OBJ -c $(SRCPATH)\TESTCBC.C

#TESTECB.EXE: TESTECB.OBJ DES3$(DOSMODEL).LIB
#	$(LDDOS) TESTECB, TESTECB,,$(DOSLIBS);
#	@IF EXIST TESTECB.OBJ DEL TESTECB.OBJ
#	@IF EXIST TESTECB.MAP DEL TESTECB.MAP

#TESTECB.OBJ: $(SRCPATH)\TESTECB.C $(SRCPATH)\DES3.H
#	$(CC16) $(C16FLAGS) /A$(DOSMODEL) /FoTESTECB.OBJ -c $(SRCPATH)\TESTECB.C

#DES.EXE: DES.OBJ DES3$(DOSMODEL).LIB
#	$(LDDOS) DES, DES,,$(DOSLIBS);
#	@IF EXIST DES.OBJ DEL DES.OBJ
#	@IF EXIST DES.MAP DEL DES.MAP

#DES.OBJ: $(SRCPATH)\DES.C $(SRCPATH)\DES3.H
#	$(CC16) $(C16FLAGS) /A$(DOSMODEL) /FoDES.OBJ -c $(SRCPATH)\DES.C

#BENCH.EXE: BENCH.OBJ DES3$(DOSMODEL).LIB
#           $(LDDOS) BENCH,BENCH,,$(DOSLIBS);
#           @IF EXIST BENCH.OBJ DEL BENCH.OBJ
#           @IF EXIST BENCH.MAP DEL BENCH.MAP

#BENCH.OBJ: $(SRCPATH)\BENCH.C $(SRCPATH)\DES3.H
#       	   $(CC16) $(C16FLAGS) /A$(DOSMODEL) /FoBENCH.OBJ -c $(SRCPATH)\BENCH.C

#DES3S.LIB: DES3S.OBJ
#           @IF EXIST DES3S.LIB DEL DES3S.LIB
#           $(LIB16) DES3S.LIB +DES3S.OBJ;
#           @IF EXIST DES3S.OBJ DEL DES3S.OBJ

#DES3S.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H
#           $(CC16) $(C16FLAGS) /AS /FoDES3S.OBJ -c $(SRCPATH)\DES3.C

#DES3C.LIB: DES3C.OBJ
#           @IF EXIST DES3C.LIB DEL DES3C.LIB
#           $(LIB16) DES3C.LIB +DES3C.OBJ;
#           @IF EXIST DES3C.OBJ DEL DES3C.OBJ

#DES3C.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H
#           $(CC16) $(C16FLAGS) /AC /FoDES3C.OBJ -c $(SRCPATH)\DES3.C

#DES3M.LIB: DES3M.OBJ
#           @IF EXIST DES3M.LIB DEL DES3M.LIB
#           $(LIB16) DES3M.LIB +DES3M.OBJ;
#           @IF EXIST DES3M.OBJ DEL DES3M.OBJ

#DES3M.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H
#           $(CC16) $(C16FLAGS) /AM /FoDES3M.OBJ -c $(SRCPATH)\DES3.C

#DES3L.LIB: DES3L.OBJ
#           @IF EXIST DES3L.LIB DEL DES3L.LIB
#           $(LIB16) DES3L.LIB +DES3L.OBJ;
#           @IF EXIST DES3L.OBJ DEL DES3L.OBJ

#DES3L.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H
#           $(CC16) $(C16FLAGS) /AL /FoDES3L.OBJ -c $(SRCPATH)\DES3.C

#DES3H.LIB: DES3H.OBJ
#           @IF EXIST DES3H.LIB DEL DES3H.LIB
#           $(LIB16) DES3H.LIB +DES3H.OBJ;
#           @IF EXIST DES3H.OBJ DEL DES3H.OBJ

#DES3H.OBJ: $(SRCPATH)\DES3.C $(SRCPATH)\DES3.H
#           $(CC16) $(C16FLAGS) /AH /FoDES3H.OBJ -c $(SRCPATH)\DES3.C


#clean:
#	@if exist *.map del *.map
#        @if exist *.lib del *.lib
#       	@if exist *.obj del *.obj
#       	@if exist *.exe del *.exe
#        @if exist *.bak del *.bak
#       	@if exist *.dll del *.dll
#	@if exist *.res del *.res
#	@if exist *.vbx del *.vbx