PREFIX = /usr/local

ARCH = `uname -m`
OPTS = -O6 -ffast-math -funroll-loops -Wall -march=$(ARCH) -mcpu=$(ARCH) 
# OPTS = -g -DDEBUG -D_DEBUG

CC = g++

PLUG = caps
DEST = $(PREFIX)/lib/ladspa

VERSION = 0.2.0
SOURCES = $(wildcard *.cc)
OBJECTS	= $(SOURCES:.cc=.o) 
HEADERS = $(wildcard *.h) $(wildcard dsp/*.h) $(wildcard util/*.h)

CFLAGS = $(OPTS) -I/usr/local/include -DVERSION=\"$(VERSION)\"

PDF = caps-$(VERSION).pdf

-include defines.make

# all systems go ##############################################################

all: depend $(PLUG).so tags
	@cat README.dist

run: all
	sudo python -i test.py

pdf: all tools/make-ps.py
	VERSION=$(VERSION) python tools/make-ps.py | ps2pdf - $(PDF)
	acroread $(PDF) &

$(PLUG).so: $(OBJECTS)
	$(CC) -nostartfiles $(CFLAGS) -shared -o $@ $(OBJECTS)

.cc.s: 
	$(CC) $(CFLAGS) -S $<

.cc.o:
	$(CC) $(CFLAGS) -I/usr/local/include -c $<

tags: $(SOURCES) $(HEADERS)
	@echo making tags
	@-if [ -x /usr/bin/ctags ]; then ctags $(SOURCES) $(HEADERS) ; fi

install: all
	strip $(PLUG).so
	install -d $(DEST)
	install -m 644 $(PLUG).so $(DEST)

fake-install: all
	-rm $(DEST)/$(PLUG).so
	ln -s $(PWD)/$(PLUG).so $(DEST)/$(PLUG).so

uninstall:
	rm $(DEST)/$(PLUG).so

clean:
	rm -f *.o *.so *.s depend

dist: all pdf
	cp $(PDF) /www/quitte/dsp/
	touch /www/quitte/dsp/$(PLUG)_$(VERSION).tar.gz
	tools/make-dist.py $(PLUG) $(VERSION) $(CFLAGS)
	@rm /www/quitte/dsp/$(PLUG)*.tar.gz
	@cp $(PLUG)_$(VERSION).tar.gz /www/quitte/dsp

depend: $(SOURCES) $(HEADERS)
	$(CC) -MM $(DEFINES) $(SOURCES) > depend

-include depend
