1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style license that can be 3 # found in the LICENSE file. 4 5 { 6 'targets': [ 7 { 8 'target_name': 'libusb', 9 'type': 'static_library', 10 'sources': [ 11 'src/config.h', 12 'src/libusb/core.c', 13 'src/libusb/descriptor.c', 14 'src/libusb/hotplug.c', 15 'src/libusb/hotplug.h', 16 'src/libusb/interrupt.c', 17 'src/libusb/interrupt.h', 18 'src/libusb/io.c', 19 'src/libusb/libusb.h', 20 'src/libusb/libusbi.h', 21 'src/libusb/strerror.c', 22 'src/libusb/sync.c', 23 'src/libusb/version.h', 24 'src/libusb/version_nano.h', 25 ], 26 'include_dirs': [ 27 'src', 28 'src/libusb', 29 'src/libusb/os', 30 ], 31 'direct_dependent_settings': { 32 'include_dirs': [ 33 'src/libusb', 34 ], 35 }, 36 'conditions': [ 37 [ 'OS == "linux" or OS == "android" or OS == "mac"', { 38 'sources': [ 39 'src/libusb/os/poll_posix.c', 40 'src/libusb/os/poll_posix.h', 41 'src/libusb/os/threads_posix.c', 42 'src/libusb/os/threads_posix.h', 43 ], 44 'defines': [ 45 'DEFAULT_VISIBILITY=', 46 'HAVE_GETTIMEOFDAY=1', 47 'HAVE_POLL_H=1', 48 'HAVE_SYS_TIME_H=1', 49 'LIBUSB_DESCRIBE="1.0.16"', 50 'POLL_NFDS_TYPE=nfds_t', 51 'THREADS_POSIX=1', 52 ], 53 }], 54 [ 'OS == "linux" or OS == "android"', { 55 'sources': [ 56 'src/libusb/os/linux_usbfs.c', 57 'src/libusb/os/linux_usbfs.h', 58 ], 59 'defines': [ 60 'OS_LINUX=1', 61 '_GNU_SOURCE=1', 62 ], 63 }], 64 [ 'use_udev == 1 or OS == "android"', { 65 'sources': [ 66 'src/libusb/os/linux_udev.c', 67 ], 68 'defines': [ 69 'HAVE_LIBUDEV=1', 70 'USE_UDEV=1', 71 ], 72 }], 73 [ 'OS == "linux" and use_udev == 0', { 74 'sources': [ 75 'src/libusb/os/linux_netlink.c', 76 ], 77 'defines': [ 78 'HAVE_LINUX_NETLINK_H', 79 ], 80 'conditions': [ 81 ['clang==1', { 82 'cflags': [ 83 '-Wno-pointer-sign', 84 ] 85 }] 86 ], 87 }], 88 [ 'OS == "mac"', { 89 'sources': [ 90 'src/libusb/os/darwin_usb.c', 91 'src/libusb/os/darwin_usb.h', 92 ], 93 'defines': [ 94 'OS_DARWIN=1', 95 ], 96 }], 97 [ 'OS == "win"', { 98 'sources': [ 99 'src/libusb/os/poll_windows.c', 100 'src/libusb/os/poll_windows.h', 101 'src/libusb/os/threads_windows.c', 102 'src/libusb/os/threads_windows.h', 103 'src/libusb/os/windows_common.h', 104 'src/libusb/os/windows_usb.c', 105 'src/libusb/os/windows_usb.h', 106 'src/msvc/config.h', 107 'src/msvc/inttypes.h', 108 'src/msvc/stdint.h', 109 ], 110 'include_dirs!': [ 111 'src', 112 ], 113 'include_dirs': [ 114 'src/msvc', 115 ], 116 'msvs_disabled_warnings': [ 4267 ], 117 }], 118 ], 119 }, 120 ], 121 } 122