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.

57 lines
2.1KB

  1. #! /usr/bin/env python
  2. # encoding: utf-8
  3. import Build
  4. import re
  5. import os
  6. def configure(conf):
  7. conf.check_cc(function_name='Pa_GetVersion', header_name='portaudio.h', lib='portaudio', uselib_store="PORTAUDIO", define_name='HAVE_PORTAUDIO')
  8. conf.env['BUILD_DRIVER_PORTAUDIO'] = conf.is_defined('HAVE_PORTAUDIO')
  9. def create_jack_driver_obj(bld, target, sources, uselib = None):
  10. driver = bld(features = ['c', 'cxx', 'cxxshlib', 'cshlib'])
  11. driver.env['cxxshlib_PATTERN'] = 'jack_%s.dll'
  12. driver.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
  13. driver.includes = ['.', '../windows', '../posix', '../common', '../common/jack', '../']
  14. driver.target = target
  15. driver.source = sources
  16. driver.install_path = '${ADDON_DIR}/'
  17. driver.use = ['serverlib']
  18. if uselib:
  19. driver.use += uselib
  20. return driver
  21. def build(bld):
  22. if bld.env['BUILD_JACKD'] == True:
  23. jackd = bld(features = ['cxx', 'cxxprogram'])
  24. jackd.includes = ['../windows', '../posix', '../common/jack', '../common', '../']
  25. jackd.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
  26. jackd.source = ['../common/Jackdmp.cpp']
  27. jackd.use = ['serverlib']
  28. jackd.use += ['PTHREAD', 'M', 'STDC++']
  29. jackd.target = 'jackd'
  30. create_jack_driver_obj(bld, 'dummy', '../common/JackDummyDriver.cpp')
  31. create_jack_driver_obj(bld, 'net', '../common/JackNetDriver.cpp')
  32. create_jack_driver_obj(bld, 'loopback', '../common/JackLoopbackDriver.cpp')
  33. create_jack_driver_obj(bld, 'netone', [ '../common/JackNetOneDriver.cpp',
  34. '../common/netjack.c',
  35. '../common/netjack_packet.c' ], ["SAMPLERATE", "CELT"])
  36. create_jack_driver_obj(bld, 'portaudio', [ 'portaudio/JackPortAudioDevices.cpp',
  37. 'portaudio/JackPortAudioDriver.cpp'], ['PORTAUDIO'])
  38. create_jack_driver_obj(bld, 'winmme', [
  39. 'winmme/JackWinMMEDriver.cpp',
  40. 'winmme/JackWinMMEInputPort.cpp',
  41. 'winmme/JackWinMMEOutputPort.cpp',
  42. 'winmme/JackWinMMEPort.cpp'
  43. ])