#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
+from waflib import Options
import os
+import sys
+import re
# Mandatory variables
top = '.'
out = 'build'
-backends = [ 'jack' ]
+def backend_list():
+ if Options.options.program_name == 'Ardour':
+ # Ardour
+ backends = [ 'jack' ]
+
+ if Options.options.build_dummy:
+ backends += [ 'dummy' ]
+
+ if Options.options.build_alsabackend:
+ if re.search ("linux", sys.platform) != None:
+ backends += [ 'alsa' ]
+
+ else:
+ # Not Ardour
+ if re.search ("linux", sys.platform) != None:
+ # Can't build this till the ALSA backend is merged because of a dependency (on Linux) on a shared utility library
+ # created for the ALSA backend and JACK.
+ # backends = [ 'jack' ]
+ backends = [ ]
+ else:
+ backends = [ ]
+
+ if sys.platform == 'darwin' or sys.platform == 'mingw' or sys.platform == 'msvc':
+ backends += [ 'wavesaudio' ]
+
+ return backends
def options(opt):
autowaf.set_options(opt)
autowaf.set_recursive()
autowaf.configure(conf)
+ backends = backend_list()
+ conf.env['BACKENDS'] = backends
+
for i in backends:
sub_config_and_use(conf, i)
def build(bld):
+ backends = bld.env['BACKENDS']
+
for i in backends:
bld.recurse(i)