
###############################################################################
#
#	BORLAND C++
#
#	makefile for 16 Bit UltraSound libraries & example code
#
###############################################################################
#
#	This makefile will build the objects in sub-directories.
#	The libraries are built in the current directory from those objs.
#	Make sure these subdirs exist before making the particular model.
#
#	largeb	- Borlandc large model
#	mediumb	- Borlandc medium model
#	smallb	- Borlandc small model
#	tinyb	- Borlandc tiny model
#
###############################################################################
INCS =c:\bc\include;..\incs
DEBUG = -v
COMPILER = b
# DEFINE TINYONLY TO 0 TO ONLY GET LIB OBJS PUT IN TINY LIBRARIES ...
TINYONLY=0

!if $(SIZE) == 0
TYPE=large$(COMPILER)
MODEL=l
LIBMODEL=l

!elif $(SIZE) == 1
TYPE=medium$(COMPILER)
MODEL=m
LIBMODEL=m

!elif $(SIZE) == 2
TYPE=small$(COMPILER)
MODEL=s
LIBMODEL=s

!elif $(SIZE) == 3
TYPE=tiny$(COMPILER)
MODEL=t
LIBMODEL=s
!endif

###############################################################################
#            Transformation rules
# Compile all .c files with the Borland C++ compiler
# SOME MODEL .............
###############################################################################
.path.obj = .\$(TYPE)

.c.obj:
!if $(SIZE) == 3
	bcc $(DEBUG) -zGDGROUP -zPDGROUP -zSDGROUP -I$(INCS) -c -k- -Z -O -j12 -m$(MODEL) -o$(TYPE)\$&.obj $&.c
!else
	bcc $(DEBUG) -k- -Z -c -O -j12 -m$(MODEL) -I$(INCS) -o$(TYPE)\$&.obj $&.c
!endif

.asm.obj:
	bcc $(DEBUG) -k- -Z -c -O -j7 -B -m$(MODEL) -TdMSIZE$(SIZE) $&.asm
	@copy $&.obj $(TYPE)\$&.obj
	@del $&.obj

.autodepend

all: ult16$(MODEL)$(COMPILER).lib

###############################################################################
#
# 16 Bit files
#
###############################################################################
FILE01=	vars16.obj open16.obj irq16.obj handle16.obj timer16.obj probe16.obj 
FILE02= freq16p.obj freq16r.obj sample16.obj util16.obj play16.obj mixer16.obj

###############################################################################

ult16$(MODEL)$(COMPILER).lib: $(FILE01) $(FILE02)
	cd $(TYPE)
	tlib ..\ult16$(MODEL)$(COMPILER).lib @..\ultra16.dat
	cd ..

lint:
	del lint.tmp
	C:\LINT\LINT +fxc -e537 -e785 +v -iC:\LINT STD.LNT lint.lnt -od(proto.xxx) >lint.tmp

clean:
	del ult16$(MODEL)$(COMPILER).lib
	cd $(TYPE)
	del *.obj
	cd ..
