#
# ELIB - library of MSC/TC compatible functions
#        and old MASM/TASM compatible too
#
# Currently this makes a library of small model functions,
# for   large model, use  MODEL=l and AMODEL=... -DFUNC_L=1 -DPTR_L=1
# 	medium model, use MODEL=m and AMODEL=... -DFUNC_L=1 -DPTR_L=0
# 	small model, use  MODEL=s and AMODEL=... -DFUNC_L=0 -DPTR_L=0
#
MODEL=m
CFLAGS=-v -y -a -d -f- -G -m$(MODEL) -O -Z -DMSDOS
# Assembler flags
AMODEL=-DFUNC_L=1 -DPTR_L=0
AFLAGS=-mx -t $(AMODEL)

OBJS=intel.obj inchksum.obj qmove.obj qcmp.obj semaphor.obj timeout.obj \
qmsg.obj outhexes.obj outch.obj outhex.obj outs.obj outsn.obj 

# Define PC-specific include file

.c.obj:
	bcc -c $(CFLAGS) $*.c
	tlib $(MODEL)ELIB -+$*

.asm.obj:
	tasm $(AFLAGS) $*.asm
	tlib $(MODEL)ELIB -+$*

$(MODEL)ELIB.LIB: $(OBJS)

install: $(MODEL)elib.lib
	copy $(MODEL)elib.lib $(MODEL)elibw.lib
	tlib $(MODEL)elibw -qmsg.obj -outhexes.obj -outch.obj -outhex.obj \
		-outs.obj -outsn.obj
	del $(MODEL)elib*.bak
	copy $(MODEL)elib*.lib ..\lib

clean:
	del *.obj
	del *.bak
	del *.lib

intel.obj :	intel.asm
inchksum.obj :	inchksum.asm
qmove.obj :	qmove.asm
qcmp.obj :	qcmp.asm
semaphor.obj :	semaphor.asm
timeout.obj :	timeout.c
qmsg.obj :	qmsg.c
outhexes.obj :	outhexes.c
outch.obj :	outch.asm
outhex.obj :	outhex.asm
outs.obj :	outs.asm
outsn.obj :	outsn.asm

