MODNAME=		Intellifont
VERSION=		40

REMOTE=			V$(VERSION):src/workbench/system/intellifont
BULLET=			V$(VERSION):src/workbench/libs/bullet
DISKFONT=		V$(VERSION):src/workbench/libs/diskfont

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

C_INCLUDES=		-iinclude:exec -i$(BULLET) -i$(DISKFONT)
C_COMPILER=		LC
C_COMPILER_OPTS=	-. -b -csw -mal -O -r -v $(C_INCLUDES)

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

LINKER=			Blink
LINKER_OPTS=		BATCH BUFSIZE 1024 SMALLCODE SMALLDATA MAP $(MODNAME).map HLSXF DEFINE __main=__tinymain
LINKER_OPTS_STRIP=	ND

C_SOURCES=		main.c support.c resources.c ui.c req.c dir.c help.c env.c \
			bullet.c lzs.c source.c dest.c install.c modify.c \
			fais.c lib.c loader.c update.c bitmap.c

ASM_SOURCES=

OBJECTS=		main.o support.o resources.o ui.o req.o dir.o help.o env.o \
			bullet.o lzs.o source.o dest.o install.o modify.o \
			fais.o lib.o loader.o update.o bitmap.o

STARTUP=		LIB:c.o

LIBS=			LIB:lc.lib LIB:amiga.lib LIB:debug.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...
#
lzs.o:			lzs.c lzs.h
main.o:			main.c $(MODNAME)_rev.h lzs.h
resources.o:		resources.c
support.o:		support.c lzs.h
ui.o:			ui.c help.h lzs.h
req.o:			req.c lzs.h
dir.o:			dir.c dir.h
help.o:			help.c help.h lzs.h
env.o:			env.c
bullet.o:		bullet.c dir.h lzs.h
source.o:		source.c
dest.o:			dest.c lzs.h
install.o:		install.c
modify.o:		modify.c lzs.h
fais.o:			fais.c
lib.o:			lib.c dir.h
loader.o:		loader.c
update.o:		update.c
bitmap.o:		bitmap.c


##############################################################################
# Bump the version...
#
version:
			@BumpRev $(VERSION) $(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))|lmkfile)
	@protect ((\#?.(c|h|asm|i|ld|rev|doc))|lmkfile|$(LD_STRIP)) +r quiet
	@copy ((\#?.(c|h|asm|i|rev|doc|sfd|ld|ld.\#?))|makefile|lmkfile) $(REMOTE)
