summaryrefslogtreecommitdiff
path: root/libs/backends/jack
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2015-04-23 09:29:35 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2015-04-23 09:29:45 -0400
commitf75518582598ec6044d8c43f97cafc28d5f1d9b5 (patch)
tree1bfa3df3658ff083e8c4b558a992fe7beef9b599 /libs/backends/jack
parentb13cedd56cc1b3125af6e9920c49801eda5771a5 (diff)
add a real check for functioning JACK metadata API; remove configure time option for this
Diffstat (limited to 'libs/backends/jack')
-rw-r--r--libs/backends/jack/jack_portengine.cc2
-rw-r--r--libs/backends/jack/weak_libjack.h4
-rw-r--r--libs/backends/jack/wscript17
3 files changed, 16 insertions, 7 deletions
diff --git a/libs/backends/jack/jack_portengine.cc b/libs/backends/jack/jack_portengine.cc
index caa962600b..1f0515b0e8 100644
--- a/libs/backends/jack/jack_portengine.cc
+++ b/libs/backends/jack/jack_portengine.cc
@@ -118,7 +118,7 @@ JACKAudioBackend::get_port_name (PortHandle port) const
int
JACKAudioBackend::get_port_property (PortHandle port, const std::string& key, std::string& value, std::string& type) const
{
-#ifndef NO_JACK_METADATA // really everyone ought to have this by now.
+#ifdef HAVE_JACK_METADATA // really everyone ought to have this by now.
int rv = -1;
char *cvalue = NULL;
char *ctype = NULL;
diff --git a/libs/backends/jack/weak_libjack.h b/libs/backends/jack/weak_libjack.h
index e18687b6c7..abfe3af8a8 100644
--- a/libs/backends/jack/weak_libjack.h
+++ b/libs/backends/jack/weak_libjack.h
@@ -155,7 +155,7 @@ int have_libjack(void);
#define jack_client_open WJACK_client_client_openXXX
-#ifndef NO_JACK_METADATA
+#ifdef HAVE_JACK_METADATA
/* <jack/metadata.h> */
#define jack_get_uuid_for_client_name WJACK_get_uuid_for_client_name
#define jack_get_client_name_by_uuid WJACK_get_client_name_by_uuid
@@ -181,7 +181,7 @@ int have_libjack(void);
#include <jack/session.h>
#include <jack/thread.h>
-#ifndef NO_JACK_METADATA
+#ifdef HAVE_JACK_METADATA
#include <jack/metadata.h>
#endif
diff --git a/libs/backends/jack/wscript b/libs/backends/jack/wscript
index 752682f8cc..2f3b349afe 100644
--- a/libs/backends/jack/wscript
+++ b/libs/backends/jack/wscript
@@ -37,10 +37,15 @@ def configure(conf):
else:
conf.env['libjack_link'] = "link"
- if not Options.options.libjack_meta:
- conf.define ('NO_JACK_METADATA', 1)
-
-
+ # Check that metadata API is available and working
+ conf.check_cxx(fragment = "#include <jack/jack.h>\n#include <jack/metadata.h>\nint main(void) { jack_port_uuid(NULL); return 0; }\n",
+ mandatory = False,
+ msg = 'Checking for JACK metadata API',
+ okmsg = 'ok',
+ errmsg = 'not found (or broken). JACK metadata API will not be used',
+ define_name = 'HAVE_JACK_METADATA',
+ linkflags=['-ljack'])
+
def build(bld):
obj = bld(features = 'c cxx cxxshlib')
obj.source = [
@@ -64,6 +69,10 @@ def build(bld):
obj.cxxflags = [ '-fPIC' ]
obj.cflags = [ '-fPIC' ]
+ if bld.is_defined ('HAVE_JACK_METADATA'):
+ obj.cxxflags += [ '-DHAVE_JACK_METADATA' ]
+ obj.cflags += [ '-DHAVE_JACK_METADATA' ]
+
if (bld.env['build_target'] == 'mingw'):
obj.uselib = [ 'PORTAUDIO' ]
else: