Chris@6
|
1
|
Chris@6
|
2 SRC_DIR := src
|
Chris@6
|
3
|
Chris@6
|
4 VAMPSDK_DIR ?= ../vamp-plugin-sdk
|
Chris@6
|
5
|
Chris@42
|
6 QMDSP_DIR := qm-dsp
|
Chris@6
|
7
|
Chris@6
|
8 PLUGIN_EXT ?= .so
|
Chris@6
|
9
|
Chris@6
|
10 CXX ?= g++
|
Chris@6
|
11 CC ?= gcc
|
Chris@6
|
12 AR ?= ar
|
Chris@6
|
13 RANLIB ?= ranlib
|
Chris@6
|
14
|
Chris@42
|
15 CFLAGS := $(CFLAGS) -I$(QMDSP_DIR)/ext/kissfft -I$(QMDSP_DIR)/ext/kissfft/tools -Dkiss_fft_scalar=double
|
Chris@42
|
16 CXXFLAGS := $(CFLAGS) -I. -I$(VAMPSDK_DIR) -I$(QMDSP_DIR) $(CXXFLAGS)
|
Chris@6
|
17
|
Chris@6
|
18 LDFLAGS := $(LDFLAGS)
|
Chris@6
|
19 PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS)
|
Chris@6
|
20
|
Chris@6
|
21 LIBRARY := libtipic.a
|
Chris@45
|
22 PLUGIN := tipic$(PLUGIN_EXT)
|
Chris@6
|
23
|
Chris@6
|
24 PUBLIC_HEADERS :=
|
Chris@6
|
25
|
Chris@39
|
26 LIB_HEADERS := \
|
Chris@39
|
27 $(SRC_DIR)/delays.h \
|
Chris@39
|
28 $(SRC_DIR)/filter-a.h \
|
Chris@39
|
29 $(SRC_DIR)/filter-b.h \
|
Chris@39
|
30 $(SRC_DIR)/PitchFilterbank.h \
|
Chris@39
|
31 $(SRC_DIR)/Types.h \
|
Chris@39
|
32 $(SRC_DIR)/CRP.h \
|
Chris@39
|
33 $(SRC_DIR)/LogCompress.h \
|
Chris@39
|
34 $(SRC_DIR)/OctaveFold.h \
|
Chris@39
|
35 $(SRC_DIR)/Resize.h \
|
Chris@39
|
36 $(SRC_DIR)/Chroma.h \
|
Chris@39
|
37 $(SRC_DIR)/FeatureDownsample.h \
|
Chris@39
|
38 $(SRC_DIR)/Quantize.h \
|
Chris@42
|
39 $(SRC_DIR)/CENS.h \
|
Chris@42
|
40 $(QMDSP_DIR)/dsp/signalconditioning/Filter.h \
|
Chris@42
|
41 $(QMDSP_DIR)/dsp/transforms/DCT.h \
|
Chris@42
|
42 $(QMDSP_DIR)/dsp/transforms/FFT.h \
|
Chris@42
|
43 $(QMDSP_DIR)/dsp/rateconversion/Resampler.h \
|
Chris@42
|
44 $(QMDSP_DIR)/maths/MathUtilities.h \
|
Chris@42
|
45 $(QMDSP_DIR)/base/Window.h \
|
Chris@42
|
46 $(QMDSP_DIR)/base/KaiserWindow.h \
|
Chris@42
|
47 $(QMDSP_DIR)/base/SincWindow.h \
|
Chris@42
|
48 $(QMDSP_DIR)/ext/kissfft/tools/kiss_fftr.h
|
Chris@42
|
49
|
Chris@39
|
50 LIB_SOURCES := \
|
Chris@39
|
51 $(SRC_DIR)/PitchFilterbank.cpp \
|
Chris@39
|
52 $(SRC_DIR)/CRP.cpp \
|
Chris@39
|
53 $(SRC_DIR)/Chroma.cpp \
|
Chris@39
|
54 $(SRC_DIR)/FeatureDownsample.cpp \
|
Chris@42
|
55 $(SRC_DIR)/CENS.cpp \
|
Chris@42
|
56 $(QMDSP_DIR)/dsp/signalconditioning/Filter.cpp \
|
Chris@42
|
57 $(QMDSP_DIR)/dsp/transforms/DCT.cpp \
|
Chris@42
|
58 $(QMDSP_DIR)/dsp/transforms/FFT.cpp \
|
Chris@42
|
59 $(QMDSP_DIR)/dsp/rateconversion/Resampler.cpp \
|
Chris@42
|
60 $(QMDSP_DIR)/maths/MathUtilities.cpp \
|
Chris@42
|
61 $(QMDSP_DIR)/base/KaiserWindow.cpp \
|
Chris@42
|
62 $(QMDSP_DIR)/base/SincWindow.cpp \
|
Chris@42
|
63 $(QMDSP_DIR)/ext/kissfft/kiss_fft.c \
|
Chris@42
|
64 $(QMDSP_DIR)/ext/kissfft/tools/kiss_fftr.c
|
Chris@39
|
65
|
Chris@6
|
66 LIB_OBJECTS := $(LIB_SOURCES:.cpp=.o)
|
Chris@6
|
67 LIB_OBJECTS := $(LIB_OBJECTS:.c=.o)
|
Chris@6
|
68
|
Chris@7
|
69 PLUGIN_HEADERS := $(SRC_DIR)/TipicVampPlugin.h
|
Chris@10
|
70 PLUGIN_SOURCES := $(SRC_DIR)/TipicVampPlugin.cpp $(SRC_DIR)/libmain.cpp
|
Chris@18
|
71 PLUGIN_OBJECTS := $(PLUGIN_SOURCES:.cpp=.o)
|
Chris@18
|
72 PLUGIN_OBJECTS := $(PLUGIN_OBJECTS:.c=.o)
|
Chris@6
|
73
|
Chris@21
|
74 TEST_SOURCES := $(SRC_DIR)/test-filter.cpp $(SRC_DIR)/test-dct.cpp $(SRC_DIR)/test-normalise.cpp
|
Chris@18
|
75 TEST_OBJECTS := $(TEST_SOURCES:.cpp=.o)
|
Chris@18
|
76 TEST_OBJECTS := $(TEST_OBJECTS:.c=.o)
|
Chris@18
|
77
|
Chris@42
|
78 HEADERS := $(PUBLIC_HEADERS) $(LIB_HEADERS) $(PLUGIN_HEADERS)
|
Chris@42
|
79 SOURCES := $(PUBLIC_SOURCES) $(LIB_SOURCES) $(PLUGIN_SOURCES) $(TEST_SOURCES)
|
Chris@6
|
80 OBJECTS := $(SOURCES:.cpp=.o)
|
Chris@6
|
81 OBJECTS := $(OBJECTS:.c=.o)
|
Chris@6
|
82
|
Chris@42
|
83 LIBS := $(VAMPSDK_DIR)/libvamp-sdk.a
|
Chris@6
|
84
|
Chris@42
|
85 all: $(LIBRARY) $(PLUGIN)
|
Chris@6
|
86
|
Chris@42
|
87 $(PLUGIN): $(PLUGIN_OBJECTS) $(LIB_OBJECTS) $(LIBS)
|
Chris@6
|
88 $(CXX) -o $@ $^ $(LIBS) $(PLUGIN_LDFLAGS)
|
Chris@6
|
89
|
Chris@42
|
90 $(LIBRARY): $(LIB_OBJECTS)
|
Chris@6
|
91 $(RM) -f $@
|
Chris@6
|
92 $(AR) cr $@ $^
|
Chris@6
|
93 $(RANLIB) $@
|
Chris@6
|
94
|
Chris@6
|
95 clean:
|
Chris@6
|
96 rm -f $(OBJECTS)
|
Chris@6
|
97
|
Chris@6
|
98 distclean: clean
|
Chris@6
|
99 rm -f $(PLUGIN)
|
Chris@6
|
100
|
Chris@6
|
101 depend:
|
Chris@42
|
102 makedepend -Y -fMakefile.inc $(SOURCES) $(HEADERS)
|
Chris@42
|
103
|
Chris@6
|
104 # DO NOT DELETE
|
Chris@6
|
105
|
Chris@42
|
106 src/PitchFilterbank.o: src/PitchFilterbank.h src/Types.h src/delays.h
|
Chris@42
|
107 src/PitchFilterbank.o: src/filter-a.h src/filter-b.h
|
Chris@42
|
108 src/CRP.o: src/CRP.h src/Types.h src/DCTReduce.h src/LogCompress.h
|
Chris@42
|
109 src/CRP.o: src/OctaveFold.h src/Resize.h
|
Chris@42
|
110 src/Chroma.o: src/Chroma.h src/Types.h src/LogCompress.h src/OctaveFold.h
|
Chris@42
|
111 src/Chroma.o: src/Resize.h
|
Chris@42
|
112 src/FeatureDownsample.o: src/FeatureDownsample.h src/Types.h
|
Chris@42
|
113 src/CENS.o: src/CENS.h src/Types.h src/Quantize.h src/OctaveFold.h
|
Chris@42
|
114 src/CENS.o: src/Resize.h
|
Chris@42
|
115 qm-dsp/dsp/signalconditioning/Filter.o: qm-dsp/dsp/signalconditioning/Filter.h
|
Chris@42
|
116 qm-dsp/dsp/transforms/DCT.o: qm-dsp/dsp/transforms/DCT.h
|
Chris@42
|
117 qm-dsp/dsp/transforms/DCT.o: qm-dsp/dsp/transforms/FFT.h
|
Chris@42
|
118 qm-dsp/dsp/transforms/FFT.o: qm-dsp/dsp/transforms/FFT.h
|
Chris@42
|
119 qm-dsp/dsp/rateconversion/Resampler.o: qm-dsp/dsp/rateconversion/Resampler.h
|
Chris@42
|
120 qm-dsp/maths/MathUtilities.o: qm-dsp/maths/MathUtilities.h
|
Chris@42
|
121 qm-dsp/maths/MathUtilities.o: qm-dsp/maths/nan-inf.h
|
Chris@42
|
122 qm-dsp/base/KaiserWindow.o: qm-dsp/base/KaiserWindow.h
|
Chris@42
|
123 qm-dsp/base/SincWindow.o: qm-dsp/base/SincWindow.h
|
Chris@42
|
124 qm-dsp/ext/kissfft/kiss_fft.o: qm-dsp/ext/kissfft/_kiss_fft_guts.h
|
Chris@42
|
125 qm-dsp/ext/kissfft/kiss_fft.o: qm-dsp/ext/kissfft/kiss_fft.h
|
Chris@42
|
126 qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/tools/kiss_fftr.h
|
Chris@42
|
127 qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/kiss_fft.h
|
Chris@42
|
128 qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/_kiss_fft_guts.h
|
Chris@24
|
129 src/TipicVampPlugin.o: src/TipicVampPlugin.h src/Types.h
|
Chris@26
|
130 src/TipicVampPlugin.o: src/PitchFilterbank.h src/CRP.h src/DCTReduce.h
|
Chris@42
|
131 src/TipicVampPlugin.o: src/Chroma.h src/CENS.h src/Quantize.h
|
Chris@42
|
132 src/TipicVampPlugin.o: src/FeatureDownsample.h
|
Chris@24
|
133 src/libmain.o: src/TipicVampPlugin.h src/Types.h
|
Chris@42
|
134 src/test-filter.o: qm-dsp/dsp/signalconditioning/Filter.h
|
Chris@42
|
135 src/test-dct.o: qm-dsp/dsp/transforms/DCT.h qm-dsp/dsp/transforms/FFT.h
|
Chris@24
|
136 src/PitchFilterbank.o: src/Types.h
|
Chris@42
|
137 src/CRP.o: src/Types.h src/DCTReduce.h
|
Chris@39
|
138 src/Chroma.o: src/Types.h
|
Chris@35
|
139 src/FeatureDownsample.o: src/Types.h
|
Chris@39
|
140 src/CENS.o: src/Types.h src/Quantize.h
|
Chris@42
|
141 qm-dsp/dsp/transforms/DCT.o: qm-dsp/dsp/transforms/FFT.h
|
Chris@42
|
142 qm-dsp/maths/MathUtilities.o: qm-dsp/maths/nan-inf.h
|
Chris@42
|
143 qm-dsp/ext/kissfft/tools/kiss_fftr.o: qm-dsp/ext/kissfft/kiss_fft.h
|
Chris@24
|
144 src/TipicVampPlugin.o: src/Types.h
|