#
# Makefile for Sapphire
# By Christopher D. Granz
#

CC        = gcc
PROG      = ../../bin/sapphire

SYS_DEF   = -D_sysBSD
GGDB      = -ggdb
LIB       = -lkvm
OPTIONS   = -fsigned-char
DEFINES   = $(SYS_DEF) -DSERVER -DDEBUG
FLAGS     = -O3 -Wall $(OPTIONS) -I../include -I- $(DEFINES) $(GGDB)
OFILES    = main.o globals.o signal.o comm.o mud_comm.o memory.o fileio.o \
            log.o text.o random.o parse.o compare.o load.o update.o lookup.o \
            misc.o script.o std_cmd.o blr_cmd.o imp_cmd.o olc_save.o \
            olc_cmd.o shell.o child.o plr_save.o snprintf.o
EM_OFILES = em/emerald.o em/interp.o em/array.o em/error.o em/builtin.o \
            em/ifunc.o

README    = ../../README

$(PROG): $(OFILES)
	cd em; $(MAKE)
	rm -f $(PROG)
	$(CC) -o $(PROG) $(OFILES) $(EM_OFILES) $(LIB)
#	cat $(README)

$(OFILES) $(EM_OFILES):
	$(CC) -c -g $(FLAGS) $<

clean:
	rm -f *.o
	cd em; $(MAKE) clean
