86ae9f4716b6040d794b8c00f6858b78fe4612a2
[vamp-aubio-plugins.git] / Makefile
1
2 # Location of our plugins
3 #
4 PLUGINDIR       = plugins
5
6 # Compile flags
7 #
8 #CXXFLAGS       := -I../ -I../inst/include $(CXXFLAGS) -fPIC -DNDEBUG -O2 -Wall -I.
9 CXXFLAGS        := -I../ -I../inst/include $(CXXFLAGS) -fPIC -DDEBUG -g -Wall -I.
10
11 # Libraries required for the plugins.
12 #
13 #PLUGIN_LIBS    = -L../inst/lib -lvamp-sdk -laubio 
14 PLUGIN_LIBS     = ../vamp-plugin-sdk/libvamp-sdk.a /usr/local/lib/libaubio.a /usr/lib/libfftw3f.a
15
16 # Flags required to tell the compiler to make a dynamically loadable object
17 #
18 PLUGIN_LDFLAGS  = -shared -Wl,-Bsymbolic -Wl,--version-script=vamp-plugin.map
19
20 # File extension for a dynamically loadable object
21 #
22 PLUGIN_EXT      = .so
23
24 ## For OS/X with g++:
25 #PLUGIN_LDFLAGS = -dynamiclib -exported_symbols_list=vamp-plugin.list
26 #PLUGIN_EXT     = .dylib
27
28
29 ### End of user-serviceable parts
30
31 PLUGIN_OBJECTS  = libmain.o $(patsubst %.cpp,%.o,$(wildcard $(PLUGINDIR)/*.cpp))
32 PLUGIN_HEADERS  = $(patsubst %.cpp,%.h,$(wildcard $(PLUGINDIR)/*.cpp))
33 PLUGIN_TARGET   = vamp-aubio$(PLUGIN_EXT)
34
35 all:            $(PLUGIN_TARGET)
36
37 $(PLUGIN_TARGET):       $(PLUGIN_OBJECTS) $(PLUGIN_HEADERS)
38                 $(CXX) $(LDFLAGS) $(PLUGIN_LDFLAGS) -o $@ $(PLUGIN_OBJECTS) $(PLUGIN_LIBS)
39
40 clean:          
41                 rm -f $(PLUGIN_OBJECTS)
42
43 distclean:      clean
44                 rm -f $(PLUGIN_TARGET) *~ */*~
45
46