Chris@6: Chris@6: SRC_DIR := src Chris@6: Chris@6: VAMPSDK_DIR ?= ../vamp-plugin-sdk Chris@6: Chris@42: QMDSP_DIR := qm-dsp Chris@6: Chris@6: PLUGIN_EXT ?= .so Chris@6: Chris@6: CXX ?= g++ Chris@6: CC ?= gcc Chris@6: AR ?= ar Chris@6: RANLIB ?= ranlib Chris@6: Chris@42: CFLAGS := $(CFLAGS) -I$(QMDSP_DIR)/ext/kissfft -I$(QMDSP_DIR)/ext/kissfft/tools -Dkiss_fft_scalar=double Chris@42: CXXFLAGS := $(CFLAGS) -I. -I$(VAMPSDK_DIR) -I$(QMDSP_DIR) $(CXXFLAGS) Chris@6: Chris@6: LDFLAGS := $(LDFLAGS) Chris@6: PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS) Chris@6: Chris@6: LIBRARY := libtipic.a Chris@45: PLUGIN := tipic$(PLUGIN_EXT) Chris@6: Chris@6: PUBLIC_HEADERS := Chris@6: Chris@39: LIB_HEADERS := \ Chris@39: $(SRC_DIR)/delays.h \ Chris@39: $(SRC_DIR)/filter-a.h \ Chris@39: $(SRC_DIR)/filter-b.h \ Chris@39: $(SRC_DIR)/PitchFilterbank.h \ Chris@39: $(SRC_DIR)/Types.h \ Chris@39: $(SRC_DIR)/CRP.h \ Chris@39: $(SRC_DIR)/LogCompress.h \ Chris@39: $(SRC_DIR)/OctaveFold.h \ Chris@39: $(SRC_DIR)/Resize.h \ Chris@39: $(SRC_DIR)/Chroma.h \ Chris@39: $(SRC_DIR)/FeatureDownsample.h \ Chris@39: $(SRC_DIR)/Quantize.h \ Chris@42: $(SRC_DIR)/CENS.h \ Chris@42: $(QMDSP_DIR)/dsp/signalconditioning/Filter.h \ Chris@42: $(QMDSP_DIR)/dsp/transforms/DCT.h \ Chris@42: $(QMDSP_DIR)/dsp/transforms/FFT.h \ Chris@42: $(QMDSP_DIR)/dsp/rateconversion/Resampler.h \ Chris@42: $(QMDSP_DIR)/maths/MathUtilities.h \ Chris@42: $(QMDSP_DIR)/base/Window.h \ Chris@42: $(QMDSP_DIR)/base/KaiserWindow.h \ Chris@42: $(QMDSP_DIR)/base/SincWindow.h \ Chris@42: $(QMDSP_DIR)/ext/kissfft/tools/kiss_fftr.h Chris@42: Chris@39: LIB_SOURCES := \ Chris@39: $(SRC_DIR)/PitchFilterbank.cpp \ Chris@39: $(SRC_DIR)/CRP.cpp \ Chris@39: $(SRC_DIR)/Chroma.cpp \ Chris@39: $(SRC_DIR)/FeatureDownsample.cpp \ Chris@42: $(SRC_DIR)/CENS.cpp \ Chris@42: $(QMDSP_DIR)/dsp/signalconditioning/Filter.cpp \ Chris@42: $(QMDSP_DIR)/dsp/transforms/DCT.cpp \ Chris@42: $(QMDSP_DIR)/dsp/transforms/FFT.cpp \ Chris@42: $(QMDSP_DIR)/dsp/rateconversion/Resampler.cpp \ Chris@42: $(QMDSP_DIR)/maths/MathUtilities.cpp \ Chris@42: $(QMDSP_DIR)/base/KaiserWindow.cpp \ Chris@42: $(QMDSP_DIR)/base/SincWindow.cpp \ Chris@42: $(QMDSP_DIR)/ext/kissfft/kiss_fft.c \ Chris@42: $(QMDSP_DIR)/ext/kissfft/tools/kiss_fftr.c Chris@39: Chris@6: LIB_OBJECTS := $(LIB_SOURCES:.cpp=.o) Chris@6: LIB_OBJECTS := $(LIB_OBJECTS:.c=.o) Chris@6: Chris@7: PLUGIN_HEADERS := $(SRC_DIR)/TipicVampPlugin.h Chris@10: PLUGIN_SOURCES := $(SRC_DIR)/TipicVampPlugin.cpp $(SRC_DIR)/libmain.cpp Chris@18: PLUGIN_OBJECTS := $(PLUGIN_SOURCES:.cpp=.o) Chris@18: PLUGIN_OBJECTS := $(PLUGIN_OBJECTS:.c=.o) Chris@6: Chris@21: TEST_SOURCES := $(SRC_DIR)/test-filter.cpp $(SRC_DIR)/test-dct.cpp $(SRC_DIR)/test-normalise.cpp Chris@18: TEST_OBJECTS := $(TEST_SOURCES:.cpp=.o) Chris@18: TEST_OBJECTS := $(TEST_OBJECTS:.c=.o) Chris@18: Chris@42: HEADERS := $(PUBLIC_HEADERS) $(LIB_HEADERS) $(PLUGIN_HEADERS) Chris@42: SOURCES := $(PUBLIC_SOURCES) $(LIB_SOURCES) $(PLUGIN_SOURCES) $(TEST_SOURCES) Chris@6: OBJECTS := $(SOURCES:.cpp=.o) Chris@6: OBJECTS := $(OBJECTS:.c=.o) Chris@6: Chris@42: LIBS := $(VAMPSDK_DIR)/libvamp-sdk.a Chris@6: Chris@42: all: $(LIBRARY) $(PLUGIN) Chris@6: Chris@42: $(PLUGIN): $(PLUGIN_OBJECTS) $(LIB_OBJECTS) $(LIBS) Chris@6: $(CXX) -o $@ $^ $(LIBS) $(PLUGIN_LDFLAGS) Chris@6: Chris@42: $(LIBRARY): $(LIB_OBJECTS) Chris@6: $(RM) -f $@ Chris@6: $(AR) cr $@ $^ Chris@6: $(RANLIB) $@ Chris@6: Chris@6: clean: Chris@6: rm -f $(OBJECTS) Chris@6: Chris@6: distclean: clean Chris@6: rm -f $(PLUGIN) Chris@6: Chris@6: depend: Chris@42: makedepend -Y -fMakefile.inc $(SOURCES) $(HEADERS) Chris@42: Chris@6: # DO NOT DELETE Chris@6: Chris@42: src/PitchFilterbank.o: src/PitchFilterbank.h src/Types.h src/delays.h Chris@42: src/PitchFilterbank.o: src/filter-a.h src/filter-b.h Chris@42: src/CRP.o: src/CRP.h src/Types.h src/DCTReduce.h src/LogCompress.h Chris@42: src/CRP.o: src/OctaveFold.h src/Resize.h Chris@42: src/Chroma.o: src/Chroma.h src/Types.h src/LogCompress.h src/OctaveFold.h Chris@42: src/Chroma.o: src/Resize.h Chris@42: src/FeatureDownsample.o: src/FeatureDownsample.h src/Types.h Chris@42: src/CENS.o: src/CENS.h src/Types.h src/Quantize.h src/OctaveFold.h Chris@42: src/CENS.o: src/Resize.h Chris@42: qm-dsp/dsp/signalconditioning/Filter.o: qm-dsp/dsp/signalconditioning/Filter.h Chris@42: qm-dsp/dsp/transforms/DCT.o: qm-dsp/dsp/transforms/DCT.h Chris@42: qm-dsp/dsp/transforms/DCT.o: qm-dsp/dsp/transforms/FFT.h Chris@42: qm-dsp/dsp/transforms/FFT.o: qm-dsp/dsp/transforms/FFT.h Chris@42: qm-dsp/dsp/rateconversion/Resampler.o: qm-dsp/dsp/rateconversion/Resampler.h Chris@42: qm-dsp/maths/MathUtilities.o: qm-dsp/maths/MathUtilities.h Chris@42: qm-dsp/maths/MathUtilities.o: qm-dsp/maths/nan-inf.h Chris@42: qm-dsp/base/KaiserWindow.o: qm-dsp/base/KaiserWindow.h Chris@42: qm-dsp/base/SincWindow.o: qm-dsp/base/SincWindow.h Chris@42: qm-dsp/ext/kissfft/kiss_fft.o: qm-dsp/ext/kissfft/_kiss_fft_guts.h Chris@42: qm-dsp/ext/kissfft/kiss_fft.o: qm-dsp/ext/kissfft/kiss_fft.h Chris@42: qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/tools/kiss_fftr.h Chris@42: qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/kiss_fft.h Chris@42: qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/_kiss_fft_guts.h Chris@24: src/TipicVampPlugin.o: src/TipicVampPlugin.h src/Types.h Chris@26: src/TipicVampPlugin.o: src/PitchFilterbank.h src/CRP.h src/DCTReduce.h Chris@42: src/TipicVampPlugin.o: src/Chroma.h src/CENS.h src/Quantize.h Chris@42: src/TipicVampPlugin.o: src/FeatureDownsample.h Chris@24: src/libmain.o: src/TipicVampPlugin.h src/Types.h Chris@42: src/test-filter.o: qm-dsp/dsp/signalconditioning/Filter.h Chris@42: src/test-dct.o: qm-dsp/dsp/transforms/DCT.h qm-dsp/dsp/transforms/FFT.h Chris@24: src/PitchFilterbank.o: src/Types.h Chris@42: src/CRP.o: src/Types.h src/DCTReduce.h Chris@39: src/Chroma.o: src/Types.h Chris@35: src/FeatureDownsample.o: src/Types.h Chris@39: src/CENS.o: src/Types.h src/Quantize.h Chris@42: qm-dsp/dsp/transforms/DCT.o: qm-dsp/dsp/transforms/FFT.h Chris@42: qm-dsp/maths/MathUtilities.o: qm-dsp/maths/nan-inf.h Chris@42: qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/kiss_fft.h Chris@24: src/TipicVampPlugin.o: src/Types.h