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.

70 lines
3.0KB

  1. #! /usr/bin/env python
  2. # encoding: utf-8
  3. def create_jack_driver_obj(bld, target, sources, uselib = None):
  4. driver = bld(features = ['c', 'cxx', 'cxxshlib', 'cshlib'])
  5. driver.env['cxxshlib_PATTERN'] = 'jack_%s.dll'
  6. driver.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
  7. driver.includes = ['.', '..' , '../windows', '../common', '../common/jack']
  8. driver.target = target
  9. driver.source = sources
  10. driver.install_path = '${ADDON_DIR}/'
  11. driver.use = ['serverlib']
  12. if uselib:
  13. driver.use += uselib
  14. return driver
  15. def build(bld):
  16. if bld.env['BUILD_JACKD'] == True:
  17. jackd = bld(features = ['cxx', 'cxxprogram'])
  18. jackd.includes = ['..', '../windows', '../common/jack', '../common', '../dbus']
  19. jackd.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
  20. jackd.source = ['../common/Jackdmp.cpp']
  21. jackd.install_path = '${BINDIR}'
  22. jackd.use = ['serverlib']
  23. jackd.target = 'jackd'
  24. create_jack_driver_obj(bld, 'dummy', '../common/JackDummyDriver.cpp')
  25. winmme_driver_src = [
  26. 'winmme/JackWinMMEDriver.cpp',
  27. 'winmme/JackWinMMEInputPort.cpp',
  28. 'winmme/JackWinMMEOutputPort.cpp',
  29. 'winmme/JackWinMMEPort.cpp',
  30. ]
  31. if bld.env['BUILD_DRIVER_WINMME'] == True:
  32. winmme_driver = bld(features = ['c', 'cxx', 'cxxshlib', 'cshlib'])
  33. winmme_driver.env['cxxshlib_PATTERN'] = 'jack_%s.dll'
  34. winmme_driver.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
  35. winmme_driver.includes = ['.', '..' , '../windows', '../common', '../common/jack']
  36. winmme_driver.target = 'winmme'
  37. winmme_driver.source = winmme_driver_src
  38. winmme_driver.install_path = '${ADDON_DIR}/'
  39. winmme_driver.use = ['serverlib', 'WINMME']
  40. portaudio_driver_src = [
  41. 'portaudio/JackPortAudioDevices.cpp',
  42. 'portaudio/JackPortAudioDriver.cpp',
  43. ]
  44. if bld.env['BUILD_DRIVER_PORTAUDIO'] == True:
  45. portaudio_driver = bld(features = ['c', 'cxx', 'cxxshlib', 'cshlib'])
  46. portaudio_driver.env['cxxshlib_PATTERN'] = 'jack_%s.dll'
  47. portaudio_driver.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
  48. portaudio_driver.includes = ['.', '..' , '../windows', '../common', '../common/jack']
  49. portaudio_driver.target = 'portaudio'
  50. portaudio_driver.source = portaudio_driver_src
  51. portaudio_driver.install_path = '${ADDON_DIR}/'
  52. portaudio_driver.use = ['serverlib', 'PORTAUDIO' ]
  53. create_jack_driver_obj(bld, 'net', '../common/JackNetDriver.cpp')
  54. create_jack_driver_obj(bld, 'loopback', '../common/JackLoopbackDriver.cpp')
  55. create_jack_driver_obj(bld, 'netone', [ '../common/JackNetOneDriver.cpp',
  56. '../common/netjack.c',
  57. '../common/netjack_packet.c' ], ["SAMPLERATE", "CELT"] )
  58. create_jack_driver_obj(bld, 'proxy', '../common/JackProxyDriver.cpp')