avoid compiler warnings about un-implemented MIDI functions (for now)
[ardour.git] / libs / surfaces / wscript
1 #!/usr/bin/env python
2 import autowaf
3 import Options
4
5 # Version of this package (even if built as a child)
6 LIBSURFACES_VERSION = '4.1.0'
7
8 # Library version (UNIX style major, minor, micro)
9 # major increment <=> incompatible changes
10 # minor increment <=> compatible changes (additions)
11 # micro increment <=> no interface changes
12 LIBSURFACES_LIB_VERSION = '4.1.0'
13
14 # Variables for 'waf dist'
15 APPNAME = 'libsurfaces'
16 VERSION = LIBSURFACES_VERSION
17
18 # Mandatory variables
19 srcdir = '.'
20 blddir = 'build'
21
22 children = [
23         'control_protocol',
24         'frontier',
25         'generic_midi',
26         'mackie',
27         'osc',
28         'powermate',
29         'tranzport',
30         'wiimote'
31 ]
32
33 def set_options(opt):
34     autowaf.set_options(opt)
35
36 def sub_config_and_use(conf, name, has_objects = True):
37     conf.sub_config(name)
38     autowaf.set_local_lib(conf, name, has_objects)
39
40 def configure(conf):
41     autowaf.set_recursive()
42     autowaf.configure(conf)
43
44     for i in children:
45         sub_config_and_use(conf, i)
46
47     conf.check_cc (lib='libusb', header_name='libusb.h', function_name='usb_interrupt_write', define_name='BUILD_TRANZPORT')
48     conf.check_cc (header_name='linux/input.h', define_name='BUILD_POWERMATE')
49     conf.check_cc (lib='lo', header_name='lo/lo.h', function_name='lo_server_new', define_name='BUILD_OSC')
50
51     if Options.options.wiimote:
52         conf.check_cc (header_name='cwiid.h',define_name='HAVE_CWIID_H')
53         if not conf.env['HAVE_CWIID_H']:
54             print('WIIMOTE configured but you are missing libcwiid!')
55             sys.exit(1)
56         conf.check_cc (header_name='bluetooth/bluetooth.h',define_name='HAVE_BLUETOOTH_H')
57         if not conf.env['HAVE_BLUETOOTH_H']:
58             print('WIIMOTE configured but you are missing the libbluetooth headers needed to compile wiimote support!')
59             sys.exit(1)
60         conf.define ('BUILD_WIIMOTE', 1)
61
62 def build(bld):
63     bld.add_subdirs('control_protocol')
64     bld.add_subdirs('generic_midi')
65     bld.add_subdirs('mackie')
66     if bld.env['BUILD_OSC']:
67         bld.add_subdirs('osc')
68     if bld.env['BUILD_POWERMATE']:
69         bld.add_subdirs('powermate')
70     if bld.env['BUILD_WIIMOTE']:
71         bld.add_subdirs('wiimote')
72     if bld.env['BUILD_TRANZPORT']:
73         bld.add_subdirs('tranzport')
74
75 def shutdown():
76     autowaf.shutdown()