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