comparison Makefile @ 56:4ab6224110ef host-factory-stuff

* implement plugin loader and plugin input-domain adapter (to do basic ffts)
author cannam
date Fri, 04 May 2007 15:21:12 +0000
parents 2403ae53b8a5
children 09a1aac6c362
comparison
equal deleted inserted replaced
55:0dad357a3406 56:4ab6224110ef
2 # Makefile for the Vamp plugin SDK. This builds the SDK objects, 2 # Makefile for the Vamp plugin SDK. This builds the SDK objects,
3 # libraries, example plugins, and the test host. Please adjust to 3 # libraries, example plugins, and the test host. Please adjust to
4 # suit your operating system requirements. 4 # suit your operating system requirements.
5 5
6 SDKDIR = vamp-sdk 6 SDKDIR = vamp-sdk
7 HOSTSDKDIR = vamp-hostsdk
7 APIDIR = vamp 8 APIDIR = vamp
8 EXAMPLEDIR = examples 9 EXAMPLEDIR = examples
9 HOSTDIR = host 10 HOSTDIR = host
10 11
11 12
34 35
35 INSTALL_PKGCONFIG := $(INSTALL_PREFIX)/lib/pkgconfig 36 INSTALL_PKGCONFIG := $(INSTALL_PREFIX)/lib/pkgconfig
36 37
37 # Compile flags 38 # Compile flags
38 # 39 #
39 CXXFLAGS := $(CXXFLAGS) -O2 -Wall -I$(SDKDIR) -I$(APIDIR) -I. 40 CXXFLAGS := $(CXXFLAGS) -O2 -Wall -I$(SDKDIR) -I$(HOSTSDKDIR) -I$(APIDIR) -I.
40 41
41 # Libraries required for the host at link time 42 # Libraries required for the host at link time
42 # 43 #
43 HOST_LIBS = vamp-sdk/libvamp-hostsdk.a -lsndfile -ldl 44 HOST_LIBS = $(HOSTSDKDIR)/libvamp-hostsdk.a -lsndfile -ldl
44 45
45 # Libraries required for the plugin. Note that we can (and actively 46 # Libraries required for the plugin. Note that we can (and actively
46 # want to) statically link libstdc++, because our plugin exposes only 47 # want to) statically link libstdc++, because our plugin exposes only
47 # a C API so there are no boundary compatibility problems. 48 # a C API so there are no boundary compatibility problems.
48 # 49 #
49 PLUGIN_LIBS = vamp-sdk/libvamp-sdk.a 50 PLUGIN_LIBS = $(SDKDIR)/libvamp-sdk.a
50 #PLUGIN_LIBS = vamp-sdk/libvamp-sdk.a $(shell g++ -print-file-name=libstdc++.a) 51 #PLUGIN_LIBS = vamp-sdk/libvamp-sdk.a $(shell g++ -print-file-name=libstdc++.a)
51 52
52 # Flags required to tell the compiler to link to a dynamically loadable object 53 # Flags required to tell the compiler to link to a dynamically loadable object
53 # 54 #
54 PLUGIN_LDFLAGS = -shared -Wl,-Bsymbolic -static-libgcc 55 PLUGIN_LDFLAGS = -shared -Wl,-Bsymbolic -static-libgcc
74 $(SDKDIR)/RealTime.h 75 $(SDKDIR)/RealTime.h
75 76
76 HOSTSDK_HEADERS = \ 77 HOSTSDK_HEADERS = \
77 $(SDKDIR)/Plugin.h \ 78 $(SDKDIR)/Plugin.h \
78 $(SDKDIR)/PluginBase.h \ 79 $(SDKDIR)/PluginBase.h \
79 $(SDKDIR)/PluginHostAdapter.h \ 80 $(HOSTSDKDIR)/PluginHostAdapter.h \
81 $(HOSTSDKDIR)/PluginInputDomainAdapter.h \
82 $(HOSTSDKDIR)/PluginLoader.h \
80 $(SDKDIR)/RealTime.h 83 $(SDKDIR)/RealTime.h
81 84
82 SDK_OBJECTS = \ 85 SDK_OBJECTS = \
83 $(SDKDIR)/PluginAdapter.o \ 86 $(SDKDIR)/PluginAdapter.o \
84 $(SDKDIR)/RealTime.o 87 $(SDKDIR)/RealTime.o
85 88
86 HOSTSDK_OBJECTS = \ 89 HOSTSDK_OBJECTS = \
87 $(SDKDIR)/PluginHostAdapter.o \ 90 $(HOSTSDKDIR)/PluginHostAdapter.o \
91 $(HOSTSDKDIR)/PluginInputDomainAdapter.o \
92 $(HOSTSDKDIR)/PluginLoader.o \
88 $(SDKDIR)/RealTime.o 93 $(SDKDIR)/RealTime.o
89 94
90 SDK_STATIC = \ 95 SDK_STATIC = \
91 $(SDKDIR)/libvamp-sdk.a 96 $(SDKDIR)/libvamp-sdk.a
92 97
93 HOSTSDK_STATIC = \ 98 HOSTSDK_STATIC = \
94 $(SDKDIR)/libvamp-hostsdk.a 99 $(HOSTSDKDIR)/libvamp-hostsdk.a
95 100
96 SDK_DYNAMIC = \ 101 SDK_DYNAMIC = \
97 $(SDKDIR)/libvamp-sdk.so 102 $(SDKDIR)/libvamp-sdk.so
98 103
99 HOSTSDK_DYNAMIC = \ 104 HOSTSDK_DYNAMIC = \
100 $(SDKDIR)/libvamp-hostsdk.so 105 $(HOSTSDKDIR)/libvamp-hostsdk.so
101 106
102 SDK_LA = \ 107 SDK_LA = \
103 $(SDKDIR)/libvamp-sdk.la 108 $(SDKDIR)/libvamp-sdk.la
104 109
105 PLUGIN_HEADERS = \ 110 PLUGIN_HEADERS = \