
MODNAME	          = prepcard
VERSION		  = 39
RELVERSION	  = 40

REMOTE		  = V39:src/workbench/utilities/prepcard

LD_FILE	          = $(MODNAME).ld
LD_STRIP          = $(MODNAME)

C_COMPILER        = LC
C_COMPILER_OPTS   = -b1 -ms -v -cfistqmc -d1 -O

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

LINKER            = Blink
LINKER_OPTS	  = ADDSYM SMALLCODE SMALLDATA MAP $(MODNAME).map HLSXF PLAIN SWIDTH 16
LINKER_OPTS_STRIP = ND

C_SOURCES   =	main.c \
		ui.c \
		preptext.c \
		check.c \
		commands.c \
		gadgets.c \
		windows.c \
		events.c \
		menus.c \
		childtask.c \
		prep.c

ASM_SOURCES =	tinysprintf.asm \
		startchild.asm

OBJECTS     =	main.o \
		ui.o \
		commands.o \
		check.o \
		tinysprintf.o \
		gadgets.o \
		windows.o \
		events.o \
		childtask.o \
		startchild.o \
		menus.o \
		prep.o \
		preptext.o

STARTUP	    = 
LIBS        = LIB:debug.lib  LIB:lcr.lib LIB:amiga.lib
HFILES	    = prepcard.h prepcard_text.h

##############################################################################
# Build the stripped load file...
#
$(LD_STRIP):	$(LD_FILE)
		$(LINKER) <with <
		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...
#

$(MODNAME)_text.h: $(MODNAME).cd
	@lmk maketext

main.o: main.c $(MODNAME)_rev.rev $(HFILES)
ui.o: ui.c $(HFILES)
check.o: check.c tuples.h $(HFILES)
commands.o: commands.c $(HFILES)
tinysprintf.o: tinysprintf.asm
gadgets.o: gadgets.c $(HFILES)
events.o: events.c $(HFILES)
windows.o: windows.c $(HFILES)
childtask.o: childtask.c $(HFILES)
startchild.o: startchild.asm
menus.o: menus.c $(HFILES)
prep.o: prep.c $(HFILES)
preptext.o: preptext.c $(HFILES)


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


##############################################################################
# Delete all object files
#
clean:
	@delete \#?.o
	@delete $(LD_FILE) $(LD_STRIP) $(MODNAME).map


##############################################################################
# Release the current build to the server...
#
internal:
	@Delete $(REMOTE)/((\#?.(c|h|asm|i|ld|rev|doc|library|cd))|lmkfile)
	@protect ((\#?.(c|h|asm|i|ld|rev|doc|dc))|lmkfile|$(LD_STRIP)) +r quiet
	@copy ((\#?.(c|h|asm|i|ld|rev|doc|library|cd))|lmkfile|$(LD_STRIP)) $(REMOTE)

##############################################################################
# Make new text file
#
maketext:
	@catcomp $(MODNAME).cd CFILE $(MODNAME)_text.h SYMBOLS PREPCARD

