TOPDIR=../
include ${TOPDIR}/Makefile.global

CFLAGS+=-Iinclude -I${TOPDIR}/common

OBJS=asd.o gc.o thread-manager.o source.o sink.o block.o block-queue.o conjunction.o throughput.o namespace.o source-default.o sink-default.o sample-convert.o dsp.o latency.o origin.o byte-counter.o direct.o
LINK_OBJS=ASD.o ../common/COMMON.o sinks/SINKS.o sources/SOURCES.o protocols/PROTOCOLS.o

asd: ${LINK_OBJS}
	${CC} ${CFLAGS} -o asd ${LINK_OBJS} ${LIBS}

all: asd

sources/SOURCES.o:
	cd sources ; make SOURCES.o

sinks/SINKS.o:
	cd sinks ; make SINKS.o

protocols/PROTOCOLS.o:
	cd protocols ; make PROTOCOLS.o

../common/COMMON.o:
	cd ../common ; make COMMON.o

ASD.o: ${OBJS}
	${LD} -r -o ASD.o ${OBJS}

clean:
	rm -f *.o
	rm -f *~
	rm -f include/*~
	rm -f asd
	rm -f core core.*
	cd sources ; make clean
	cd sinks ; make clean
	cd protocols ; make clean

dep:
	${CC} ${CFLAGS} -MM *.c > depend

ifeq (depend,$(wildcard depend))
include depend
endif
