annotate Makefile.inc @ 39:bfd9acbcfd7c

Add CENS features
author Chris Cannam
date Thu, 01 Oct 2015 11:51:54 +0100
parents 474f45cfd3fd
children 00b6ae41efbe
rev   line source
Chris@6 1
Chris@6 2 SRC_DIR := src
Chris@6 3
Chris@6 4 VAMPSDK_DIR ?= ../vamp-plugin-sdk
Chris@6 5
Chris@6 6 CQ_DIR ?= constant-q-cpp
Chris@6 7 BQVEC_DIR ?= bqvec
Chris@6 8
Chris@6 9 PLUGIN_EXT ?= .so
Chris@6 10
Chris@6 11 CXX ?= g++
Chris@6 12 CC ?= gcc
Chris@6 13 AR ?= ar
Chris@6 14 RANLIB ?= ranlib
Chris@6 15
Chris@6 16 CFLAGS := $(CFLAGS)
Chris@7 17 CXXFLAGS := $(CFLAGS) -I. -I$(VAMPSDK_DIR) -I$(CQ_DIR) -I$(BQVEC_DIR) -I$(BQVEC_DIR)/bqvec -I$(CQ_DIR)/src/dsp $(CXXFLAGS)
Chris@6 18
Chris@6 19 LDFLAGS := $(LDFLAGS)
Chris@6 20 PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS)
Chris@6 21
Chris@6 22 LIBRARY := libtipic.a
Chris@6 23 PLUGIN := tipic-vamp$(PLUGIN_EXT)
Chris@6 24
Chris@6 25 PUBLIC_HEADERS :=
Chris@6 26
Chris@39 27 LIB_HEADERS := \
Chris@39 28 $(SRC_DIR)/delays.h \
Chris@39 29 $(SRC_DIR)/filter-a.h \
Chris@39 30 $(SRC_DIR)/filter-b.h \
Chris@39 31 $(SRC_DIR)/Filter.h \
Chris@39 32 $(SRC_DIR)/PitchFilterbank.h \
Chris@39 33 $(SRC_DIR)/DCT.h \
Chris@39 34 $(SRC_DIR)/Types.h \
Chris@39 35 $(SRC_DIR)/CRP.h \
Chris@39 36 $(SRC_DIR)/Normalise.h \
Chris@39 37 $(SRC_DIR)/LogCompress.h \
Chris@39 38 $(SRC_DIR)/OctaveFold.h \
Chris@39 39 $(SRC_DIR)/Resize.h \
Chris@39 40 $(SRC_DIR)/Chroma.h \
Chris@39 41 $(SRC_DIR)/FeatureDownsample.h \
Chris@39 42 $(SRC_DIR)/Quantize.h \
Chris@39 43 $(SRC_DIR)/CENS.h
Chris@39 44
Chris@39 45 LIB_SOURCES := \
Chris@39 46 $(SRC_DIR)/Filter.cpp \
Chris@39 47 $(SRC_DIR)/PitchFilterbank.cpp \
Chris@39 48 $(SRC_DIR)/DCT.cpp \
Chris@39 49 $(SRC_DIR)/CRP.cpp \
Chris@39 50 $(SRC_DIR)/Normalise.cpp \
Chris@39 51 $(SRC_DIR)/Chroma.cpp \
Chris@39 52 $(SRC_DIR)/FeatureDownsample.cpp \
Chris@39 53 $(SRC_DIR)/CENS.cpp
Chris@39 54
Chris@6 55 LIB_OBJECTS := $(LIB_SOURCES:.cpp=.o)
Chris@6 56 LIB_OBJECTS := $(LIB_OBJECTS:.c=.o)
Chris@6 57
Chris@7 58 PLUGIN_HEADERS := $(SRC_DIR)/TipicVampPlugin.h
Chris@10 59 PLUGIN_SOURCES := $(SRC_DIR)/TipicVampPlugin.cpp $(SRC_DIR)/libmain.cpp
Chris@18 60 PLUGIN_OBJECTS := $(PLUGIN_SOURCES:.cpp=.o)
Chris@18 61 PLUGIN_OBJECTS := $(PLUGIN_OBJECTS:.c=.o)
Chris@6 62
Chris@6 63 BQVEC_HEADERS := $(BQVEC_DIR)/Allocators.h $(BQVEC_DIR)/Restrict.h $(BQVEC_DIR)/VectorOps.h
Chris@6 64 BQVEC_SOURCES := $(BQVEC_DIR)/src/Allocators.cpp
Chris@18 65 BQVEC_OBJECTS := $(BQVEC_SOURCES:.cpp=.o)
Chris@18 66 BQVEC_OBJECTS := $(BQVEC_OBJECTS:.c=.o)
Chris@18 67
Chris@21 68 TEST_SOURCES := $(SRC_DIR)/test-filter.cpp $(SRC_DIR)/test-dct.cpp $(SRC_DIR)/test-normalise.cpp
Chris@18 69 TEST_OBJECTS := $(TEST_SOURCES:.cpp=.o)
Chris@18 70 TEST_OBJECTS := $(TEST_OBJECTS:.c=.o)
Chris@18 71
Chris@18 72 OTHER_OBJECTS := $(CQ_DIR)/src/dsp/FFT.o $(CQ_DIR)/src/ext/kissfft/kiss_fft.o $(CQ_DIR)/src/ext/kissfft/tools/kiss_fftr.o
Chris@6 73
Chris@6 74 HEADERS := $(PUBLIC_HEADERS) $(LIB_HEADERS) $(PLUGIN_HEADERS) $(BQVEC_HEADERS)
Chris@18 75 SOURCES := $(PUBLIC_SOURCES) $(LIB_SOURCES) $(PLUGIN_SOURCES) $(BQVEC_SOURCES) $(TEST_SOURCES)
Chris@6 76 OBJECTS := $(SOURCES:.cpp=.o)
Chris@6 77 OBJECTS := $(OBJECTS:.c=.o)
Chris@6 78
Chris@6 79 LIBS := $(CQ_DIR)/libcq.a $(VAMPSDK_DIR)/libvamp-sdk.a
Chris@6 80
Chris@18 81 all: constant-q-cpp $(LIBRARY) $(PLUGIN) tests
Chris@6 82
Chris@6 83 .PHONY: constant-q-cpp
Chris@6 84 constant-q-cpp:
Chris@6 85 $(MAKE) -C $@ -f Makefile$(MAKEFILE_EXT) libcq.a
Chris@6 86
Chris@18 87 $(PLUGIN): $(PLUGIN_OBJECTS) $(LIB_OBJECTS) $(BQVEC_OBJECTS) $(LIBS)
Chris@6 88 $(CXX) -o $@ $^ $(LIBS) $(PLUGIN_LDFLAGS)
Chris@6 89
Chris@18 90 $(LIBRARY): $(LIB_OBJECTS) $(BQVEC_OBJECTS) $(OTHER_OBJECTS)
Chris@6 91 $(RM) -f $@
Chris@6 92 $(AR) cr $@ $^
Chris@6 93 $(RANLIB) $@
Chris@6 94
Chris@18 95 .PHONY: tests
Chris@21 96 tests: test-dct test-filter test-normalise
Chris@18 97 ./test-dct
Chris@18 98 ./test-filter
Chris@21 99 ./test-normalise
Chris@18 100
Chris@18 101 test-dct: $(TEST_OBJECTS) $(LIBRARY)
Chris@18 102 $(CXX) -o $@ src/test-dct.o $(LIBRARY)
Chris@18 103
Chris@18 104 test-filter: $(TEST_OBJECTS) $(LIBRARY)
Chris@18 105 $(CXX) -o $@ src/test-filter.o $(LIBRARY)
Chris@18 106
Chris@21 107 test-normalise: $(TEST_OBJECTS) $(LIBRARY)
Chris@21 108 $(CXX) -o $@ src/test-normalise.o $(LIBRARY)
Chris@21 109
Chris@6 110 clean:
Chris@6 111 rm -f $(OBJECTS)
Chris@6 112 $(MAKE) -C constant-q-cpp -f Makefile$(MAKEFILE_EXT) clean
Chris@6 113
Chris@6 114 distclean: clean
Chris@6 115 rm -f $(PLUGIN)
Chris@6 116
Chris@6 117 depend:
Chris@6 118 makedepend -I$(BQVEC_DIR) -Y -fMakefile.inc $(SOURCES) $(HEADERS)
Chris@6 119
Chris@6 120 # DO NOT DELETE
Chris@6 121
Chris@6 122 src/Filter.o: src/Filter.h bqvec/bqvec/Restrict.h bqvec/bqvec/VectorOps.h
Chris@6 123 src/Filter.o: bqvec/bqvec/Restrict.h bqvec/bqvec/Allocators.h
Chris@24 124 src/PitchFilterbank.o: src/PitchFilterbank.h src/Types.h src/Filter.h
Chris@6 125 src/PitchFilterbank.o: bqvec/bqvec/Restrict.h src/delays.h src/filter-a.h
Chris@6 126 src/PitchFilterbank.o: src/filter-b.h
Chris@24 127 src/DCT.o: src/DCT.h
Chris@26 128 src/CRP.o: src/CRP.h src/Types.h src/DCTReduce.h src/DCT.h src/Normalise.h
Chris@26 129 src/CRP.o: src/LogCompress.h src/OctaveFold.h src/Resize.h
Chris@24 130 src/Normalise.o: src/Normalise.h
Chris@39 131 src/Chroma.o: src/Chroma.h src/Types.h src/Normalise.h src/LogCompress.h
Chris@39 132 src/Chroma.o: src/OctaveFold.h src/Resize.h
Chris@35 133 src/FeatureDownsample.o: src/FeatureDownsample.h src/Types.h src/Filter.h
Chris@39 134 src/FeatureDownsample.o: bqvec/bqvec/Restrict.h src/Normalise.h
Chris@39 135 src/CENS.o: src/CENS.h src/Types.h src/Quantize.h src/Normalise.h
Chris@39 136 src/CENS.o: src/OctaveFold.h src/Resize.h
Chris@24 137 src/TipicVampPlugin.o: src/TipicVampPlugin.h src/Types.h
Chris@26 138 src/TipicVampPlugin.o: src/PitchFilterbank.h src/CRP.h src/DCTReduce.h
Chris@39 139 src/TipicVampPlugin.o: src/DCT.h src/Chroma.h src/CENS.h src/Quantize.h
Chris@39 140 src/TipicVampPlugin.o: src/FeatureDownsample.h bqvec/bqvec/Range.h
Chris@39 141 src/TipicVampPlugin.o: bqvec/bqvec/VectorOps.h bqvec/bqvec/Restrict.h
Chris@24 142 src/libmain.o: src/TipicVampPlugin.h src/Types.h
Chris@24 143 src/test-filter.o: src/Filter.h bqvec/bqvec/Restrict.h
Chris@24 144 src/test-dct.o: src/DCT.h
Chris@24 145 src/test-normalise.o: src/Normalise.h
Chris@6 146 src/Filter.o: bqvec/bqvec/Restrict.h
Chris@24 147 src/PitchFilterbank.o: src/Types.h
Chris@26 148 src/CRP.o: src/Types.h src/DCTReduce.h src/DCT.h
Chris@39 149 src/Chroma.o: src/Types.h
Chris@35 150 src/FeatureDownsample.o: src/Types.h
Chris@39 151 src/CENS.o: src/Types.h src/Quantize.h
Chris@24 152 src/TipicVampPlugin.o: src/Types.h