#*
#* (c) Copyright 1992 Commodore-Amiga, Inc.  All rights reserved.
#*
#* This software is provided as-is and is subject to change; no warranties
#* are made.  All use is at your own risk.  No liability or responsibility
#* is assumed.
#*

MODNAME=		hyperbrowser
VERSION=		39

REMOTE=			V:aug/bin

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

C_COMPILER=		lc
C_COMPILER_OPTS=	-. -b0 -cfistq -ms -v -d4 -rr

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

LINKER=			blink
LINKER_OPTS=		ADDSYM SMALLCODE SMALLDATA MAP $(MODNAME).map HLSXF
LINKER_OPTS_STRIP=	ND

C_SOURCES=		main.c dnh.c \
			bitmap.c class.c device.c library.c memory.c screen.c window.c
ASM_SOURCES=		asprintf.asm

OBJECTS=		main.o dnh.o \
			bitmap.o class.o device.o library.o memory.o screen.o window.o \
			asprintf.o

STARTUP=
LIBS=			lib:amiga.lib lib:debug.lib lib:lcr.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 $(MODNAME)_rev.h globaldata.h
dnh.o:			dnh.c globaldata.h
bitmap.o:		bitmap.c globaldata.h
screen.o:		screen.c globaldata.h
window.o:		window.c globaldata.h

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


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


##############################################################################
# Generate prototypes
#
protos:
			-mkproto \#?.c to $(MODNAME)_iprotos.h

##############################################################################
# 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)) +rd quiet
	-Copy \#?.(strip|ld|doc|library) \#?_rev.\#? $(REMOTE)

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

##############################################################################
# Release the current build to the server...
#
release:
	-Copy $(LD_STRIP) bin:$(MODNAME)
	-Copy $(LD_STRIP) V37:aug/bin/$(MODNAME)
	-Copy $(MODNAME).doc V37:aug/doc
	-Copy $(LD_STRIP) V38:aug/bin/$(MODNAME)
	-Copy $(MODNAME).doc V38:aug/doc
	-Copy $(LD_STRIP) V39:aug/bin/$(MODNAME)
	-Copy $(MODNAME).doc V39:aug/doc
	-Copy $(LD_STRIP) eng:shared/amiga/v37/aug/bin/$(MODNAME)
	-Copy $(MODNAME).doc eng:shared/amiga/v37/aug/doc
