#!/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' 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) def sub_config_and_use(conf, name, has_objects = True): conf.recurse(name) autowaf.set_local_lib(conf, name, has_objects) 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)