|
- #! /usr/bin/env python
- # encoding: utf-8
-
- def create_jack_driver_obj(bld, **kw):
- driver = bld(
- features = ['c', 'cxx', 'cxxshlib', 'cshlib'],
- defines = ['HAVE_CONFIG_H', 'SERVER_SIDE'],
- includes = ['../linux',
- '../posix',
- '../common',
- '../common/jack',
- '../dbus',
- '../'],
- install_path = '${ADDON_DIR}/',
- **kw)
- driver.env['cxxshlib_PATTERN'] = 'jack_%s.so'
- return driver
-
- def build(bld):
- if bld.env['BUILD_JACKD'] == True:
- jackd = bld(
- features = ['cxx', 'cxxprogram'],
- defines = ['HAVE_CONFIG_H','SERVER_SIDE'],
- includes = ['../linux',
- '../posix',
- '../common/jack',
- '../common',
- '../dbus',
- '../'],
- target = 'jackd',
- source = ['../common/Jackdmp.cpp'],
- use = ['serverlib', 'DL', 'PTHREAD', 'RT', 'M', 'STDC++'])
-
- if bld.env['IS_LINUX'] and bld.env['BUILD_JACKDBUS']:
- jackd.source += ['../dbus/reserve.c', '../dbus/audio_reserve.c']
- jackd.use += ['DBUS-1']
-
- create_jack_driver_obj(
- bld,
- target = 'dummy',
- source = '../common/JackDummyDriver.cpp')
-
- alsa_driver_src = [
- 'alsa/JackAlsaDriver.cpp',
- 'alsa/alsa_rawmidi.c',
- 'alsa/alsa_seqmidi.c',
- 'alsa/alsa_midi_jackmp.cpp',
- '../common/memops.c',
- 'alsa/generic_hw.c',
- 'alsa/hdsp.c',
- 'alsa/alsa_driver.c',
- 'alsa/hammerfall.c',
- 'alsa/ice1712.c'
- ]
-
- alsarawmidi_driver_src = ['alsarawmidi/JackALSARawMidiDriver.cpp',
- 'alsarawmidi/JackALSARawMidiInputPort.cpp',
- 'alsarawmidi/JackALSARawMidiOutputPort.cpp',
- 'alsarawmidi/JackALSARawMidiPort.cpp',
- 'alsarawmidi/JackALSARawMidiReceiveQueue.cpp',
- 'alsarawmidi/JackALSARawMidiSendQueue.cpp',
- 'alsarawmidi/JackALSARawMidiUtil.cpp'
- ]
-
- ffado_driver_src = ['firewire/JackFFADODriver.cpp',
- 'firewire/JackFFADOMidiInputPort.cpp',
- 'firewire/JackFFADOMidiOutputPort.cpp',
- 'firewire/JackFFADOMidiReceiveQueue.cpp',
- 'firewire/JackFFADOMidiSendQueue.cpp'
- ]
-
- iio_driver_src = ['iio/JackIIODriver.cpp']
-
- if bld.env['BUILD_DRIVER_ALSA']:
- create_jack_driver_obj(
- bld,
- target = 'alsa',
- source = alsa_driver_src,
- use = ['ALSA'])
- create_jack_driver_obj(
- bld,
- target = 'alsarawmidi',
- source = alsarawmidi_driver_src,
- use = ['ALSA'])
-
- if bld.env['BUILD_DRIVER_FREEBOB']:
- create_jack_driver_obj(
- bld,
- target = 'freebob',
- source = 'freebob/JackFreebobDriver.cpp',
- use = ['LIBFREEBOB'])
-
- if bld.env['BUILD_DRIVER_FFADO']:
- create_jack_driver_obj(
- bld,
- target = 'firewire',
- source = ffado_driver_src,
- use = ['LIBFFADO'])
-
- if bld.env['BUILD_DRIVER_IIO']:
- create_jack_driver_obj(
- bld,
- target = 'iio',
- source = iio_driver_src,
- use = ['GTKIOSTREAM', 'EIGEN3'])
-
- create_jack_driver_obj(
- bld,
- target = 'net',
- source = '../common/JackNetDriver.cpp')
-
- create_jack_driver_obj(
- bld,
- target = 'loopback',
- source = '../common/JackLoopbackDriver.cpp')
-
- create_jack_driver_obj(
- bld,
- target = 'netone',
- source = ['../common/JackNetOneDriver.cpp',
- '../common/netjack.c',
- '../common/netjack_packet.c'],
- use = ['SAMPLERATE', 'CELT'])
-
- create_jack_driver_obj(
- bld,
- target = 'proxy',
- source = '../common/JackProxyDriver.cpp')
|