blob: 1b0aa566bdb8fab81605124c20be8a5a2e9b25e7 [file] [log] [blame]
# Copyright (c) 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'targets': [
{
'target_name': 'libusb',
'type': 'static_library',
'sources': [
'src/config.h',
'src/libusb/core.c',
'src/libusb/descriptor.c',
'src/libusb/hotplug.c',
'src/libusb/hotplug.h',
'src/libusb/interrupt.c',
'src/libusb/interrupt.h',
'src/libusb/io.c',
'src/libusb/libusb.h',
'src/libusb/libusbi.h',
'src/libusb/strerror.c',
'src/libusb/sync.c',
'src/libusb/version.h',
'src/libusb/version_nano.h',
],
'variables': {
'clang_warning_flags': [
# guid_eq in windows_usb.c is unused.
'-Wno-unused-function',
],
},
'include_dirs': [
'src',
'src/libusb',
'src/libusb/os',
],
'direct_dependent_settings': {
'include_dirs': [
'src/libusb',
],
},
'conditions': [
['OS=="linux" or OS=="mac"', {
'sources': [
'src/libusb/os/poll_posix.c',
'src/libusb/os/poll_posix.h',
'src/libusb/os/threads_posix.c',
'src/libusb/os/threads_posix.h',
],
'defines': [
'DEFAULT_VISIBILITY=',
'HAVE_GETTIMEOFDAY=1',
'HAVE_POLL_H=1',
'HAVE_SYS_TIME_H=1',
'LIBUSB_DESCRIBE="1.0.16"',
'POLL_NFDS_TYPE=nfds_t',
'THREADS_POSIX=1',
],
}],
['OS=="linux"', {
'sources': [
'src/libusb/os/linux_usbfs.c',
'src/libusb/os/linux_usbfs.h',
],
'defines': [
'OS_LINUX=1',
'_GNU_SOURCE=1',
],
}],
['chromeos==1', {
'defines': [
'USBI_TIMERFD_AVAILABLE',
]
}],
['use_udev==1', {
'sources': [
'src/libusb/os/linux_udev.cc',
],
'defines': [
'HAVE_LIBUDEV=1',
'USE_UDEV=1',
],
'dependencies': [
'../../device/udev_linux/udev.gyp:udev_linux',
],
'include_dirs': [
'../..',
],
}],
['OS=="linux" and use_udev==0', {
'sources': [
'src/libusb/os/linux_netlink.c',
],
'defines': [
'HAVE_LINUX_NETLINK_H',
],
'conditions': [
['clang==1', {
'cflags': [
'-Wno-pointer-sign',
]
}]
],
}],
['OS=="mac"', {
'sources': [
'src/libusb/os/darwin_usb.c',
'src/libusb/os/darwin_usb.h',
],
'defines': [
'OS_DARWIN=1',
],
}],
['OS=="win"', {
'sources': [
'src/libusb/os/poll_windows.c',
'src/libusb/os/poll_windows.h',
'src/libusb/os/threads_windows.c',
'src/libusb/os/threads_windows.h',
'src/libusb/os/windows_common.h',
'src/libusb/os/windows_usb.c',
'src/libusb/os/windows_usb.h',
'src/msvc/config.h',
'src/msvc/inttypes.h',
'src/msvc/stdint.h',
],
'include_dirs!': [
'src',
],
'include_dirs': [
'src/msvc',
],
'msvs_disabled_warnings': [ 4267 ],
}],
],
},
],
}