File vamp-mazurka-plugins-Makefile of Package vamp-mazurka-plugins
# Location of Vamp SDK
VAMPDIR = /usr/include
VAMPLIBDIR = $(VAMPDIR)/vamp-sdk
# Location of our plugins
PLUGINDIR = plugins
# Compile flags
CXXFLAGS := $(CXXFLAGS) -g -Wall -I$(VAMPDIR) -I$(VAMPLIBDIR) -I./${PLUGINDIR} -fPIC -DPIC
# Libraries required for the plugins.
PLUGIN_LIBS = -lvamp-sdk -lfftw3
# Flags required to tell the compiler to make a dynamically loadable object
PLUGIN_LDFLAGS = -shared -Wl,-Bsymbolic -static-libgcc
# File extension for a dynamically loadable object
PLUGIN_EXT = .so
### End of user-serviceable parts
PLUGIN_OBJECTS = plugins.o $(patsubst %.cpp,%.o,$(wildcard $(PLUGINDIR)/*.cpp))
PLUGIN_HEADERS = $(patsubst %.cpp,%.h,$(wildcard $(PLUGINDIR)/*.cpp))
PLUGIN_TARGET = vamp-mazurka$(PLUGIN_EXT)
all: $(PLUGIN_TARGET)
$(PLUGIN_TARGET): $(PLUGIN_OBJECTS) $(PLUGIN_HEADERS)
$(CXX) $(LDFLAGS) $(PLUGIN_LDFLAGS) -o $@ $(PLUGIN_OBJECTS) $(PLUGIN_LIBS)
clean:
rm -f $(PLUGIN_OBJECTS)
distclean: clean
rm -f $(PLUGIN_TARGET) *~ */*~