PACKAGE		= innpeer-stats
VERSION		= 0.03

# mtrace is only available in GNU glibc >= 2.1
MTRACE		= @echo use:; echo setenv MALLOC_TRACE logfile; echo ./$(BIN); echo mtrace $(BIN) logfile
# MTRACECOPT	= -DMTRACE

# See http://dmalloc.org/
DMALLOC		= @echo use: ; dmalloc -C -l logfile -i 100 low; echo ./$(BIN); echo less logfile
# DMALLOCLIBS	= -ldmalloc
# DMALLOCCOPT	= -DMALLOC

MALLOCCOPT	= $(MTRACECOPT) $(DMALLOCCOPT)
MALLOCLIBS	= $(DMALLOCLIBS)

## Linux:
GDLIBS		= -lgd
GDFLAGS		=
## FreeBSD:
# GDLIBS	= -lgd -L/usr/local/lib
# GDFLAGS	= -I/usr/local/include -I/usr/local/include/gd
## Solaris:
# GDLIBS	= -L/usr/local/lib -R/usr/local/lib -lgd -lpng -lz -lm
# GDFLAGS	= -I/usr/local/include

# Compile cleanly with 'gcc -pedantic'.
# COPTS		= -pedantic
# COPTS		= -Wstrict-prototypes -O2

# Do not compile cleanly in ANSI mode. Need to define various strxxx()
# functions. Tell me if you *really* need this.
# COPTS		= -ansi

CC		= gcc
CFLAGS		= $(COPTS) -g -Wall $(GDFLAGS) $(MALLOCCOPT)
LIBS		= $(GDLIBS)  $(MALLOCLIBS)

###################################################################
BIN		= innpeer-stats
OBJS		= main.o fio.o grapher.o parser.o compute.o groups.o

all:		$(BIN)

$(PACKAGE):	$(OBJS)
	$(CC) $(CFLAGS) -o $(PACKAGE) $(OBJS) $(LIBS)

clean:
	rm -f *~ *.o $(BIN) logfile

dmalloc:
	${DMALLOC}

mtrace:
	${MTRACE}

distclean:	clean

dist:		distclean
	rm -f ../${PACKAGE}-${VERSION}.tar.gz
	(cd ..; tar zcvf ${PACKAGE}-${VERSION}.tar.gz  --exclude=${PACKAGE}/news.notice\* ${PACKAGE})


depend:
	./makedepend *.c

# DO NOT DELETE THIS LINE
compute.o: compute.c innpeer-stats.h fio.h
fio.o: fio.c fio.h
grapher.o: grapher.c innpeer-stats.h fio.h
groups.o: groups.c innpeer-stats.h fio.h
main.o: main.c innpeer-stats.h fio.h
parser.o: parser.c innpeer-stats.h fio.h
