#! /usr/bin/env python # encoding: utf-8 def configure(conf): conf.check_pkg('alsa', vnum = '1.0.0') conf.env['BUILD_DRIVER_ALSA'] = conf.is_defined('HAVE_ALSA') conf.check_pkg('libfreebob', vnum = '1.0.0') conf.env['BUILD_DRIVER_FREEBOB'] = conf.is_defined('HAVE_LIBFREEBOB') conf.check_pkg('libffado', vnum = '1.999.17') conf.env['BUILD_DRIVER_FFADO'] = conf.is_defined('HAVE_LIBFFADO') def create_jack_driver_obj(bld, target, sources): driver = bld.create_obj('cpp', 'shlib') driver.features.append('cc') driver.env['shlib_PATTERN'] = 'jack_%s.so' driver.defines = 'HAVE_CONFIG_H' driver.includes = ['.', '../common', '../common/jack'] driver.target = target driver.source = sources driver.inst_var = bld.env()['ADDON_DIR'] driver.inst_dir = '/' return driver def build(bld): jackd = bld.create_obj('cpp', 'program') jackd.includes = ['../common/jack', '../common'] jackd.source = ['../common/Jackdmp.cpp'] jackd.uselib = 'PTHREAD DL RT' jackd.uselib_local = 'serverlib' jackd.target = 'jackd' create_jack_driver_obj(bld, 'dummy', '../common/JackDummyDriver.cpp') if bld.env()['BUILD_DRIVER_ALSA'] == True: create_jack_driver_obj(bld, 'alsa', ['alsa/JackAlsaDriver.cpp', 'alsa/alsa_rawmidi.c', 'alsa/alsa_seqmidi.c', 'alsa/alsa_midi_jackmp.cpp', 'alsa/memops.c', 'alsa/generic_hw.c', 'alsa/hdsp.c', 'alsa/hammerfall.c', 'alsa/ice1712.c' ]) if bld.env()['BUILD_DRIVER_FREEBOB'] == True: create_jack_driver_obj(bld, 'freebob', 'freebob/JackFreebobDriver.cpp') if bld.env()['BUILD_DRIVER_FFADO'] == True: create_jack_driver_obj(bld, 'firewire', 'firewire/JackFFADODriver.cpp')