##############################################
# Makefile for Synchronet BBS Config Program #
##############################################

# Macros
CC	= bcc
LD	= tlink
INCLUDE = \bc\include;..;..\..\uifc
LIB     = \bc\lib
MODEL	= l
CFLAGS	= -d -C -Y -m$(MODEL) -I$(INCLUDE) -DSCFG
LDFLAGS = /n /c
OBJS	= uifc.obj ..\..\lciol\lciol$(MODEL).obj scfgvars.obj
OVLOBJS = scfg.obj scfgnode.obj scfgxfer.obj scfgnet.obj\
	scfgxtrn.obj scfgsys.obj scfgmsg.obj\
	scfglib.obj scfgmisc.obj
HEADERS = scfg.h ..\..\uifc\uifc.h ..\defs.h

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

# Main EXE Link Rule
scfg.exe: $(OBJS) $(OVLOBJS)
    	@echo Linking $< ...
	$(LD) $(LDFLAGS) @&&!
$(LIB)\c0$(MODEL) $(OBJS) /o $(OVLOBJS)
!, $*, $*, $(LIB)\overlay.lib $(LIB)\c$(MODEL).lib $(LIB)\math$(MODEL).lib\
	$(LIB)\emu.lib

# 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) -c ..\$*.c

# Local Menu Routines
uifc.obj: ..\..\uifc\uifc.c ..\..\uifc\uifc.h
	@echo Compiling ..\..\uifc\$*.c to $*.obj ...
	$(CC) $(CFLAGS) -c ..\..\uifc\$*.c

scfg.obj: 	$(HEADERS)
scfgnode.obj:	$(HEADERS)
scfgmisc.obj:	$(HEADERS)
scfgmsg.obj:	$(HEADERS)
scfgnet.obj:	$(HEADERS)
scfgsys.obj:	$(HEADERS)
scfgxtrn.obj:	$(HEADERS)
scfgxfer.obj:	$(HEADERS)
