###############################
# Makefile for Synchronet UTI #
# For use with Turbo C++      #
# Tabstop=8		      #
###############################

# Macros
CC	= bcc
LD	= tlink
INCLUDE = \bc\include;.. 
LIB     = \bc\lib
MODEL	= l
CFLAGS	= -d -C -m$(MODEL) -I$(INCLUDE)
LFLAGS  = /n /c
OBJS	= scfgvars.obj scfglib.obj uti.obj
HEADERS = ..\sbbs.h ..\defs.h ..\scfgvars.c

# Implicit C Compile Rule
.c.obj:
        @echo Compiling $*.c to $*.obj ...
	$(CC) $(CFLAGS) -o$*.obj -c $*.c

all: utilist.exe utihigh.exe utiexprt.exe utilstrd.exe utiimprt.exe utiver.exe

utilist.exe: $(OBJS) utilist.obj
    	@echo Linking $< ...
	$(LD) $(LFLAGS) @&&!
$(LIB)\c0$(MODEL) $(OBJS) utilist.obj
!, $*, $*, $(LIB)\c$(MODEL).lib $(LIB)\math$(MODEL).lib $(LIB)\emu.lib

utihigh.exe: $(OBJS) utihigh.obj
    	@echo Linking $< ...
	$(LD) $(LFLAGS) @&&!
$(LIB)\c0$(MODEL) $(OBJS) utihigh.obj
!, $*, $*, $(LIB)\c$(MODEL).lib $(LIB)\math$(MODEL).lib $(LIB)\emu.lib

utiexprt.exe: $(OBJS) utiexprt.obj
    	@echo Linking $< ...
	$(LD) $(LFLAGS) @&&!
$(LIB)\c0$(MODEL) $(OBJS) utiexprt.obj
!, $*, $*, $(LIB)\c$(MODEL).lib $(LIB)\math$(MODEL).lib $(LIB)\emu.lib

utiimprt.exe: $(OBJS) utiimprt.obj
    	@echo Linking $< ...
	$(LD) $(LFLAGS) @&&!
$(LIB)\c0$(MODEL) $(OBJS) utiimprt.obj
!, $*, $*, $(LIB)\c$(MODEL).lib $(LIB)\math$(MODEL).lib $(LIB)\emu.lib

utilstrd.exe: $(OBJS) utilstrd.obj
    	@echo Linking $< ...
	$(LD) $(LFLAGS) @&&!
$(LIB)\c0$(MODEL) $(OBJS) utilstrd.obj
!, $*, $*, $(LIB)\c$(MODEL).lib $(LIB)\math$(MODEL).lib $(LIB)\emu.lib

utiver.exe: uti.h utiver.obj utiver.c
	bcc utiver.c

# Global Variables
scfgvars.obj: ..\scfgvars.c ..\defs.h 
	@echo Compiling ..\$*.c to $*.obj ...
	$(CC) $(CFLAGS) -c ..\$*.c

# Shared Functions
scfglib.obj: ..\sbbs.h ..\defs.h ..\scfglib.c ..\scfgvars.c
	@echo Compiling ..\$*.c to $*.obj ...
        $(CC) $(CFLAGS) @&&!
-DNO_LIBS_CFG
-DNO_DIRS_CFG
-DNO_TEXT_CFG
-DNO_XTRN_CFG
-DNO_XFER_CFG
-DNO_QNET_CFG
-DNO_FNET_CFG
-DNO_PNET_CFG
-DNO_CMDS_CFG
-DNO_CHAN_CFG
! -c ..\$*.c

utiimprt.obj:	uti.h
utiexprt.obj:	uti.h
utilstrd.obj:	uti.h
utihigh.obj:	uti.h
utilist.obj:	uti.h

