jack2 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
2.1KB

  1. def configure(conf):
  2. conf.check_cc(lib='asound', header_name='audio_driver.h', uselib_store='IOAUDIO', define_name="HAVE_IOAUDIO", mandatory=False)
  3. if conf.is_defined('HAVE_IOAUDIO'):
  4. conf.env['BUILD_DRIVER_IOAUDIO'] = True
  5. def create_jack_driver_obj(bld, target, sources, uselib=None):
  6. driver = bld(features=['c', 'cxx', 'cxxshlib', 'cshlib'])
  7. driver.env['cxxshlib_PATTERN'] = 'jack_%s.so'
  8. driver.defines = ['HAVE_CONFIG_H', 'SERVER_SIDE', 'HAVE_PPOLL', 'HAVE_TIMERFD']
  9. driver.includes = ['.', '../qnx', '../posix', '../common', '../common/jack', '../dbus', '../']
  10. driver.target = target
  11. driver.source = sources
  12. driver.install_path = '${ADDON_DIR}/'
  13. driver.use = []
  14. driver.cflags = []
  15. if uselib:
  16. driver.use += uselib
  17. return driver
  18. def build(bld):
  19. if bld.env['BUILD_JACKD'] == True:
  20. jackd = bld(features=['cxx', 'cxxprogram'])
  21. jackd.includes = ['../qnx', '../posix', '../common/jack', '../common', '../dbus', '../']
  22. jackd.defines = ['HAVE_CONFIG_H', 'SERVER_SIDE']
  23. jackd.source = ['../common/Jackdmp.cpp']
  24. jackd.use = ['serverlib']
  25. if bld.env['IS_QNX'] and bld.env['BUILD_JACKDBUS']:
  26. jackd.source += ['../dbus/reserve.c', '../dbus/audio_reserve.c']
  27. jackd.use += ['PTHREAD', 'DL', 'RT', 'M', 'STDC++', 'DBUS-1']
  28. else:
  29. jackd.use += ['PTHREAD', 'DL', 'RT', 'M', 'STDC++']
  30. jackd.target = 'jackd'
  31. create_jack_driver_obj(bld, 'dummy', '../common/JackDummyDriver.cpp')
  32. create_jack_driver_obj(bld, 'loopback', '../common/JackLoopbackDriver.cpp')
  33. if bld.env['BUILD_DRIVER_IOAUDIO']:
  34. deva = create_jack_driver_obj(bld, 'jack', 'ioaudio/ioaudio_driver.c', ['IOAUDIO', 'clientlib', 'PTHREAD'])
  35. deva.env['cxxshlib_PATTERN'] = 'deva-ctrl-%s.so'
  36. deva.install_path = '/lib/dll'
  37. ioaudio_driver_src = [
  38. '../common/memops.c',
  39. #'ioaudio/generic_hw.c',
  40. #'ioaudio/ioaudio_backend.c',
  41. 'ioaudio/JackIoAudioDriver.cpp',
  42. ]
  43. create_jack_driver_obj(bld, 'ioaudio', ioaudio_driver_src, ['IOAUDIO', 'PTHREAD'])