rename system and user config files with product-neutral names
[ardour.git] / libs / backends / wscript
index b8779b7713ac4d39743beb6f491eabfed411efdd..1a0906f0d11842d9978fbf836dafbdd835b83136 100644 (file)
@@ -1,12 +1,40 @@
 #!/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)
@@ -19,9 +47,14 @@ def configure(conf):
     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)