Chris@0
|
1
|
Chris@0
|
2 PLUGIN_EXT ?= .so
|
Chris@41
|
3
|
Chris@0
|
4 CXX ?= g++
|
Chris@0
|
5 CC ?= gcc
|
Chris@0
|
6
|
Chris@41
|
7 CFLAGS := $(CFLAGS)
|
Chris@41
|
8 CXXFLAGS := -I. $(CXXFLAGS)
|
Chris@41
|
9
|
Chris@41
|
10 LDFLAGS := $(LDFLAGS) -lvamp-sdk
|
Chris@41
|
11 PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS)
|
Chris@41
|
12 TEST_LDFLAGS := $(LDFLAGS) -lboost_unit_test_framework
|
Chris@41
|
13
|
Chris@41
|
14 PLUGIN := cepstral-pitchtracker$(PLUGIN_EXT)
|
Chris@0
|
15
|
Chris@35
|
16 HEADERS := CepstralPitchTracker.h \
|
Chris@52
|
17 AgentFeeder.h \
|
Chris@47
|
18 MeanFilter.h \
|
Chris@39
|
19 NoteHypothesis.h \
|
Chris@39
|
20 PeakInterpolator.h
|
Chris@0
|
21
|
Chris@31
|
22 SOURCES := CepstralPitchTracker.cpp \
|
Chris@52
|
23 AgentFeeder.cpp \
|
Chris@35
|
24 NoteHypothesis.cpp \
|
Chris@41
|
25 PeakInterpolator.cpp
|
Chris@41
|
26
|
Chris@41
|
27 PLUGIN_MAIN := libmain.cpp
|
Chris@41
|
28
|
Chris@63
|
29 TESTS ?= test/test-meanfilter \
|
Chris@48
|
30 test/test-fft \
|
Chris@51
|
31 test/test-cepstrum \
|
Chris@51
|
32 test/test-peakinterpolator \
|
Chris@52
|
33 test/test-notehypothesis \
|
Chris@52
|
34 test/test-agentfeeder
|
Chris@51
|
35
|
Chris@0
|
36 OBJECTS := $(SOURCES:.cpp=.o)
|
Chris@0
|
37 OBJECTS := $(OBJECTS:.c=.o)
|
Chris@0
|
38
|
Chris@41
|
39 PLUGIN_OBJECTS := $(OBJECTS) $(PLUGIN_MAIN:.cpp=.o)
|
Chris@38
|
40
|
Chris@41
|
41 all: $(PLUGIN) $(TESTS)
|
Chris@41
|
42 for t in $(TESTS); do echo "Running $$t"; ./"$$t" || exit 1; done
|
Chris@41
|
43
|
Chris@41
|
44 $(PLUGIN): $(PLUGIN_OBJECTS)
|
Chris@41
|
45 $(CXX) -o $@ $^ $(PLUGIN_LDFLAGS)
|
Chris@41
|
46
|
Chris@41
|
47 test/test-notehypothesis: test/TestNoteHypothesis.o $(OBJECTS)
|
Chris@41
|
48 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
Chris@41
|
49
|
Chris@52
|
50 test/test-agentfeeder: test/TestAgentFeeder.o $(OBJECTS)
|
Chris@52
|
51 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
Chris@52
|
52
|
Chris@47
|
53 test/test-meanfilter: test/TestMeanFilter.o $(OBJECTS)
|
Chris@47
|
54 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
Chris@47
|
55
|
Chris@51
|
56 test/test-cepstrum: test/TestCepstrum.o $(OBJECTS)
|
Chris@51
|
57 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
Chris@51
|
58
|
Chris@48
|
59 test/test-fft: test/TestFFT.o $(OBJECTS)
|
Chris@48
|
60 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
Chris@48
|
61
|
Chris@41
|
62 test/test-peakinterpolator: test/TestPeakInterpolator.o $(OBJECTS)
|
Chris@41
|
63 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
Chris@0
|
64
|
Chris@0
|
65 clean:
|
Chris@41
|
66 rm -f $(OBJECTS) test/*.o
|
Chris@0
|
67
|
Chris@0
|
68 distclean: clean
|
Chris@41
|
69 rm -f $(PLUGIN) $(TESTS)
|
Chris@1
|
70
|
Chris@51
|
71 depend:
|
Chris@51
|
72 makedepend -Y -fMakefile.inc *.cpp test/*.cpp *.h test/*.h
|
Chris@51
|
73
|
Chris@41
|
74 # DO NOT DELETE
|
Chris@41
|
75
|
Chris@51
|
76 CepstralPitchTracker.o: CepstralPitchTracker.h NoteHypothesis.h Cepstrum.h
|
Chris@51
|
77 CepstralPitchTracker.o: MeanFilter.h PeakInterpolator.h
|
Chris@41
|
78 libmain.o: CepstralPitchTracker.h NoteHypothesis.h
|
Chris@41
|
79 NoteHypothesis.o: NoteHypothesis.h
|
Chris@41
|
80 PeakInterpolator.o: PeakInterpolator.h
|
Chris@51
|
81 test/TestCepstrum.o: Cepstrum.h
|
Chris@51
|
82 test/TestMeanFilter.o: MeanFilter.h
|
Chris@41
|
83 test/TestNoteHypothesis.o: NoteHypothesis.h
|
Chris@41
|
84 test/TestPeakInterpolator.o: PeakInterpolator.h
|
Chris@51
|
85 CepstralPitchTracker.o: NoteHypothesis.h
|