In combined --dbus and --classic compilation ode, use PulseAudio acquire/release...
[jack2.git] / linux / wscript
bloba181c2233c10b0138511ee23a185ce660dfb21c8
1 #! /usr/bin/env python
2 # encoding: utf-8
4 def configure(conf):
5 conf.check_cfg(package='alsa', atleast_version='1.0.0', args='--cflags --libs')
6 conf.env['BUILD_DRIVER_ALSA'] = conf.is_defined('HAVE_ALSA')
8 conf. check_cfg(package='libfreebob', atleast_version='1.0.0', args='--cflags --libs')
9 conf.env['BUILD_DRIVER_FREEBOB'] = conf.is_defined('HAVE_LIBFREEBOB')
11 conf. check_cfg(package='libffado', atleast_version='1.999.17', args='--cflags --libs')
12 conf.env['BUILD_DRIVER_FFADO'] = conf.is_defined('HAVE_LIBFFADO')
14 def create_jack_driver_obj(bld, target, sources, uselib = None):
15 driver = bld.new_task_gen('cxx', 'shlib')
16 driver.features.append('cc')
17 driver.env['shlib_PATTERN'] = 'jack_%s.so'
18 driver.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
19 driver.includes = ['.', '../linux', '../posix', '../common', '../common/jack', '../dbus']
20 driver.target = target
21 driver.source = sources
22 driver.install_path = '${ADDON_DIR}/'
23 if uselib:
24 driver.uselib = uselib
25 driver.uselib_local = 'serverlib'
26 return driver
28 def build(bld):
29 if bld.env['BUILD_JACKD'] == True:
30 jackd = bld.new_task_gen('cxx', 'program')
31 jackd.includes = ['../linux', '../posix', '../common/jack', '../common', '../dbus']
32 jackd.defines = 'HAVE_CONFIG_H'
33 jackd.source = ['../common/Jackdmp.cpp']
34 if bld.env['IS_LINUX'] and bld.env['BUILD_JACKDBUS']:
35 jackd.source += ['../dbus/reserve.c', '../dbus/audio_reserve.c']
36 jackd.uselib = 'PTHREAD DL RT DBUS-1'
37 else:
38 jackd.uselib = 'PTHREAD DL RT'
39 jackd.uselib_local = 'serverlib'
40 jackd.target = 'jackd'
42 create_jack_driver_obj(bld, 'dummy', '../common/JackDummyDriver.cpp')
44 alsa_driver_src = ['alsa/JackAlsaDriver.cpp',
45 'alsa/alsa_rawmidi.c',
46 'alsa/alsa_seqmidi.c',
47 'alsa/alsa_midi_jackmp.cpp',
48 '../common/memops.c',
49 'alsa/generic_hw.c',
50 'alsa/hdsp.c',
51 'alsa/hammerfall.c',
52 'alsa/ice1712.c'
55 if bld.env['BUILD_DRIVER_ALSA'] == True:
56 create_jack_driver_obj(bld, 'alsa', alsa_driver_src, "ALSA")
58 if bld.env['BUILD_DRIVER_FREEBOB'] == True:
59 create_jack_driver_obj(bld, 'freebob', 'freebob/JackFreebobDriver.cpp', "LIBFREEBOB")
61 if bld.env['BUILD_DRIVER_FFADO'] == True:
62 create_jack_driver_obj(bld, 'firewire', 'firewire/JackFFADODriver.cpp', "LIBFFADO")
64 create_jack_driver_obj(bld, 'net', '../common/JackNetDriver.cpp')