comparison Makefile @ 160:e841e2365b48

* Some work on symbol visibility in the shared object
author cannam
date Thu, 03 Jul 2008 13:28:57 +0000
parents 24859c958732
children 8c8854a78dcd
comparison
equal deleted inserted replaced
159:64709b340651 160:e841e2365b48
26 # 26 #
27 default: all 27 default: all
28 28
29 # Compile flags 29 # Compile flags
30 # 30 #
31 CXXFLAGS := $(CXXFLAGS) -O2 -Wall -I. -fPIC 31 CXXFLAGS := $(CXXFLAGS) -O2 -Wall -I. -fPIC
32 32
33 # ar, ranlib 33 # ar, ranlib
34 # 34 #
35 AR := ar 35 AR := ar
36 RANLIB := ranlib 36 RANLIB := ranlib
38 # Libraries required for the plugins. 38 # Libraries required for the plugins.
39 # (Note that it is desirable to statically link libstdc++ if possible, 39 # (Note that it is desirable to statically link libstdc++ if possible,
40 # because our plugin exposes only a C API so there are no boundary 40 # because our plugin exposes only a C API so there are no boundary
41 # compatibility problems.) 41 # compatibility problems.)
42 # 42 #
43 PLUGIN_LIBS = $(SDKDIR)/libvamp-sdk.a 43 #PLUGIN_LIBS = $(SDKDIR)/libvamp-sdk.a
44 #PLUGIN_LIBS = $(SDKDIR)/libvamp-sdk.a $(shell g++ -print-file-name=libstdc++.a) 44 PLUGIN_LIBS = $(SDKDIR)/libvamp-sdk.a $(shell g++ -print-file-name=libstdc++.a)
45 45
46 # File extension for a dynamically loadable object 46 # File extension for a dynamically loadable object
47 # 47 #
48 PLUGIN_EXT = .so 48 PLUGIN_EXT = .so
49 #PLUGIN_EXT = .dll 49 #PLUGIN_EXT = .dll
77 77
78 INSTALL_PKGCONFIG := $(INSTALL_PREFIX)/lib/pkgconfig 78 INSTALL_PKGCONFIG := $(INSTALL_PREFIX)/lib/pkgconfig
79 79
80 # Flags required to tell the compiler to create a dynamically loadable object 80 # Flags required to tell the compiler to create a dynamically loadable object
81 # 81 #
82 DYNAMIC_LDFLAGS = --static-libgcc -shared -Wl,-Bsymbolic 82 DYNAMIC_LDFLAGS = -static-libgcc -shared -Wl,-Bsymbolic
83 PLUGIN_LDFLAGS = $(DYNAMIC_LDFLAGS) 83 PLUGIN_LDFLAGS = $(DYNAMIC_LDFLAGS) -Wl,--version-script=vamp-plugin.map
84 SDK_DYNAMIC_LDFLAGS = $(DYNAMIC_LDFLAGS) -Wl,-soname=$(INSTALL_SDK_LINK_ABI) 84 SDK_DYNAMIC_LDFLAGS = $(DYNAMIC_LDFLAGS) -Wl,-soname=$(INSTALL_SDK_LINK_ABI)
85 HOSTSDK_DYNAMIC_LDFLAGS = $(DYNAMIC_LDFLAGS) -Wl,-soname=$(INSTALL_HOSTSDK_LINK_ABI) 85 HOSTSDK_DYNAMIC_LDFLAGS = $(DYNAMIC_LDFLAGS) -Wl,-soname=$(INSTALL_HOSTSDK_LINK_ABI)
86 86
87 ## For OS/X with g++: 87 ## For OS/X with g++:
88 #DYNAMIC_LDFLAGS = -dynamiclib 88 #DYNAMIC_LDFLAGS = -dynamiclib
250 -e "s,%LINK_DEV%,$(INSTALL_HOSTSDK_LINK_DEV),g" \ 250 -e "s,%LINK_DEV%,$(INSTALL_HOSTSDK_LINK_DEV),g" \
251 -e "s,%STATIC%,$(INSTALL_HOSTSDK_STATIC),g" \ 251 -e "s,%STATIC%,$(INSTALL_HOSTSDK_STATIC),g" \
252 -e "s,%LIBS%,$(INSTALL_SDK_LIBS),g" $(HOSTSDK_LA).in \ 252 -e "s,%LIBS%,$(INSTALL_SDK_LIBS),g" $(HOSTSDK_LA).in \
253 > $(DESTDIR)$(INSTALL_SDK_LIBS)/$(INSTALL_HOSTSDK_LA) 253 > $(DESTDIR)$(INSTALL_SDK_LIBS)/$(INSTALL_HOSTSDK_LA)
254 254
255 # DO NOT DELETE
256
257 examples/AmplitudeFollower.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
258 examples/AmplitudeFollower.o: vamp-sdk/RealTime.h
259 examples/PercussionOnsetDetector.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
260 examples/PercussionOnsetDetector.o: vamp-sdk/RealTime.h
261 examples/SpectralCentroid.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
262 examples/SpectralCentroid.o: vamp-sdk/RealTime.h
263 examples/ZeroCrossing.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
264 examples/ZeroCrossing.o: vamp-sdk/RealTime.h
265 vamp-sdk/PluginAdapter.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
266 vamp-sdk/PluginAdapter.o: vamp-sdk/RealTime.h
267 vamp-sdk/Plugin.o: vamp-sdk/PluginBase.h vamp-sdk/RealTime.h
268 vamp-sdk/PluginHostAdapter.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
269 vamp-sdk/PluginHostAdapter.o: vamp-sdk/RealTime.h
270 examples/AmplitudeFollower.o: examples/AmplitudeFollower.h vamp-sdk/Plugin.h
271 examples/AmplitudeFollower.o: vamp-sdk/PluginBase.h vamp-sdk/RealTime.h
272 examples/PercussionOnsetDetector.o: examples/PercussionOnsetDetector.h
273 examples/PercussionOnsetDetector.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
274 examples/PercussionOnsetDetector.o: vamp-sdk/RealTime.h
275 examples/plugins.o: vamp/vamp.h vamp-sdk/PluginAdapter.h vamp-sdk/Plugin.h
276 examples/plugins.o: vamp-sdk/PluginBase.h vamp-sdk/RealTime.h
277 examples/plugins.o: examples/ZeroCrossing.h vamp-sdk/Plugin.h
278 examples/plugins.o: examples/SpectralCentroid.h
279 examples/plugins.o: examples/PercussionOnsetDetector.h
280 examples/plugins.o: examples/AmplitudeFollower.h
281 examples/SpectralCentroid.o: examples/SpectralCentroid.h vamp-sdk/Plugin.h
282 examples/SpectralCentroid.o: vamp-sdk/PluginBase.h vamp-sdk/RealTime.h
283 examples/ZeroCrossing.o: examples/ZeroCrossing.h vamp-sdk/Plugin.h
284 examples/ZeroCrossing.o: vamp-sdk/PluginBase.h vamp-sdk/RealTime.h
285 host/vamp-simple-host.o: vamp-sdk/PluginHostAdapter.h vamp-sdk/Plugin.h
286 host/vamp-simple-host.o: vamp-sdk/PluginBase.h vamp-sdk/RealTime.h
287 host/vamp-simple-host.o: vamp-sdk/hostext/PluginChannelAdapter.h
288 host/vamp-simple-host.o: vamp-sdk/hostext/PluginWrapper.h
289 host/vamp-simple-host.o: vamp-sdk/hostext/PluginInputDomainAdapter.h
290 host/vamp-simple-host.o: vamp-sdk/hostext/PluginLoader.h vamp/vamp.h
291 host/vamp-simple-host.o: host/system.h
292 vamp-sdk/PluginAdapter.o: vamp-sdk/PluginAdapter.h vamp/vamp.h
293 vamp-sdk/PluginAdapter.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
294 vamp-sdk/PluginAdapter.o: vamp-sdk/RealTime.h
295 vamp-sdk/PluginHostAdapter.o: vamp-sdk/PluginHostAdapter.h vamp/vamp.h
296 vamp-sdk/PluginHostAdapter.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
297 vamp-sdk/PluginHostAdapter.o: vamp-sdk/RealTime.h
298 vamp-sdk/RealTime.o: vamp-sdk/RealTime.h
299 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/hostext/PluginWrapper.h
300 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/Plugin.h
301 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/PluginBase.h
302 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/RealTime.h
303 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/hostext/PluginWrapper.h
304 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/Plugin.h
305 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/PluginBase.h
306 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/RealTime.h
307 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/hostext/PluginWrapper.h
308 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/Plugin.h
309 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/PluginBase.h
310 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/RealTime.h
311 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/hostext/PluginWrapper.h
312 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
313 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/RealTime.h
314 vamp-sdk/hostext/PluginWrapper.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
315 vamp-sdk/hostext/PluginWrapper.o: vamp-sdk/RealTime.h
316 rdf/generator/template-generator.o: vamp-sdk/PluginHostAdapter.h
317 rdf/generator/template-generator.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
318 rdf/generator/template-generator.o: vamp-sdk/RealTime.h
319 rdf/generator/template-generator.o: vamp-sdk/hostext/PluginChannelAdapter.h
320 rdf/generator/template-generator.o: vamp-sdk/hostext/PluginWrapper.h
321 rdf/generator/template-generator.o: vamp-sdk/hostext/PluginInputDomainAdapter.h
322 rdf/generator/template-generator.o: vamp-sdk/hostext/PluginLoader.h
323 rdf/generator/template-generator.o: vamp/vamp.h
324 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/hostext/PluginBufferingAdapter.h
325 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/hostext/PluginWrapper.h
326 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/Plugin.h
327 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/PluginBase.h
328 vamp-sdk/hostext/PluginBufferingAdapter.o: vamp-sdk/RealTime.h
329 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/hostext/PluginChannelAdapter.h
330 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/hostext/PluginWrapper.h
331 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/Plugin.h
332 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/PluginBase.h
333 vamp-sdk/hostext/PluginChannelAdapter.o: vamp-sdk/RealTime.h
334 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/hostext/PluginInputDomainAdapter.h
335 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/hostext/PluginWrapper.h
336 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/Plugin.h
337 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/PluginBase.h
338 vamp-sdk/hostext/PluginInputDomainAdapter.o: vamp-sdk/RealTime.h
339 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/PluginHostAdapter.h
340 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
341 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/RealTime.h
342 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/hostext/PluginLoader.h
343 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/hostext/PluginWrapper.h
344 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/hostext/PluginInputDomainAdapter.h
345 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/hostext/PluginChannelAdapter.h
346 vamp-sdk/hostext/PluginLoader.o: vamp-sdk/hostext/PluginBufferingAdapter.h
347 vamp-sdk/hostext/PluginWrapper.o: vamp-sdk/hostext/PluginWrapper.h
348 vamp-sdk/hostext/PluginWrapper.o: vamp-sdk/Plugin.h vamp-sdk/PluginBase.h
349 vamp-sdk/hostext/PluginWrapper.o: vamp-sdk/RealTime.h