view Makefile.example.linux @ 44:ae292da1cabe

Ensure finish() can be called even if not configured (otherwise there's no way to dispose of the plugin)
author Chris Cannam
date Tue, 11 Oct 2016 14:37:12 +0100
parents d63f2ade049b
children 124f6d2fbaa2
line wrap: on
line source

ADAPTER_HEADERS	:= VamPipeAdapter.h VamPipePluginLibrary.h 
ADAPTER_SOURCES	:= VamPipePluginLibrary.cpp

SDK_DIR		:= ../vamp-plugin-sdk

PLUGIN_SOURCES	:= \
		$(SDK_DIR)/examples/ZeroCrossing.cpp \
		$(SDK_DIR)/examples/SpectralCentroid.cpp \
		$(SDK_DIR)/examples/PercussionOnsetDetector.cpp \
		$(SDK_DIR)/examples/FixedTempoEstimator.cpp \
		$(SDK_DIR)/examples/AmplitudeFollower.cpp \
		$(SDK_DIR)/examples/PowerSpectrum.cpp

OTHER_SOURCES	:= \
		../json/json11/json11.cpp

SDK_LIBS	:= \
		$(SDK_DIR)/libvamp-hostsdk.a \
		$(SDK_DIR)/libvamp-sdk.a

EXAMPLE_EXT	:= .so
EXAMPLE		:= example$(EXAMPLE_EXT)
EXAMPLE_SOURCE	:= example.cpp
EXAMPLE_SOURCES	:= $(EXAMPLE_SOURCE) $(ADAPTER_SOURCES) $(PLUGIN_SOURCES) $(OTHER_SOURCES)
EXAMPLE_LDFLAGS	:= -shared -Wl,-Bsymbolic -Wl,-soname=example.so -Wl,-z,defs -Wl,--version-script=vampipe.map

TEST		:= quick-test
TEST_SOURCE	:= quick-test.cpp
TEST_LDFLAGS	:= -ldl

CXXFLAGS	:= -std=c++11 -fPIC -Wall -Wextra -g
INCPATH		:= -I$(SDK_DIR) -I.. -I../json

all:		$(EXAMPLE) $(TEST)
		./$(TEST)

$(EXAMPLE):	$(EXAMPLE_SOURCES) $(ADAPTER_HEADERS) $(SDK_LIBS)
		$(CXX) $(CXXFLAGS) $(INCPATH) -o $(EXAMPLE) \
		       $(EXAMPLE_SOURCES) $(SDK_LIBS) $(EXAMPLE_LDFLAGS)

$(TEST):	$(TEST_SOURCE)
		$(CXX) $(CXXFLAGS) -o $(TEST) $(TEST_SOURCE) $(TEST_LDFLAGS)

clean:
		rm -f $(EXAMPLE) $(TEST)