13
0
livetrax/libs/hidapi/wscript
Mads Kiilerich 6b61b03434 wscript: drop traces of shutdown() handling
autowaf has no real shutdown functionality anyway. The automatic
shutdown function that could have been called wouldn't work anyway, as
it takes an argument.

The only reason it doesn't fail is that the top level wscript has no
shutdown handling and doesn't recurse to other scripts, so it is all
dead code.
2023-10-15 10:47:16 -06:00

56 lines
1.9 KiB
Python

#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
import re
import sys
HIDAPI_VERSION = '0.8.0'
def options(opt):
pass
def configure(conf):
if conf.is_defined('USE_EXTERNAL_LIBS'):
autowaf.check_pkg(conf, 'hidapi-hidraw', uselib_store='HIDAPI', mandatory=False)
else:
if conf.env['build_target'] == 'mingw':
conf.check (compiler='cxx', lib='setupapi', mandatory=True, uselib_store='SETUPAPI')
conf.define ('HAVE_HIDAPI', 1)
elif sys.platform == 'darwin':
conf.define ('HAVE_HIDAPI', 1)
elif re.search ("linux", sys.platform) != None:
autowaf.check_pkg(conf, 'libudev', uselib_store='UDEV', mandatory=False)
if conf.is_defined('HAVE_UDEV'):
conf.define ('HAVE_HIDAPI', 1)
else:
print ("hidapi is not yet available for the given system")
def build(bld):
if bld.is_defined('USE_EXTERNAL_LIBS'):
return
if not bld.is_defined('HAVE_HIDAPI'):
return
# Host Library
obj = bld(features = 'c cstlib')
autowaf.ensure_visible_symbols (obj, False)
obj.export_includes = ['hidapi']
obj.includes = ['hidapi']
obj.name = 'hidapi'
obj.target = 'hidapi'
obj.vnum = HIDAPI_VERSION
obj.install_path = bld.env['LIBDIR']
if bld.env['build_target'] == 'mingw':
obj.source = 'windows/hid.c'
obj.linkflags = [ '-lsetupapi', '-mwindows' ]
obj.uselib = 'SETUPAPI'
else:
obj.cflags += [ bld.env['compiler_flags_dict']['pic'] ]
if sys.platform == 'darwin':
obj.source = 'mac/hid.c'
obj.framework = [ 'IOKit', 'CoreFoundation' ]
else:
obj.source = 'linux/hid.c'
if re.search ("linux", sys.platform) != None:
obj.uselib = 'UDEV'