[Telemetry] Fix telemetry's find_dependencies_unittest
[chromium-blink-merge.git] / ipc / ipc.gyp
blob420c891e481b5a0923b0aeff5edecec475b17d9b
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.
6   'variables': {
7     'chromium_code': 1,
8   },
9   'includes': [
10     'ipc.gypi',
11   ],
12   'targets': [
13     {
14       'target_name': 'ipc',
15       'type': '<(component)',
16       'variables': {
17         'ipc_target': 1,
18       },
19       'dependencies': [
20         '../base/base.gyp:base',
21         # TODO(viettrungluu): Needed for base/lazy_instance.h, which is suspect.
22         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
23         '../crypto/crypto.gyp:crypto',
24       ],
25       # TODO(gregoryd): direct_dependent_settings should be shared with the
26       # 64-bit target, but it doesn't work due to a bug in gyp
27       'direct_dependent_settings': {
28         'include_dirs': [
29           '..',
30         ],
31       },
32     },
33     {
34       'target_name': 'ipc_tests',
35       'type': '<(gtest_target_type)',
36       'dependencies': [
37         'ipc',
38         'test_support_ipc',
39         '../base/base.gyp:base',
40         '../base/base.gyp:base_i18n',
41         '../base/base.gyp:test_support_base',
42         '../testing/gtest.gyp:gtest',
43       ],
44       'include_dirs': [
45         '..'
46       ],
47       'sources': [
48         'ipc_channel_posix_unittest.cc',
49         'ipc_channel_proxy_unittest.cc',
50         'ipc_channel_unittest.cc',
51         'ipc_fuzzing_tests.cc',
52         'ipc_message_attachment_set_posix_unittest.cc',
53         'ipc_message_unittest.cc',
54         'ipc_message_utils_unittest.cc',
55         'ipc_send_fds_test.cc',
56         'ipc_sync_channel_unittest.cc',
57         'ipc_sync_message_unittest.cc',
58         'ipc_sync_message_unittest.h',
59         'run_all_unittests.cc',
60         'sync_socket_unittest.cc',
61         'unix_domain_socket_util_unittest.cc',
62       ],
63       'conditions': [
64         ['OS == "win" or OS == "ios"', {
65           'sources!': [
66             'unix_domain_socket_util_unittest.cc',
67           ],
68         }],
69         ['OS == "android"', {
70           'dependencies': [
71             '../testing/android/native_test.gyp:native_test_native_code',
72           ],
73         }],
74         ['os_posix == 1 and OS != "mac" and OS != "android"', {
75           'conditions': [
76             ['use_allocator!="none"', {
77               'dependencies': [
78                 '../base/allocator/allocator.gyp:allocator',
79               ],
80             }],
81           ],
82         }]
83       ],
84     },
85     {
86       'target_name': 'ipc_perftests',
87       'type': '<(gtest_target_type)',
88       # TODO(viettrungluu): Figure out which dependencies are really needed.
89       'dependencies': [
90         'ipc',
91         'test_support_ipc',
92         '../base/base.gyp:base',
93         '../base/base.gyp:base_i18n',
94         '../base/base.gyp:test_support_base',
95         '../base/base.gyp:test_support_perf',
96         '../testing/gtest.gyp:gtest',
97       ],
98       'include_dirs': [
99         '..'
100       ],
101       'sources': [
102         'ipc_perftests.cc',
103         'ipc_test_base.cc',
104         'ipc_test_base.h',
105       ],
106       'conditions': [
107         ['OS == "android"', {
108           'dependencies': [
109             '../testing/android/native_test.gyp:native_test_native_code',
110           ],
111         }],
112         ['os_posix == 1 and OS != "mac" and OS != "android"', {
113           'conditions': [
114             ['use_allocator!="none"', {
115               'dependencies': [
116                 '../base/allocator/allocator.gyp:allocator',
117               ],
118             }],
119           ],
120         }]
121       ],
122     },
123     {
124       'target_name': 'test_support_ipc',
125       'type': 'static_library',
126       'dependencies': [
127         'ipc',
128         '../base/base.gyp:base',
129         '../testing/gtest.gyp:gtest',
130       ],
131       'sources': [
132         'ipc_multiprocess_test.cc',
133         'ipc_multiprocess_test.h',
134         'ipc_perftest_support.cc',
135         'ipc_perftest_support.h',
136         'ipc_security_test_util.cc',
137         'ipc_security_test_util.h',
138         'ipc_test_base.cc',
139         'ipc_test_base.h',
140         'ipc_test_channel_listener.cc',
141         'ipc_test_channel_listener.h',
142         'ipc_test_sink.cc',
143         'ipc_test_sink.h',
144       ],
145     },
146   ],
147   'conditions': [
148     ['OS=="win" and target_arch=="ia32"', {
149       'targets': [
150         {
151           'target_name': 'ipc_win64',
152           'type': '<(component)',
153           'variables': {
154             'ipc_target': 1,
155           },
156           'dependencies': [
157             '../base/base.gyp:base_win64',
158             # TODO(viettrungluu): Needed for base/lazy_instance.h, which is
159             # suspect.
160             '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations_win64',
161             '../crypto/crypto.gyp:crypto_nacl_win64',
162           ],
163           # TODO(gregoryd): direct_dependent_settings should be shared with the
164           # 32-bit target, but it doesn't work due to a bug in gyp
165           'direct_dependent_settings': {
166             'include_dirs': [
167               '..',
168             ],
169           },
170           'configurations': {
171             'Common_Base': {
172               'msvs_target_platform': 'x64',
173             },
174           },
175         },
176       ],
177     }],
178     ['OS == "android"', {
179       'targets': [
180         {
181           'target_name': 'ipc_tests_apk',
182           'type': 'none',
183           'dependencies': [
184             'ipc_tests',
185           ],
186           'variables': {
187             'test_suite_name': 'ipc_tests',
188           },
189           'includes': [ '../build/apk_test.gypi' ],
190         },
191         {
192           'target_name': 'ipc_perftests_apk',
193           'type': 'none',
194           'dependencies': [
195             'ipc_perftests',
196           ],
197           'variables': {
198             'test_suite_name': 'ipc_perftests',
199           },
200           'includes': [ '../build/apk_test.gypi' ],
201         }],
202     }],
203     ['test_isolation_mode != "noop"', {
204       'targets': [
205         {
206           'target_name': 'ipc_tests_run',
207           'type': 'none',
208           'dependencies': [
209             'ipc_tests',
210           ],
211           'includes': [
212             '../build/isolate.gypi',
213           ],
214           'sources': [
215             'ipc_tests.isolate',
216           ],
217         },
218       ],
219     }],
220   ],