Chris@31
|
1
|
Chris@31
|
2 SRC_DIR := src
|
Chris@31
|
3
|
Chris@31
|
4 VAMPSDK_DIR ?= ../vamp-plugin-sdk
|
Chris@31
|
5
|
Chris@153
|
6 CQ_DIR ?= constant-q-cpp
|
Chris@126
|
7 BQVEC_DIR ?= bqvec/src
|
Chris@31
|
8
|
Chris@31
|
9 PLUGIN_EXT ?= .so
|
Chris@31
|
10
|
Chris@31
|
11 CXX ?= g++
|
Chris@31
|
12 CC ?= gcc
|
Chris@31
|
13
|
Chris@152
|
14 CFLAGS := $(CFLAGS)
|
Chris@152
|
15 CXXFLAGS := $(CFLAGS) -I. -I$(VAMPSDK_DIR) -I$(CQ_DIR) -I$(BQVEC_DIR) $(CXXFLAGS)
|
Chris@31
|
16
|
Chris@31
|
17 LDFLAGS := $(LDFLAGS)
|
Chris@31
|
18 PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS)
|
Chris@31
|
19
|
Chris@31
|
20 PLUGIN := silvet$(PLUGIN_EXT)
|
Chris@31
|
21
|
Chris@181
|
22 PLUGIN_HEADERS := \
|
Chris@181
|
23 $(SRC_DIR)/Silvet.h \
|
Chris@181
|
24 $(SRC_DIR)/EM.h \
|
Chris@181
|
25 $(SRC_DIR)/Instruments.h \
|
Chris@181
|
26 $(SRC_DIR)/AgentFeeder.h \
|
Chris@181
|
27 $(SRC_DIR)/AgentFeederMono.h \
|
Chris@181
|
28 $(SRC_DIR)/AgentFeederPoly.h \
|
Chris@181
|
29 $(SRC_DIR)/AgentHypothesis.h \
|
Chris@181
|
30 $(SRC_DIR)/NoteHypothesis.h
|
Chris@31
|
31
|
Chris@181
|
32 PLUGIN_SOURCES := \
|
Chris@181
|
33 $(SRC_DIR)/Silvet.cpp \
|
Chris@181
|
34 $(SRC_DIR)/EM.cpp \
|
Chris@181
|
35 $(SRC_DIR)/Instruments.cpp \
|
Chris@181
|
36 $(SRC_DIR)/NoteHypothesis.cpp \
|
Chris@181
|
37 $(SRC_DIR)/libmain.cpp
|
Chris@181
|
38
|
Chris@181
|
39 BQVEC_HEADERS := \
|
Chris@181
|
40 $(BQVEC_DIR)/Allocators.h \
|
Chris@181
|
41 $(BQVEC_DIR)/Restrict.h \
|
Chris@181
|
42 $(BQVEC_DIR)/VectorOps.h
|
Chris@181
|
43
|
Chris@181
|
44 BQVEC_SOURCES := \
|
Chris@181
|
45 $(BQVEC_DIR)/Allocators.cpp
|
Chris@126
|
46
|
Chris@152
|
47 HEADERS := $(PLUGIN_HEADERS) $(BQVEC_HEADERS)
|
Chris@152
|
48 SOURCES := $(PLUGIN_SOURCES) $(BQVEC_SOURCES)
|
Chris@31
|
49 OBJECTS := $(SOURCES:.cpp=.o)
|
Chris@144
|
50 OBJECTS := $(OBJECTS:.c=.o)
|
Chris@31
|
51
|
Chris@156
|
52 LIBS := $(CQ_DIR)/libcq.a $(VAMPSDK_DIR)/libvamp-sdk.a
|
Chris@31
|
53
|
Chris@159
|
54 all: constant-q-cpp $(PLUGIN)
|
Chris@31
|
55
|
Chris@153
|
56 $(PLUGIN): $(OBJECTS) $(LIBS)
|
Chris@31
|
57 $(CXX) -o $@ $^ $(LIBS) $(PLUGIN_LDFLAGS)
|
Chris@31
|
58
|
Chris@31
|
59 clean:
|
Chris@31
|
60 rm -f $(OBJECTS)
|
Chris@31
|
61
|
Chris@31
|
62 distclean: clean
|
Chris@31
|
63 rm -f $(PLUGIN)
|
Chris@31
|
64
|
Chris@31
|
65 depend:
|
Chris@31
|
66 makedepend -Y -fMakefile.inc $(SOURCES) $(HEADERS)
|
Chris@31
|
67
|
Chris@31
|
68 # DO NOT DELETE
|
Chris@31
|
69
|
Chris@184
|
70 src/Silvet.o: src/Silvet.h src/MedianFilter.h src/Instruments.h
|
Chris@184
|
71 src/Silvet.o: src/NoteHypothesis.h src/AgentHypothesis.h src/EM.h
|
Chris@184
|
72 src/Silvet.o: src/AgentFeederPoly.h src/AgentFeeder.h
|
Chris@154
|
73 src/Silvet.o: constant-q-cpp/src/dsp/Resampler.h
|
Chris@161
|
74 src/EM.o: src/EM.h src/Instruments.h
|
Chris@161
|
75 src/Instruments.o: src/Instruments.h data/include/templates.h
|
Chris@161
|
76 src/Instruments.o: data/include/bassoon.h data/include/cello.h
|
Chris@161
|
77 src/Instruments.o: data/include/clarinet.h data/include/flute.h
|
Chris@161
|
78 src/Instruments.o: data/include/guitar.h data/include/horn.h
|
Chris@161
|
79 src/Instruments.o: data/include/oboe.h data/include/tenorsax.h
|
Chris@161
|
80 src/Instruments.o: data/include/violin.h data/include/piano1.h
|
Chris@161
|
81 src/Instruments.o: data/include/piano2.h data/include/piano3.h
|
Chris@184
|
82 src/NoteHypothesis.o: src/NoteHypothesis.h src/AgentHypothesis.h
|
Chris@184
|
83 src/NoteHypothesis.o: src/AgentFeederPoly.h src/AgentFeeder.h
|
Chris@161
|
84 src/libmain.o: src/Silvet.h src/MedianFilter.h src/Instruments.h
|
Chris@184
|
85 src/libmain.o: src/NoteHypothesis.h src/AgentHypothesis.h
|
Chris@126
|
86 bqvec/src/Allocators.o: bqvec/src/Allocators.h bqvec/src/VectorOps.h
|
Chris@126
|
87 bqvec/src/Allocators.o: bqvec/src/Restrict.h
|
Chris@184
|
88 src/Silvet.o: src/MedianFilter.h src/Instruments.h src/NoteHypothesis.h
|
Chris@184
|
89 src/Silvet.o: src/AgentHypothesis.h
|
Chris@184
|
90 src/AgentFeeder.o: src/AgentHypothesis.h
|
Chris@184
|
91 src/AgentFeederMono.o: src/AgentFeeder.h src/AgentHypothesis.h
|
Chris@184
|
92 src/AgentFeederPoly.o: src/AgentFeeder.h src/AgentHypothesis.h
|
Chris@184
|
93 src/NoteHypothesis.o: src/AgentHypothesis.h
|
Chris@126
|
94 bqvec/src/Allocators.o: bqvec/src/VectorOps.h bqvec/src/Restrict.h
|
Chris@126
|
95 bqvec/src/VectorOps.o: bqvec/src/Restrict.h
|