Upstream version 7.35.144.0
[platform/framework/web/crosswalk.git] / src / tools / gn / secondary / ipc / BUILD.gn
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 component("ipc") {
6   sources = [
7     "file_descriptor_set_posix.cc",
8     "file_descriptor_set_posix.h",
9     "ipc_channel.cc",
10     "ipc_channel.h",
11     "ipc_channel_factory.cc",
12     "ipc_channel_factory.h",
13     "ipc_channel_handle.h",
14     "ipc_channel_nacl.cc",
15     "ipc_channel_nacl.h",
16     "ipc_channel_posix.cc",
17     "ipc_channel_posix.h",
18     "ipc_channel_proxy.cc",
19     "ipc_channel_proxy.h",
20     "ipc_channel_reader.cc",
21     "ipc_channel_reader.h",
22     "ipc_channel_win.cc",
23     "ipc_channel_win.h",
24     "ipc_descriptors.h",
25     "ipc_export.h",
26     "ipc_forwarding_message_filter.cc",
27     "ipc_forwarding_message_filter.h",
28     "ipc_listener.h",
29     "ipc_logging.cc",
30     "ipc_logging.h",
31     "ipc_message.cc",
32     "ipc_message.h",
33     "ipc_message_macros.h",
34     "ipc_message_start.h",
35     "ipc_message_utils.cc",
36     "ipc_message_utils.h",
37     "ipc_param_traits.h",
38     "ipc_platform_file.cc",
39     "ipc_platform_file.h",
40     "ipc_sender.h",
41     "ipc_switches.cc",
42     "ipc_switches.h",
43     "ipc_sync_channel.cc",
44     "ipc_sync_channel.h",
45     "ipc_sync_message.cc",
46     "ipc_sync_message.h",
47     "ipc_sync_message_filter.cc",
48     "ipc_sync_message_filter.h",
49     "param_traits_log_macros.h",
50     "param_traits_macros.h",
51     "param_traits_read_macros.h",
52     "param_traits_write_macros.h",
53     "struct_constructor_macros.h",
54     "struct_destructor_macros.h",
55     "unix_domain_socket_util.cc",
56     "unix_domain_socket_util.h",
57   ]
58
59   #if (!is_untrusted_nacl) {
60     sources -= [
61       "ipc_channel_nacl.cc",
62       "ipc_channel_nacl.h",
63     ]
64
65   if (is_win || is_ios) {
66     sources -= [
67       "ipc_channel_factory.cc",
68       "unix_domain_socket_util.cc",
69     ]
70   }
71
72   defines = [ "IPC_IMPLEMENTATION" ]
73
74   deps = [
75     "//base",
76     # TODO(viettrungluu): Needed for base/lazy_instance.h, which is suspect.
77     "//base/third_party/dynamic_annotations",
78   ]
79 }
80
81 test("ipc_tests") {
82   sources = [
83     "file_descriptor_set_posix_unittest.cc",
84     "ipc_channel_posix_unittest.cc",
85     "ipc_channel_unittest.cc",
86     "ipc_fuzzing_tests.cc",
87     "ipc_message_unittest.cc",
88     "ipc_message_utils_unittest.cc",
89     "ipc_send_fds_test.cc",
90     "ipc_sync_channel_unittest.cc",
91     "ipc_sync_message_unittest.cc",
92     "ipc_sync_message_unittest.h",
93     "ipc_test_base.cc",
94     "ipc_test_base.h",
95     "sync_socket_unittest.cc",
96     "unix_domain_socket_util_unittest.cc",
97   ]
98
99   if (is_win || is_ios) {
100     sources -= [ "unix_domain_socket_util_unittest.cc" ]
101   }
102   #if (is_android && gtest_target_type == "shared_library") {
103   #  deps += "/testing/android/native_test.gyp:native_testNative_code"
104   #}
105   #if (is_posix && !is_mac && !is_android) {
106   #  # TODO(dmikurube): Kill linux_use_tcmalloc. http://crbug.com/345554
107   #  if ((use_allocator!="none" && use_allocator!="see_use_tcmalloc") || (use_allocator=="see_use_tcmalloc" && linux_use_tcmalloc)) {
108   #    deps += "/base/allocator"
109   #  }
110   #}
111
112   deps = [
113     ":ipc",
114     ":test_support_ipc",
115     "//base",
116     "//base:base_i18n",
117     "//base/test:run_all_unittests",
118     "//base/test:test_support_base",
119     "//testing/gtest",
120   ]
121 }
122
123 test("ipc_perftests") {
124   sources = [
125     "ipc_perftests.cc",
126     "ipc_test_base.cc",
127     "ipc_test_base.h",
128   ]
129
130   #if (is_android && gtest_target_type == "shared_library") {
131   #  deps += "/testing/android/native_test.gyp:native_testNative_code"
132   #}
133   #if (is_posix && !is_mac && !is_android) {
134   #  # TODO(dmikurube): Kill linux_use_tcmalloc. http://crbug.com/345554
135   #  if ((use_allocator!="none" && use_allocator!="see_use_tcmalloc") || (use_allocator=="see_use_tcmalloc" && linux_use_tcmalloc)) {
136   #    deps += "//base/allocator"
137   #  }
138   #}
139
140   deps = [
141     ":ipc",
142     ":test_support_ipc",
143     "//base",
144     "//base:base_i18n",
145     "//base/test:test_support_base",
146     "//base/test:test_support_perf",
147     "//testing/gtest",
148   ]
149 }
150
151 static_library("test_support_ipc") {
152   sources = [
153     "ipc_multiprocess_test.cc",
154     "ipc_multiprocess_test.h",
155     "ipc_test_sink.cc",
156     "ipc_test_sink.h",
157   ]
158   deps = [
159     ":ipc",
160     "//base",
161     "//testing/gtest",
162   ]
163 }
164