alsa + dummy backend, proper [re]initialization
[ardour.git] / libs / backends / wscript
1 #!/usr/bin/env python
2 from waflib.extras import autowaf as autowaf
3 from waflib import Options
4 import os
5 import sys
6 import re
7
8 # Mandatory variables
9 top = '.'
10 out = 'build'
11
12 def options(opt):
13     autowaf.set_options(opt)
14
15 def sub_config_and_use(conf, name, has_objects = True):
16     conf.recurse(name)
17     autowaf.set_local_lib(conf, name, has_objects)
18
19 def configure(conf):
20     autowaf.set_recursive()
21     autowaf.configure(conf)
22
23     backends = [ 'jack' ]
24
25     if sys.platform == 'darwin' or sys.platform == 'mingw' or sys.platform == 'msvc':
26         backends += [ 'wavesaudio' ]
27
28     if Options.options.build_dummy: 
29         backends += [ 'dummy' ]
30
31     if Options.options.build_alsabackend:
32         if re.search ("linux", sys.platform) != None:
33             backends += [ 'alsa' ]
34
35     for i in backends:
36         sub_config_and_use(conf, i)
37
38 def build(bld):
39     backends = [ 'jack' ]
40
41     if sys.platform == 'darwin' or sys.platform == 'mingw' or sys.platform == 'msvc':
42         backends += [ 'wavesaudio' ]
43
44     if bld.env['BUILD_DUMMYBACKEND']:
45         backends += [ 'dummy' ]
46
47     if re.search ("linux", sys.platform) != None:
48         if bld.env['BUILD_ALSABACKEND'] and bld.is_defined('HAVE_ALSA'):
49             backends += [ 'alsa' ]
50
51     for i in backends:
52         bld.recurse(i)