c@56
|
1
|
c@121
|
2 LIB_DIR := src
|
c@121
|
3 INC_DIR := cq
|
c@121
|
4 TEST_DIR := test
|
c@56
|
5 VAMP_DIR := vamp
|
c@122
|
6 KFFT_DIR := src/ext/kissfft
|
c@56
|
7
|
c@56
|
8 VAMPSDK_DIR ?= ../vamp-plugin-sdk
|
c@56
|
9
|
c@56
|
10 PLUGIN_EXT ?= .so
|
c@56
|
11
|
c@56
|
12 CXX ?= g++
|
c@56
|
13 CC ?= gcc
|
c@158
|
14 AR ?= ar
|
c@158
|
15 RANLIB ?= ranlib
|
c@158
|
16
|
c@147
|
17 #VALGRIND ?= valgrind -q
|
c@56
|
18
|
c@122
|
19 GENERAL_FLAGS := -I. -I$(VAMPSDK_DIR) -I$(INC_DIR) -I$(LIB_DIR) -I$(KFFT_DIR) -I$(KFFT_DIR)/tools -Dkiss_fft_scalar=double
|
c@131
|
20
|
c@122
|
21 CFLAGS := $(GENERAL_FLAGS) $(CFLAGS)
|
c@122
|
22 CXXFLAGS := $(GENERAL_FLAGS) $(CXXFLAGS)
|
c@56
|
23
|
c@56
|
24 LDFLAGS := $(LDFLAGS)
|
c@56
|
25 PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS)
|
c@56
|
26 TEST_LDFLAGS := $(LDFLAGS) -lboost_unit_test_framework
|
c@94
|
27 PF_LDFLAGS := $(LDFLAGS) -lsndfile
|
c@56
|
28
|
c@124
|
29 LIB := libcq.a
|
c@56
|
30 PLUGIN := cqvamp$(PLUGIN_EXT)
|
c@121
|
31 PF := $(TEST_DIR)/processfile
|
c@56
|
32
|
c@124
|
33 LIB_HEADERS := \
|
c@124
|
34 $(INC_DIR)/CQBase.h \
|
c@125
|
35 $(INC_DIR)/CQKernel.h \
|
c@124
|
36 $(INC_DIR)/ConstantQ.h \
|
c@124
|
37 $(INC_DIR)/CQSpectrogram.h \
|
c@124
|
38 $(INC_DIR)/CQInverse.h \
|
c@170
|
39 $(INC_DIR)/Chromagram.h \
|
c@170
|
40 $(LIB_DIR)/Pitch.h \
|
c@124
|
41 $(LIB_DIR)/dsp/FFT.h \
|
c@124
|
42 $(LIB_DIR)/dsp/KaiserWindow.h \
|
c@124
|
43 $(LIB_DIR)/dsp/MathUtilities.h \
|
c@124
|
44 $(LIB_DIR)/dsp/nan-inf.h \
|
c@124
|
45 $(LIB_DIR)/dsp/Resampler.h \
|
c@124
|
46 $(LIB_DIR)/dsp/SincWindow.h \
|
c@124
|
47 $(LIB_DIR)/dsp/Window.h \
|
c@124
|
48 $(KFFT_DIR)/kiss_fft.h \
|
c@124
|
49 $(KFFT_DIR)/tools/kiss_fftr.h
|
c@56
|
50
|
c@124
|
51 LIB_SOURCES := \
|
c@124
|
52 $(LIB_DIR)/CQKernel.cpp \
|
c@124
|
53 $(LIB_DIR)/ConstantQ.cpp \
|
c@124
|
54 $(LIB_DIR)/CQSpectrogram.cpp \
|
c@124
|
55 $(LIB_DIR)/CQInverse.cpp \
|
c@170
|
56 $(LIB_DIR)/Chromagram.cpp \
|
c@170
|
57 $(LIB_DIR)/Pitch.cpp \
|
c@124
|
58 $(LIB_DIR)/dsp/FFT.cpp \
|
c@124
|
59 $(LIB_DIR)/dsp/KaiserWindow.cpp \
|
c@124
|
60 $(LIB_DIR)/dsp/MathUtilities.cpp \
|
c@124
|
61 $(LIB_DIR)/dsp/Resampler.cpp \
|
c@124
|
62 $(LIB_DIR)/dsp/SincWindow.cpp \
|
c@124
|
63 $(KFFT_DIR)/kiss_fft.c \
|
c@124
|
64 $(KFFT_DIR)/tools/kiss_fftr.c
|
c@124
|
65
|
c@124
|
66 VAMP_HEADERS := \
|
c@124
|
67 $(VAMP_DIR)/CQVamp.h \
|
c@170
|
68 $(VAMP_DIR)/CQChromaVamp.h
|
c@124
|
69
|
c@124
|
70 VAMP_SOURCES := \
|
c@124
|
71 $(VAMP_DIR)/CQVamp.cpp \
|
c@124
|
72 $(VAMP_DIR)/CQChromaVamp.cpp \
|
c@170
|
73 $(VAMP_DIR)/libmain.cpp
|
c@170
|
74
|
c@131
|
75 TEST_SOURCES := \
|
c@131
|
76 $(TEST_DIR)/TestFFT.cpp \
|
c@131
|
77 $(TEST_DIR)/TestMathUtilities.cpp \
|
c@131
|
78 $(TEST_DIR)/TestResampler.cpp \
|
c@142
|
79 $(TEST_DIR)/TestWindow.cpp \
|
c@142
|
80 $(TEST_DIR)/TestCQKernel.cpp \
|
c@142
|
81 $(TEST_DIR)/TestCQFrequency.cpp \
|
c@142
|
82 $(TEST_DIR)/TestCQTime.cpp
|
c@131
|
83
|
c@56
|
84 HEADERS := $(LIB_HEADERS) $(VAMP_HEADERS)
|
c@56
|
85 SOURCES := $(LIB_SOURCES) $(VAMP_SOURCES)
|
c@131
|
86
|
c@124
|
87 LIB_OBJECTS := $(LIB_SOURCES:.cpp=.o)
|
c@124
|
88 LIB_OBJECTS := $(LIB_OBJECTS:.c=.o)
|
c@131
|
89
|
c@56
|
90 OBJECTS := $(SOURCES:.cpp=.o)
|
c@122
|
91 OBJECTS := $(OBJECTS:.c=.o)
|
c@56
|
92
|
c@134
|
93 TEST_OBJECTS := $(TEST_SOURCES:.cpp=.o)
|
c@131
|
94 TEST_TARGETS := $(TEST_SOURCES:.cpp=)
|
c@94
|
95
|
c@121
|
96 PF_SOURCES := $(TEST_DIR)/processfile.cpp
|
c@94
|
97 PF_OBJECTS := $(PF_SOURCES:.cpp=.o) $(OBJECTS)
|
c@56
|
98
|
c@121
|
99 LIBS := $(VAMPSDK_DIR)/libvamp-sdk.a -lpthread
|
c@56
|
100
|
c@158
|
101 default: all
|
c@158
|
102
|
c@169
|
103 all: libs $(PF) test
|
c@158
|
104
|
c@158
|
105 libs: $(LIB) $(PLUGIN)
|
c@158
|
106
|
c@158
|
107 test: libs $(TEST_TARGETS)
|
c@142
|
108 for t in $(TEST_TARGETS); do echo; echo "Running $$t"; $(VALGRIND) ./"$$t" || exit 1; done && echo && $(VALGRIND) "./test/test-inverse.sh" && echo 'Tests complete'
|
c@56
|
109
|
c@56
|
110 $(PLUGIN): $(OBJECTS)
|
c@56
|
111 $(CXX) -o $@ $^ $(LIBS) $(PLUGIN_LDFLAGS)
|
c@56
|
112
|
c@94
|
113 $(PF): $(PF_OBJECTS)
|
c@94
|
114 $(CXX) -o $@ $^ $(LIBS) $(PF_LDFLAGS)
|
c@94
|
115
|
c@124
|
116 $(LIB): $(LIB_OBJECTS)
|
c@161
|
117 $(RM) -f $@
|
c@158
|
118 $(AR) cr $@ $^
|
c@158
|
119 $(RANLIB) $@
|
c@124
|
120
|
c@168
|
121 $(TEST_DIR)/Test%: $(TEST_DIR)/Test%.o
|
c@131
|
122 $(CXX) -o $@ $^ $(LIB) $(LIBS) $(TEST_LDFLAGS)
|
c@131
|
123
|
c@56
|
124 clean:
|
c@94
|
125 rm -f $(OBJECTS) $(TEST_OBJECTS) $(PF_OBJECTS)
|
c@56
|
126
|
c@56
|
127 distclean: clean
|
c@134
|
128 rm -f $(PLUGIN) $(TEST_TARGETS)
|
c@56
|
129
|
c@56
|
130 depend:
|
c@94
|
131 makedepend -Y -fMakefile.inc $(SOURCES) $(TEST_SOURCES) $(PF_SOURCES) $(HEADERS)
|
c@56
|
132
|
c@58
|
133 # DO NOT DELETE
|
c@58
|
134
|
c@125
|
135 src/CQKernel.o: src/dsp/MathUtilities.h src/dsp/nan-inf.h src/dsp/FFT.h
|
c@125
|
136 src/CQKernel.o: src/dsp/Window.h
|
c@125
|
137 src/ConstantQ.o: src/dsp/Resampler.h src/dsp/MathUtilities.h
|
c@121
|
138 src/ConstantQ.o: src/dsp/nan-inf.h src/dsp/FFT.h
|
c@121
|
139 src/CQInverse.o: src/dsp/Resampler.h src/dsp/MathUtilities.h
|
c@121
|
140 src/CQInverse.o: src/dsp/nan-inf.h src/dsp/FFT.h
|
c@170
|
141 src/Chromagram.o: src/Pitch.h
|
c@170
|
142 src/Pitch.o: src/Pitch.h
|
c@125
|
143 src/dsp/FFT.o: src/dsp/FFT.h src/dsp/MathUtilities.h src/dsp/nan-inf.h
|
c@125
|
144 src/dsp/KaiserWindow.o: src/dsp/KaiserWindow.h src/dsp/MathUtilities.h
|
c@125
|
145 src/dsp/KaiserWindow.o: src/dsp/nan-inf.h
|
c@125
|
146 src/dsp/MathUtilities.o: src/dsp/MathUtilities.h src/dsp/nan-inf.h
|
c@125
|
147 src/dsp/Resampler.o: src/dsp/Resampler.h src/dsp/MathUtilities.h
|
c@125
|
148 src/dsp/Resampler.o: src/dsp/nan-inf.h src/dsp/KaiserWindow.h
|
c@125
|
149 src/dsp/Resampler.o: src/dsp/SincWindow.h
|
c@125
|
150 src/dsp/SincWindow.o: src/dsp/SincWindow.h
|
c@125
|
151 src/ext/kissfft/kiss_fft.o: src/ext/kissfft/_kiss_fft_guts.h
|
c@125
|
152 src/ext/kissfft/kiss_fft.o: src/ext/kissfft/kiss_fft.h
|
c@125
|
153 src/ext/kissfft/tools/kiss_fftr.o: src/ext/kissfft/tools/kiss_fftr.h
|
c@125
|
154 src/ext/kissfft/tools/kiss_fftr.o: src/ext/kissfft/kiss_fft.h
|
c@125
|
155 src/ext/kissfft/tools/kiss_fftr.o: src/ext/kissfft/_kiss_fft_guts.h
|
c@125
|
156 vamp/CQVamp.o: vamp/CQVamp.h cq/CQSpectrogram.h cq/ConstantQ.h cq/CQBase.h
|
c@170
|
157 vamp/CQVamp.o: cq/CQParameters.h cq/CQKernel.h src/Pitch.h
|
c@125
|
158 vamp/CQChromaVamp.o: vamp/CQChromaVamp.h cq/CQSpectrogram.h cq/ConstantQ.h
|
c@170
|
159 vamp/CQChromaVamp.o: cq/CQBase.h cq/CQParameters.h cq/CQKernel.h
|
c@125
|
160 vamp/libmain.o: vamp/CQVamp.h cq/CQSpectrogram.h cq/ConstantQ.h cq/CQBase.h
|
c@134
|
161 vamp/libmain.o: cq/CQParameters.h cq/CQKernel.h vamp/CQChromaVamp.h
|
c@168
|
162 test/TestFFT.o: src/dsp/FFT.h
|
c@168
|
163 test/TestMathUtilities.o: src/dsp/MathUtilities.h src/dsp/nan-inf.h
|
c@168
|
164 test/TestResampler.o: src/dsp/Resampler.h src/dsp/Window.h src/dsp/FFT.h
|
c@168
|
165 test/TestWindow.o: src/dsp/Window.h
|
c@168
|
166 test/TestCQKernel.o: cq/CQKernel.h cq/CQParameters.h
|
c@134
|
167 test/TestCQFrequency.o: cq/CQSpectrogram.h cq/ConstantQ.h cq/CQBase.h
|
c@134
|
168 test/TestCQFrequency.o: cq/CQParameters.h cq/CQKernel.h src/dsp/Window.h
|
c@135
|
169 test/TestCQTime.o: cq/CQSpectrogram.h cq/ConstantQ.h cq/CQBase.h
|
c@135
|
170 test/TestCQTime.o: cq/CQParameters.h cq/CQKernel.h src/dsp/Window.h
|
c@134
|
171 test/processfile.o: cq/ConstantQ.h cq/CQBase.h cq/CQParameters.h
|
c@134
|
172 test/processfile.o: cq/CQKernel.h
|
c@134
|
173 cq/CQKernel.o: cq/CQParameters.h
|
c@134
|
174 cq/ConstantQ.o: cq/CQBase.h cq/CQParameters.h cq/CQKernel.h
|
c@134
|
175 cq/CQSpectrogram.o: cq/ConstantQ.h cq/CQBase.h cq/CQParameters.h
|
c@134
|
176 cq/CQSpectrogram.o: cq/CQKernel.h
|
c@134
|
177 cq/CQInverse.o: cq/CQBase.h cq/CQKernel.h cq/CQParameters.h
|
c@170
|
178 cq/Chromagram.o: cq/CQBase.h
|
c@125
|
179 src/dsp/MathUtilities.o: src/dsp/nan-inf.h
|
c@125
|
180 src/ext/kissfft/tools/kiss_fftr.o: src/ext/kissfft/kiss_fft.h
|
c@134
|
181 vamp/CQVamp.o: cq/CQSpectrogram.h cq/ConstantQ.h cq/CQBase.h
|
c@134
|
182 vamp/CQVamp.o: cq/CQParameters.h cq/CQKernel.h
|