2 # Location of our plugins
6 # Location of aubio code
12 CFLAGS := -I. -Iaubio/src $(CFLAGS) -fPIC -DDEBUG -O2 -Wall -I.
15 # Libraries required for the plugins.
17 PLUGIN_LIBS = -Wl,-Bstatic -lvamp-sdk -Wl,-Bdynamic
19 # Flags required to tell the compiler to make a dynamically loadable object
21 PLUGIN_LDFLAGS = -shared -Wl,-Bsymbolic -Wl,--version-script=vamp-plugin.map
23 # File extension for a dynamically loadable object
28 #PLUGIN_LDFLAGS = -dynamiclib -exported_symbols_list=vamp-plugin.list
32 ### End of user-serviceable parts
34 PLUGIN_OBJECTS = libmain.o $(patsubst %.cpp,%.o,$(wildcard $(PLUGINDIR)/*.cpp))
35 AUBIO_OBJECTS = $(patsubst %.c,%.o,$(wildcard $(AUBIODIR)/src/*.c $(AUBIODIR)/src/*/*.c ))
36 PLUGIN_HEADERS = $(patsubst %.cpp,%.h,$(wildcard $(PLUGINDIR)/*.cpp))
37 PLUGIN_TARGET = vamp-aubio$(PLUGIN_EXT)
41 $(PLUGIN_TARGET): $(PLUGIN_OBJECTS) $(AUBIO_OBJECTS) $(PLUGIN_HEADERS)
42 $(CXX) $(LDFLAGS) $(PLUGIN_LDFLAGS) -o $@ $(PLUGIN_OBJECTS) $(AUBIO_OBJECTS) $(PLUGIN_LIBS)
45 rm -f $(PLUGIN_OBJECTS) $(AUBIO_OBJECTS)
48 rm -f $(PLUGIN_TARGET) *~ */*~