Merge branch 'master' into windows
This commit is contained in:
@@ -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 {
|
||||
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -66,19 +66,13 @@ already_configured ()
|
||||
return JackConnection::server_running ();
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
|
||||
|
||||
/* functions looked up using dlopen-and-cousins, and so naming scope
|
||||
* must be non-mangled.
|
||||
*/
|
||||
static ARDOUR::AudioBackendInfo _descriptor = {
|
||||
"JACK",
|
||||
instantiate,
|
||||
deinstantiate,
|
||||
backend_factory,
|
||||
already_configured,
|
||||
};
|
||||
|
||||
ARDOUR::AudioBackendInfo descriptor = {
|
||||
"JACK",
|
||||
instantiate,
|
||||
deinstantiate,
|
||||
backend_factory,
|
||||
already_configured,
|
||||
};
|
||||
}
|
||||
extern "C" ARDOURBACKEND_API ARDOUR::AudioBackendInfo* descriptor() { return &_descriptor; }
|
||||
|
||||
|
||||
@@ -38,8 +38,9 @@ def build(bld):
|
||||
obj.use = 'ardour libpbd'
|
||||
obj.vnum = JACKBACKEND_VERSION
|
||||
obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3', 'backends')
|
||||
obj.defines = ['PACKAGE="' + I18N_PACKAGE + '"']
|
||||
|
||||
obj.defines = ['PACKAGE="' + I18N_PACKAGE + '"',
|
||||
'ARDOURBACKEND_DLL_EXPORTS'
|
||||
]
|
||||
|
||||
#
|
||||
# device discovery code in the jack backend needs ALSA
|
||||
|
||||
Reference in New Issue
Block a user