|
- #! /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, uselib = None):
- 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 = '/'
- if uselib:
- driver.uselib = uselib
- return driver
-
- def build(bld):
- jackd = bld.create_obj('cpp', 'program')
- jackd.includes = ['../common/jack', '../common']
- jackd.defines = 'HAVE_CONFIG_H'
- 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'
- ], "ALSA")
-
- if bld.env()['BUILD_DRIVER_FREEBOB'] == True:
- create_jack_driver_obj(bld, 'freebob', 'freebob/JackFreebobDriver.cpp', "LIBFREEBOB")
-
- if bld.env()['BUILD_DRIVER_FFADO'] == True:
- create_jack_driver_obj(bld, 'firewire', 'firewire/JackFFADODriver.cpp', "LIBFFADO")
|