Paul Davis
065e1e6334
Still not clear why this file requires the global keyword to make children global, but the toplevel wscript does not.
75 lines
2.3 KiB
Python
75 lines
2.3 KiB
Python
#!/usr/bin/env python
|
|
from waflib.extras import autowaf as autowaf
|
|
from waflib import Options
|
|
|
|
# Version of this package (even if built as a child)
|
|
LIBSURFACES_VERSION = '4.1.0'
|
|
|
|
# Library version (UNIX style major, minor, micro)
|
|
# major increment <=> incompatible changes
|
|
# minor increment <=> compatible changes (additions)
|
|
# micro increment <=> no interface changes
|
|
LIBSURFACES_LIB_VERSION = '4.1.0'
|
|
|
|
# Variables for 'waf dist'
|
|
APPNAME = 'libsurfaces'
|
|
VERSION = LIBSURFACES_VERSION
|
|
|
|
# Mandatory variables
|
|
top = '.'
|
|
out = 'build'
|
|
|
|
children = [
|
|
'control_protocol',
|
|
'generic_midi',
|
|
'mackie',
|
|
]
|
|
|
|
def options(opt):
|
|
autowaf.set_options(opt)
|
|
|
|
def sub_config_and_use(conf, name, has_objects = True):
|
|
conf.recurse(name)
|
|
autowaf.set_local_lib(conf, name, has_objects)
|
|
|
|
def configure(conf):
|
|
global children
|
|
|
|
autowaf.set_recursive()
|
|
autowaf.configure(conf)
|
|
|
|
if (conf.env['build_target'] == 'mingw'): return
|
|
|
|
#autowaf.check_pkg(conf, 'libusb-1.0', uselib_store='USB', mandatory=False)
|
|
#if Options.options.tranzport and conf.is_defined('HAVE_USB'):
|
|
# conf.define('BUILD_TRANZPORT', 1)
|
|
|
|
if autowaf.check_pkg (conf, 'liblo', mandatory=False, uselib_store="LO", atleast_version="0.24"):
|
|
children += [ 'osc' ]
|
|
|
|
conf.check_cc (header_name='cwiid.h', define_name='HAVE_CWIID_H',mandatory=False)
|
|
if conf.is_defined('HAVE_CWIID_H'):
|
|
conf.check_cc (header_name='bluetooth/bluetooth.h', define_name='HAVE_BLUETOOTH_H',mandatory=False)
|
|
if conf.is_defined('HAVE_BLUETOOTH_H'):
|
|
autowaf.check_pkg(conf, 'cwiid', uselib_store='CWIID', atleast_version='0.6.00',mandatory=False)
|
|
if conf.is_defined ('HAVE_CWIID'):
|
|
conf.define ('BUILD_WIIMOTE', 1)
|
|
children += [ 'wiimote' ]
|
|
else:
|
|
print('You have the cwiid headers needed to compile wiimote support BUT you are missing the pkg-config file for cwiid')
|
|
else:
|
|
print('You are missing the libbluetooth headers needed to compile wiimote support')
|
|
else:
|
|
print('You are missing the cwiid headers needed to compile wiimote support')
|
|
|
|
for i in children:
|
|
sub_config_and_use(conf, i)
|
|
|
|
|
|
def build(bld):
|
|
for i in children:
|
|
bld.recurse (i)
|
|
|
|
def shutdown():
|
|
autowaf.shutdown()
|