matthiasm@0
|
1
|
matthiasm@0
|
2 PLUGIN_EXT ?= .so
|
matthiasm@0
|
3
|
matthiasm@0
|
4 CXX ?= g++
|
matthiasm@0
|
5 CC ?= gcc
|
matthiasm@0
|
6
|
matthiasm@0
|
7 CFLAGS := $(CFLAGS)
|
matthiasm@0
|
8 CXXFLAGS := -I. $(CXXFLAGS)
|
matthiasm@0
|
9
|
matthiasm@1
|
10 PLUGIN := pyin$(PLUGIN_EXT)
|
matthiasm@0
|
11
|
matthiasm@0
|
12 SOURCES := PYIN.cpp \
|
matthiasm@0
|
13 VampYin.cpp \
|
matthiasm@0
|
14 Yin.cpp \
|
matthiasm@0
|
15 YinUtil.cpp \
|
matthiasm@0
|
16 MonoNote.cpp \
|
matthiasm@0
|
17 MonoPitch.cpp \
|
matthiasm@0
|
18 MonoNoteParameters.cpp \
|
matthiasm@0
|
19 SparseHMM.cpp \
|
matthiasm@0
|
20 MonoNoteHMM.cpp \
|
matthiasm@0
|
21 MonoPitchHMM.cpp \
|
matthiasm@0
|
22
|
matthiasm@0
|
23 PLUGIN_MAIN := libmain.cpp
|
matthiasm@0
|
24
|
matthiasm@0
|
25 TESTS := test/test-meanfilter \
|
matthiasm@0
|
26 test/test-fft \
|
matthiasm@0
|
27 test/test-yin \
|
matthiasm@0
|
28 test/test-mononote
|
matthiasm@0
|
29
|
matthiasm@0
|
30 OBJECTS := $(SOURCES:.cpp=.o)
|
matthiasm@0
|
31 OBJECTS := $(OBJECTS:.c=.o)
|
matthiasm@0
|
32
|
matthiasm@0
|
33 PLUGIN_OBJECTS := $(OBJECTS) $(PLUGIN_MAIN:.cpp=.o)
|
matthiasm@0
|
34
|
matthiasm@0
|
35 all: $(PLUGIN) $(TESTS)
|
matthiasm@0
|
36 for t in $(TESTS); do echo "Running $$t"; ./"$$t" || exit 1; done
|
matthiasm@0
|
37
|
matthiasm@0
|
38 plugin: $(PLUGIN)
|
matthiasm@0
|
39
|
matthiasm@0
|
40 $(PLUGIN): $(PLUGIN_OBJECTS)
|
matthiasm@0
|
41 $(CXX) -o $@ $^ $(PLUGIN_LDFLAGS)
|
matthiasm@0
|
42
|
matthiasm@0
|
43 test/test-meanfilter: test/TestMeanFilter.o $(OBJECTS)
|
matthiasm@0
|
44 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
matthiasm@0
|
45
|
matthiasm@0
|
46 test/test-fft: test/TestFFT.o $(OBJECTS)
|
matthiasm@0
|
47 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
matthiasm@0
|
48
|
matthiasm@0
|
49 test/test-yin: test/TestYin.o $(OBJECTS)
|
matthiasm@0
|
50 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
matthiasm@0
|
51
|
matthiasm@0
|
52 test/test-mononote: test/TestMonoNote.o $(OBJECTS)
|
matthiasm@0
|
53 $(CXX) -o $@ $^ $(TEST_LDFLAGS)
|
matthiasm@0
|
54
|
matthiasm@0
|
55 clean:
|
matthiasm@0
|
56 rm -f $(PLUGIN_OBJECTS) test/*.o
|
matthiasm@0
|
57
|
matthiasm@0
|
58 distclean: clean
|
matthiasm@0
|
59 rm -f $(PLUGIN) $(TESTS)
|
matthiasm@0
|
60
|
matthiasm@0
|
61 depend:
|
matthiasm@0
|
62 makedepend -Y -fMakefile.inc *.cpp test/*.cpp *.h test/*.h
|
matthiasm@0
|
63
|
matthiasm@0
|
64 # DO NOT DELETE
|
matthiasm@0
|
65
|
matthiasm@0
|
66 PYIN.o: PYIN.h
|
matthiasm@0
|
67 VampYin.o: VampYin.h
|
matthiasm@0
|
68 Yin.o: Yin.h
|
matthiasm@0
|
69 MonoNoteParameters.o: MonoNoteParameters.h
|
matthiasm@0
|
70 MonoNote.o: MonoNote.h
|
matthiasm@0
|
71 MonoPitch.o: MonoPitch.h
|
matthiasm@0
|
72 MonoPitchHMM.o: MonoPitchHMM.h
|
matthiasm@0
|
73 SparseHMM.o: SparseHMM.h
|
matthiasm@0
|
74 MonoNoteHMM.o: MonoNoteHMM.h
|
matthiasm@0
|
75 libmain.o: PYIN.h VampYin.h
|
matthiasm@0
|
76 test/TestMeanFilter.o: MeanFilter.h
|
matthiasm@0
|
77 test/TestYin.o: Yin.h
|
matthiasm@0
|
78
|