###     makefile - for building DSDUMP.EXE and DSSNAP.EXE
#
#	Macros that can be passed on NMAKE command line to affect build
#
#	CFLAGS = flags for C compiler
#           -DDEBUG - turn on debugging output
#           -Zi     - turn on codeview information
#           -Od     - disable optimization for debugging
#
#	LFLAGS = flags for linker
#           /CO     - put codeview information in EXE
#

GCFLAGS = -c -W3 -AS -Gcs -nologo $(CFLAGS)

CC    = cl $(GCFLAGS)
LINK  = link $(LFLAGS) /NOE /MAP /NOLOGO
ASM   = masm

all:    dsdump.exe dssnap.exe test.exe ioctl.exe

clean:
	del *.obj
	del *.exe
	del *.map

#
###
#

dsdump.exe:    dsdump.obj drvinfo.obj
        $(LINK) $*.obj drvinfo.obj,$*.exe,$*.map,slibce.lib;

dsdump.obj:    main.c cvf.h
        $(CC) -Fo$*.obj main.c

#
###
#

dssnap.exe:    dssnap.obj drvinfo.obj
        $(LINK) $*.obj drvinfo.obj, $*.exe, $*.map, slibce.lib;

dssnap.obj:    main.c cvf.h
	$(CC) -DSNAP -Fo$*.obj main.c

#
###
#

test.exe:   test.obj drvinfo.obj
        $(LINK) $*.obj drvinfo.obj, $*.exe, $*.map, slibce.lib;

test.obj:   test.c drvinfo.h
        $(CC) $*.c

drvinfo.obj:    drvinfo.c drvinfo.h
        $(CC) $*.c

#
##
#

ioctl.exe:  ioctl.obj
        $(LINK) $*.obj, $*.exe, $*.map;

ioctl.obj:  ioctl.asm
        $(ASM) $*.asm;
