NAME=ant
VERSION=0.0.1
DISTDIR=$(NAME)-$(VERSION)

# to be commented out
#DEBUG=1
#PROFILE=1

CFLAGS=-Wall -D_GNU_SOURCE -DVERSION='"$(VERSION)"' `gtk-config --cflags`
# -DFAST_ULAW_CONVERSION
CC=cc
LDFLAGS=-lm `gtk-config --libs`

ifdef DEBUG
	CFLAGS:=$(CFLAGS) -ggdb -DDEBUG
else
	CFLAGS:=$(CFLAGS) -O3
endif

ifdef PROFILE
	CFLAGS:=$(CFLAGS) -pg -a
	LDFLAGS:=$(LDFLAGS) -pg
endif

MALLOC_TRACE=mtrace.log

SRCS=ant.c sound.c isdn.c mediation.c g711.c util.c gtk.c runtime.c
HSRC=sound.h isdn.h mediation.h g711.h util.h gtk.h runtime.h
OBJS=$(SRCS:.c=.o)
DISTFILES=$(SRCS) $(HSRC) Makefile TODO COPYING README

all: ant

ant: $(OBJS)
	$(CC) $(LDFLAGS) -o $@ $(OBJS)

%.o: %.c Makefile
	$(CC) $(CFLAGS) -c $<

mtrace: ant
	MALLOC_TRACE=$(MALLOC_TRACE); export MALLOC_TRACE; ./ant
	mtrace ./ant $(MALLOC_TRACE)

clean:
	rm -Rf ant *.o *.tar.gz $(DISTDIR) *~ .depend* mtrace.log gmon.out bb.out

dist: $(DISTDIR).tar.gz

$(DISTDIR).tar.gz: $(DISTDIR)
	tar cfz $@ $^

$(DISTDIR): $(DISTFILES)
	rm -Rf $@
	mkdir $@
	cp $^ $@

.depend: $(SRCS)
	touch $@
	makedepend -f.depend -- $(CFLAGS) -- $(SRCS)

include .depend
