13
0
livetrax/libs/backends
Paul Davis 3d12a4da82 fix deep obscure problem with loading multiple backends on OS X
all backends export a symbol declared as "extern "C" ARDOURBACKEND_API ARDOUR::AudioBackendInfo* descriptor ()".
dlopen'ing the backend apparently pushes the symbol "descriptor" into the single flat global namespace that we use
to be like other unix-like systems. this means that if a backend calls its OWN function named "descriptor", it
is indeterminate which one it will be, since the symbol will refer to the function first loaded by the runtime
linker. If the backend is not the first one discovered, this call to its own "descriptor" function will invoke
the function defined by another backend, even though these are supposed to have local scope only according
to our arguments to dlopen().

This fix doesn't try to fix the linker or namespace - it just makes sure that the WavesAudio backend doesn't
invoke its own descriptor() function, which it never really needed to do anyway.
2014-09-30 22:57:05 -04:00
..
alsa update backends for API change in 8d59afb048 2014-10-01 03:24:54 +02:00
dummy update backends for API change in 8d59afb048 2014-10-01 03:24:54 +02:00
jack copy over current Waves version of their backend, along with minor changes in libs/ardour and libs/backend/jack to fit with API changes 2014-09-30 21:00:34 -04:00
MSVCbackends Make sure all our VC projects agree that the product is called 'Mixbus3' (as opposed to just 'Mixbus') 2014-08-28 07:57:20 +01:00
wavesaudio fix deep obscure problem with loading multiple backends on OS X 2014-09-30 22:57:05 -04:00
wscript untested fix for compiling waves audiobackend on case-sensitive FS with mingw. 2014-10-01 04:02:30 +02:00