MODNAME=		memcheck
VERSION=		39

LD_FILE=		$(MODNAME).ld
LD_STRIP=		$(LD_FILE).strip
C_COMPILER=		sc
C_COMPILER_OPTS=	OPTTIME OPTIMIZE DATA=FAR NOSTKCHK PARMS=REG NMINC STRMERGE STREQ MCCONS COMNEST UNSCHAR DEBUG=L


ASSEMBLER=		hx68 -a
ASSEMBLER_OPTS=		-csy -i include: -o


LINKER=			slink
LINKER_OPTS=		ADDSYM SC MAP $(MODNAME).map HLSXF PLAIN SWIDTH 16
LINKER_OPTS_STRIP=	ND

C_SOURCES=		main.c window.c private.c info.c
ASM_SOURCES=		stubs.asm misc.asm setmemory.asm \
			allocabs.asm availmem.asm allocvec.asm freevec.asm allocmem.asm freemem.asm

OBJECTS=		main.o window.o private.o info.o \
			stubs.o misc.o setmemory.o \
			allocabs.o availmem.o allocvec.o freevec.o allocmem.o freemem.o

STARTUP=
LIBS=			lib:amiga.lib lib:debug.lib sc:lib/sc.lib


##############################################################################
# Build the stripped load file...
#
$(LD_STRIP):		$(LD_FILE)
			$(LINKER) FROM $(LD_FILE) TO $(LD_STRIP) $(LINKER_OPTS_STRIP)


##############################################################################
# Build the load file...
#
$(LD_FILE):		$(OBJECTS) $(LIBS)
			$(LINKER) <with <
FROM $(STARTUP) $(OBJECTS) TO $(LD_FILE) LIB $(LIBS) $(LINKER_OPTS)
<



##############################################################################
# Default rules...
#
.c.o:
			$(C_COMPILER) $(C_COMPILER_OPTS) $*.c

.asm.o:
			$(ASSEMBLER) $*.asm $(ASSEMBLER_OPTS) $*.o


##############################################################################
# All dependencies...
#
main.o:			main.c globaldata.h memcheck_rev.h
allocmem.o:		allocmem.asm globaldata.h
freemem.o:		freemem.asm globaldata.h
private.o:		private.c globaldata.h
window.o:		window.c globaldata.h memcheck_rev.h
memorymunger.o:		memorymunger.asm
stubs.o:		stubs.asm
allocabs.o:		allocabs.asm

##############################################################################
# Install it locally
#
install:
			-copy $(LD_STRIP) bin:$(MODNAME)

##############################################################################
# Bump the version...
#
version:
			@BumpRev $(VERSION) $(MODNAME)_rev


##############################################################################
# Delete all object files
#
clean:
			-Delete \#?.o
			-Delete $(LD_FILE) \#?.map \#?.bak \#?.lnk

##############################################################################
# Generate prototypes
#
protos:
			-mkproto $(C_SOURCES) to $(MODNAME)_iprotos.h
