summaryrefslogtreecommitdiff
path: root/libs/ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-09-13 12:35:10 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-09-13 12:35:10 -0400
commit5cf1f7f3b28abd36f9390014016def94f4e1468d (patch)
tree6943b1a55e46b9ab11ac1cf9c146aa09708305e4 /libs/ardour
parent4861eca97483128e5febb575b94688581abb0154 (diff)
parentdce6b71e825397ff086562b6177453369e48cec9 (diff)
Merge branch 'master' into windows
Diffstat (limited to 'libs/ardour')
-rw-r--r--libs/ardour/ardour/audio_backend.h8
-rw-r--r--libs/ardour/audioengine.cc10
2 files changed, 14 insertions, 4 deletions
diff --git a/libs/ardour/ardour/audio_backend.h b/libs/ardour/ardour/audio_backend.h
index d9561a62e5..4d57f0b43d 100644
--- a/libs/ardour/ardour/audio_backend.h
+++ b/libs/ardour/ardour/audio_backend.h
@@ -31,6 +31,14 @@
#include "ardour/types.h"
#include "ardour/audioengine.h"
#include "ardour/port_engine.h"
+#include "ardour/visibility.h"
+
+#ifdef ARDOURBACKEND_DLL_EXPORTS // defined if we are building the ARDOUR Panners DLLs (instead of using them)
+ #define ARDOURBACKEND_API LIBARDOUR_HELPER_DLL_EXPORT
+#else
+ #define ARDOURBACKEND_API LIBARDOUR_HELPER_DLL_IMPORT
+#endif
+#define ARDOURBACKEND_LOCAL LIBARDOUR_HELPER_DLL_LOCAL
namespace ARDOUR {
diff --git a/libs/ardour/audioengine.cc b/libs/ardour/audioengine.cc
index 63bed97ecc..ebebac5774 100644
--- a/libs/ardour/audioengine.cc
+++ b/libs/ardour/audioengine.cc
@@ -503,7 +503,8 @@ AudioEngine::backend_discover (const string& path)
{
Glib::Module module (path);
AudioBackendInfo* info;
- void* sym = 0;
+ AudioBackendInfo* (*dfunc)(void);
+ void* func = 0;
if (!module) {
error << string_compose(_("AudioEngine: cannot load module \"%1\" (%2)"), path,
@@ -511,15 +512,16 @@ AudioEngine::backend_discover (const string& path)
return 0;
}
- if (!module.get_symbol ("descriptor", sym)) {
- error << string_compose(_("AudioEngine: backend at \"%1\" has no descriptor."), path) << endmsg;
+ if (!module.get_symbol ("descriptor", func)) {
+ error << string_compose(_("AudioEngine: backend at \"%1\" has no descriptor function."), path) << endmsg;
error << Glib::Module::get_last_error() << endmsg;
return 0;
}
module.make_resident ();
- info = (AudioBackendInfo*) sym;
+ dfunc = (AudioBackendInfo* (*)(void))func;
+ info = dfunc();
return info;
}