1 # Copyright 2013 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.
11 # GN version: //device/bluetooth
12 'target_name': 'device_bluetooth',
13 'type': '<(component)',
15 '../../base/base.gyp:base',
16 '../../crypto/crypto.gyp:crypto',
17 '../../net/net.gyp:net',
18 '../../ui/base/ui_base.gyp:ui_base',
19 'bluetooth_strings.gyp:bluetooth_strings',
23 'DEVICE_BLUETOOTH_IMPLEMENTATION',
26 # Note: file list duplicated in GN build.
27 'android/bluetooth_jni_registrar.cc',
28 'android/bluetooth_jni_registrar.h',
29 'android/wrappers.cc',
31 'bluetooth_adapter.cc',
32 'bluetooth_adapter.h',
33 'bluetooth_adapter_android.cc',
34 'bluetooth_adapter_android.h',
35 'bluetooth_adapter_chromeos.cc',
36 'bluetooth_adapter_chromeos.h',
37 'bluetooth_adapter_factory.cc',
38 'bluetooth_adapter_factory.h',
39 'bluetooth_adapter_mac.h',
40 'bluetooth_adapter_mac.mm',
41 "bluetooth_adapter_profile_chromeos.cc",
42 "bluetooth_adapter_profile_chromeos.h",
43 'bluetooth_adapter_win.cc',
44 'bluetooth_adapter_win.h',
45 'bluetooth_advertisement.cc',
46 'bluetooth_advertisement.h',
47 'bluetooth_advertisement_chromeos.cc',
48 'bluetooth_advertisement_chromeos.h',
49 'bluetooth_audio_sink.cc',
50 'bluetooth_audio_sink.h',
51 'bluetooth_audio_sink_chromeos.cc',
52 'bluetooth_audio_sink_chromeos.h',
53 'bluetooth_channel_mac.mm',
54 'bluetooth_channel_mac.h',
55 'bluetooth_classic_device_mac.mm',
56 'bluetooth_classic_device_mac.h',
57 'bluetooth_device.cc',
59 'bluetooth_device_android.h',
60 'bluetooth_device_android.cc',
61 'bluetooth_device_chromeos.cc',
62 'bluetooth_device_chromeos.h',
63 'bluetooth_device_mac.mm',
64 'bluetooth_device_mac.h',
65 'bluetooth_device_win.cc',
66 'bluetooth_device_win.h',
67 'bluetooth_discovery_filter.cc',
68 'bluetooth_discovery_filter.h',
69 'bluetooth_discovery_manager_mac.mm',
70 'bluetooth_discovery_manager_mac.h',
71 'bluetooth_discovery_session.cc',
72 'bluetooth_discovery_session.h',
73 'bluetooth_discovery_session_outcome.h',
74 'bluetooth_gatt_characteristic.cc',
75 'bluetooth_gatt_characteristic.h',
76 'bluetooth_gatt_connection.cc',
77 'bluetooth_gatt_connection.h',
78 'bluetooth_gatt_connection_chromeos.cc',
79 'bluetooth_gatt_connection_chromeos.h',
80 'bluetooth_gatt_descriptor.cc',
81 'bluetooth_gatt_descriptor.h',
82 'bluetooth_gatt_notify_session.cc',
83 'bluetooth_gatt_notify_session.h',
84 'bluetooth_gatt_notify_session_chromeos.cc',
85 'bluetooth_gatt_notify_session_chromeos.h',
86 'bluetooth_gatt_service.cc',
87 'bluetooth_gatt_service.h',
88 'bluetooth_init_win.cc',
89 'bluetooth_init_win.h',
90 'bluetooth_l2cap_channel_mac.mm',
91 'bluetooth_l2cap_channel_mac.h',
92 'bluetooth_low_energy_central_manager_delegate.mm',
93 'bluetooth_low_energy_central_manager_delegate.h',
94 'bluetooth_low_energy_defs_win.cc',
95 'bluetooth_low_energy_defs_win.h',
96 'bluetooth_low_energy_device_mac.h',
97 'bluetooth_low_energy_device_mac.mm',
98 'bluetooth_low_energy_discovery_manager_mac.h',
99 'bluetooth_low_energy_discovery_manager_mac.mm',
100 'bluetooth_low_energy_win.cc',
101 'bluetooth_low_energy_win.h',
102 'bluetooth_pairing_chromeos.cc',
103 'bluetooth_pairing_chromeos.h',
104 'bluetooth_remote_gatt_characteristic_chromeos.cc',
105 'bluetooth_remote_gatt_characteristic_chromeos.h',
106 'bluetooth_remote_gatt_descriptor_chromeos.cc',
107 'bluetooth_remote_gatt_descriptor_chromeos.h',
108 'bluetooth_remote_gatt_service_chromeos.cc',
109 'bluetooth_remote_gatt_service_chromeos.h',
110 'bluetooth_rfcomm_channel_mac.mm',
111 'bluetooth_rfcomm_channel_mac.h',
112 'bluetooth_service_record_win.cc',
113 'bluetooth_service_record_win.h',
114 'bluetooth_socket.cc',
115 'bluetooth_socket.h',
116 'bluetooth_socket_chromeos.cc',
117 'bluetooth_socket_chromeos.h',
118 'bluetooth_socket_mac.h',
119 'bluetooth_socket_mac.mm',
120 'bluetooth_socket_net.cc',
121 'bluetooth_socket_net.h',
122 'bluetooth_socket_thread.cc',
123 'bluetooth_socket_thread.h',
124 'bluetooth_socket_win.cc',
125 'bluetooth_socket_win.h',
126 'bluetooth_task_manager_win.cc',
127 'bluetooth_task_manager_win.h',
134 '../../build/linux/system.gyp:dbus',
135 '../../chromeos/chromeos.gyp:chromeos',
136 '../../dbus/dbus.gyp:dbus',
138 'export_dependent_settings': [
139 '../../build/linux/system.gyp:dbus'
142 ['OS == "android"', {
144 'device_bluetooth_java',
145 'device_bluetooth_jni_headers',
149 # The following two blocks are duplicated. They apply to static lib
150 # and shared lib configurations respectively.
151 'all_dependent_settings': { # For static lib, apply to dependents.
156 # Despite MSDN stating that Bthprops.dll contains the
157 # symbols declared by bthprops.lib, they actually reside here:
164 'msvs_settings': { # For shared lib, apply to self.
168 # Despite MSDN stating that Bthprops.dll contains the
169 # symbols declared by bthprops.lib, they actually reside here:
179 '$(SDKROOT)/System/Library/Frameworks/IOBluetooth.framework',
182 ['mac_sdk == "10.10"', {
184 # In the OSX 10.10 SDK, CoreBluetooth became a top level
185 # framework. Previously, it was nested in IOBluetooth. In
186 # order for Chrome to run on OSes older than OSX 10.10, the
187 # top level CoreBluetooth framework must be weakly linked.
189 '-weak_framework CoreBluetooth',
199 # GN version: //device/bluetooth/uribeacon
200 'target_name': 'uribeacon',
201 'type': 'static_library',
203 '../../base/base.gyp:base',
206 'uribeacon/uri_encoder.cc',
207 'uribeacon/uri_encoder.h'
211 # GN version: //device/bluetooth:mocks
212 'target_name': 'device_bluetooth_mocks',
213 'type': 'static_library',
215 '../../testing/gmock.gyp:gmock',
222 # Note: file list duplicated in GN build.
223 'test/mock_bluetooth_adapter.cc',
224 'test/mock_bluetooth_adapter.h',
225 'test/mock_bluetooth_advertisement.cc',
226 'test/mock_bluetooth_advertisement.h',
227 'test/mock_bluetooth_central_manager_mac.mm',
228 'test/mock_bluetooth_central_manager_mac.h',
229 'test/mock_bluetooth_device.cc',
230 'test/mock_bluetooth_device.h',
231 'test/mock_bluetooth_discovery_session.cc',
232 'test/mock_bluetooth_discovery_session.h',
233 'test/mock_bluetooth_gatt_characteristic.cc',
234 'test/mock_bluetooth_gatt_characteristic.h',
235 'test/mock_bluetooth_gatt_connection.cc',
236 'test/mock_bluetooth_gatt_connection.h',
237 'test/mock_bluetooth_gatt_descriptor.cc',
238 'test/mock_bluetooth_gatt_descriptor.h',
239 'test/mock_bluetooth_gatt_notify_session.cc',
240 'test/mock_bluetooth_gatt_notify_session.h',
241 'test/mock_bluetooth_gatt_service.cc',
242 'test/mock_bluetooth_gatt_service.h',
243 'test/mock_bluetooth_socket.cc',
244 'test/mock_bluetooth_socket.h',
249 ['OS == "android"', {
252 'target_name': 'device_bluetooth_jni_headers',
255 'android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java',
256 'android/java/src/org/chromium/device/bluetooth/ChromeBluetoothDevice.java',
257 'android/java/src/org/chromium/device/bluetooth/Wrappers.java',
260 'jni_gen_package': 'device_bluetooth',
262 'includes': [ '../../build/jni_generator.gypi' ],
265 'target_name': 'device_bluetooth_java',
268 '../../base/base.gyp:base',
271 'java_in_dir': '../../device/bluetooth/android/java',
273 'includes': [ '../../build/java.gypi' ],