# Makefile for eggdrop
#
# successfully compiled on the following systems:
#   SunOS
#   NeXT (!)

# define this if using Linux (god forbid!!)
OS = LINUX

# SunOS or NeXT: (they work fine)
#OS = BSD


# better not change anything below this line!
# penalty of death!
#---------------------------------------------------------------------------

CFLAGS = -O -D${OS}
LINTFLAGS = -uh

help:
	@echo Makefile for Eggdrop.
	@echo "To make Eggdrop (irc-bot):"
	@echo "   % make eggdrop"

all: eggdrop

eggdrop.h:
	@echo You do not have the eggdrop source!
	@echo "Type 'make help' for help."
	@exit 1
	
io.o: eggdrop.h io.c
	cc -c ${CFLAGS} io.c

net.o: net.c
	cc -c ${CFLAGS} net.c

msgnotice.o: eggdrop.h msgnotice.c
	cc -c ${CFLAGS} msgnotice.c

chan.o: eggdrop.h chan.c
	cc -c ${CFLAGS} chan.c

reg.o: reg.c
	cc -c ${CFLAGS} reg.c

chanprog.o: eggdrop.h chanprog.c
	cc -c ${CFLAGS} chanprog.c

mem.o: mem.c
	cc -c ${CFLAGS} mem.c

cmds.o: eggdrop.h cmds.c
	cc -c ${CFLAGS} cmds.c

dcc.o: eggdrop.h dcc.c
	cc -c ${CFLAGS} dcc.c

files.o: eggdrop.h files.c
	cc -c ${CFLAGS} files.c

edit.o: eggdrop.h edit.c
	cc -c ${CFLAGS} edit.c

users.o: eggdrop.h users.c
	cc -c ${CFLAGS} users.c

misc.o: eggdrop.h misc.c
	cc -c ${CFLAGS} misc.c

OBJS = io.o net.o msgnotice.o chan.o reg.o chanprog.o mem.o cmds.o dcc.o\
	files.o edit.o users.o misc.o

making: eggdrop.h
	@echo ""
	@awk 'BEGIN {FS="\""} $$1=="char version[81]=" {print $$2}' io.c
	@echo ""

eggdrop: making ${OBJS}
	cc -o eggdrop ${OBJS}
	@echo "Successful compile: Eggdrop."
	@echo ""
	@rm -f making

egg: making ${OBJS}
	cc -o egg ${OBJS}
	@echo "Successful compile: Egg."
	@echo ""
	@rm -f making

lint:
	@echo "Lint doesn't work yet, doofus."
	@echo ""
	@awk 'BEGIN {FS="\""} $$1=="char version[81]=" {print $$2}' io.c
	@echo ""
	lint ${LINTFLAGS} io.c
	lint ${LINTFLAGS} net.c
	lint ${LINTFLAGS} msgnotice.c
	lint ${LINTFLAGS} chan.c
	lint ${LINTFLAGS} reg.c
	lint ${LINTFLAGS} chanprog.c
	lint ${LINTFLAGS} mem.c
	lint ${LINTFLAGS} cmds.c
	lint ${LINTFLAGS} dcc.c
	lint ${LINTFLAGS} files.c
	lint ${LINTFLAGS} users.c
	lint ${LINTFLAGS} misc.c
