2 # Location of our plugins
8 CXXFLAGS := -I../ -I../inst/include $(CXXFLAGS) -fPIC -DNDEBUG -O2 -Wall -I.
10 # Libraries required for the plugins. Note that we can (and actively
11 # want to) statically link libstdc++, because our plugin exposes only
12 # a C API so there are no boundary compatibility problems.
14 PLUGIN_LIBS = -L../inst/lib -lvamp-sdk -laubio
16 # Flags required to tell the compiler to make a dynamically loadable object
19 # File extension for a dynamically loadable object
23 PLUGIN_LDFLAGS = -dynamiclib -exported_symbols_list=vamp-plugin.list
27 ### End of user-serviceable parts
29 PLUGIN_OBJECTS = libmain.o $(patsubst %.cpp,%.o,$(wildcard $(PLUGINDIR)/*.cpp))
30 PLUGIN_HEADERS = $(patsubst %.cpp,%.h,$(wildcard $(PLUGINDIR)/*.cpp))
31 PLUGIN_TARGET = vamp-aubio$(PLUGIN_EXT)
35 $(PLUGIN_TARGET): $(PLUGIN_OBJECTS) $(PLUGIN_HEADERS)
36 $(CXX) $(LDFLAGS) $(PLUGIN_LDFLAGS) -o $@ $(PLUGIN_OBJECTS) $(PLUGIN_LIBS)
39 rm -f $(PLUGIN_OBJECTS)
42 rm -f $(PLUGIN_TARGET) *~ */*~