# Makefile, for GNU-C 2.6.0
# Note: it seems that -fbaserel is broken, therefore I don't use it. -:(

CPU		= 68000

DISTFILE	= ManualBrowser1_0.lha

EXEC		= ManualBrowser
CSOURCE		= main.c DynamicHost.c
SASSOURCE	= SAS_Startup.a SAS_Sprintf.a
GCCSOURCE	= GCC_Startup.s GCC_Sprintf.s HookEntryA1.s
OTHERSOURCE	= lmkfile Makefile Inlines.h Globals.h
DOCS		= ManualBrowser.guide ManualBrowser.readme COPYING
OTHER		= ManualBrowser.config

DISTFILES1	= $(EXEC) $(CSOURCE) $(SASSOURCE) $(OTHERSOURCE)
DISTFILES2	= $(GCCSOURCE) $(DOCS) $(OTHER)

OBJS		= $(GCCSOURCE:.s=.o) $(CSOURCE:.c=.o)

CC = gcc -m$(CPU)
CPPFLAGS = -DV39 -DUtilityBase=__UtilityBase
CFLAGS = -Wall -Wpointer-arith -Wmissing-prototypes -O2
LDFLAGS = -noixemul -nostartfiles -s
ASFLAGS = -mc$(CPU)

all: $(EXEC)

ManualBrowser: $(OBJS)
	$(CC) $(LDFLAGS) -o $@ $^

main.o:		main.c Globals.h Inlines.h
DynamicHost.o:	DynamicHost.c Globals.h Inlines.h

clean:
	@-Delete $(OBJS) $(EXEC) $(DISTFILE)

dist: $(DISTFILE)

$(DISTFILE): $(DISTFILES1) $(DISTFILES2)
	@-Delete $(DISTFILE)
	lha -a -A -F -r -v0 a $(DISTFILE) $(DISTFILES1)
	lha -a -A -F -r -v0 a $(DISTFILE) $(DISTFILES2)
