allow to scan for half-duplex ALSA devices
[ardour.git] / libs / ardouralsautil / wscript
index 9a5d1e5251550fc8c8419a43c030c07069738b21..7f70e2e74991268f7750926b0fcf532355515684 100644 (file)
@@ -19,6 +19,7 @@ def configure(conf):
     autowaf.configure(conf)
     if re.search ("linux", sys.platform) != None and Options.options.dist_target != 'mingw':
         autowaf.check_pkg(conf, 'alsa', uselib_store='ALSA')
+        autowaf.check_pkg(conf, 'dbus-1', uselib_store='DBUS', mandatory = False)
 
 def build(bld):
     if re.search ("linux", sys.platform) != None:
@@ -34,4 +35,21 @@ def build(bld):
             obj.use      = 'libpbd'
             obj.uselib   = [ 'ALSA' ]
             obj.vnum     = '0.0.1'
-            obj.install_path  = os.path.join(bld.env['LIBDIR'], 'ardouralsautil')
+            obj.install_path = os.path.join(bld.env['LIBDIR'])
+
+        if bld.env['BUILD_ALSABACKEND'] and bld.is_defined('HAVE_ALSA') and bld.is_defined('HAVE_DBUS'):
+            obj = bld(features = 'c cprogram')
+            obj.source = [
+                'reserve.c',
+                'request_device.c'
+            ]
+            obj.includes = ['.']
+            obj.target   = 'ardour-request-device'
+            obj.uselib   = [ 'DBUS' ]
+            obj.install_path = os.path.join(bld.env['LIBDIR'])
+            obj.defines = [
+                    '_POSIX_SOURCE',
+                    '_XOPEN_SOURCE=500',
+                    'ARD_PROG_NAME="ardour-request-device"',
+                    'ARD_APPL_NAME="Ardour ALSA Backend"',
+            ]