# This file is used to build Frotz for DOS using Borland Turbo C++ 3.00.
# Written with Borland MAKE Version 3.6 in mind.
# The resulting executable runs as a 16-bit program.
#

CC = tcc
CFLAGS = -ml -N -O
TLIB = tlib
CP = copy
RM = del
RENAME = ren


BINNAME = frotz.exe
LIBRARY = frotz.lib

VERSION = "2.51"

VER = -DVERSION=$(VERSION)

DOS_DIR = src\dos
DOS_OBJECTS =   $(DOS_DIR)\bcinit.o \
		$(DOS_DIR)\bcinput.o \
		$(DOS_DIR)\bcmouse.o \
		$(DOS_DIR)\bcpic.o \
		$(DOS_DIR)\bcsample.o \
		$(DOS_DIR)\bcscreen.o \
		$(DOS_DIR)\bctext.o \
		$(DOS_DIR)\bcblorb.o

CORE_DIR = src\common
CORE_OBJECTS =  $(CORE_DIR)\buffer.o \
		$(CORE_DIR)\fastmem.o \
		$(CORE_DIR)\files.o \
		$(CORE_DIR)\getopt.o \
		$(CORE_DIR)\hotkey.o \
		$(CORE_DIR)\input.o \
		$(CORE_DIR)\main.o \
		$(CORE_DIR)\math.o \
		$(CORE_DIR)\object.o \
		$(CORE_DIR)\process.o \
		$(CORE_DIR)\random.o \
		$(CORE_DIR)\redirect.o \
		$(CORE_DIR)\screen.o \
		$(CORE_DIR)\sound.o \
		$(CORE_DIR)\stream.o \
		$(CORE_DIR)\table.o \
		$(CORE_DIR)\text.o \
		$(CORE_DIR)\variable.o \
		$(CORE_DIR)\quetzal.o \
		$(CORE_DIR)\err.o

.SUFFIXES: .c .o .h

all:	frotz

.c.o:
	$(CC) $(CFLAGS) $(VER) -I$(DOS_DIR) -I$(CORE_DIR) -c -o$@ $<
	$(TLIB) $(LIBRARY) +-$@

clean:
	$(RM) $(CORE_DIR)\*.o
	$(RM) $(DOS_DIR)\*.o
	$(RM) *.obj
	$(RM) *.lib
	$(RM) *.exe
	$(RM) *.bak

frotz:	$(DOS_OBJECTS) $(CORE_OBJECTS)
	$(CC) $(CFLAGS) -e$(BINNAME) $(LIBRARY)
