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  'target_defaults': {
7    'variables': {
8      'ipc_target': 0,
9    },
10    'target_conditions': [
11      # This part is shared between the targets defined below.
12      ['ipc_target==1', {
13        'sources': [
14          'file_descriptor_set_posix.cc',
15          'file_descriptor_set_posix.h',
16          'ipc_channel.cc',
17          'ipc_channel.h',
18          'ipc_channel_factory.cc',
19          'ipc_channel_factory.h',
20          'ipc_channel_common.cc',
21          'ipc_channel_handle.h',
22          'ipc_channel_nacl.cc',
23          'ipc_channel_nacl.h',
24          'ipc_channel_posix.cc',
25          'ipc_channel_posix.h',
26          'ipc_channel_proxy.cc',
27          'ipc_channel_proxy.h',
28          'ipc_channel_reader.cc',
29          'ipc_channel_reader.h',
30          'ipc_channel_win.cc',
31          'ipc_channel_win.h',
32          'ipc_descriptors.h',
33          'ipc_export.h',
34          'ipc_forwarding_message_filter.cc',
35          'ipc_forwarding_message_filter.h',
36          'ipc_listener.h',
37          'ipc_logging.cc',
38          'ipc_logging.h',
39          'ipc_message.cc',
40          'ipc_message.h',
41          'ipc_message_macros.h',
42          'ipc_message_start.h',
43          'ipc_message_utils.cc',
44          'ipc_message_utils.h',
45          'ipc_param_traits.h',
46          'ipc_platform_file.cc',
47          'ipc_platform_file.h',
48          'ipc_sender.h',
49          'ipc_switches.cc',
50          'ipc_switches.h',
51          'ipc_sync_channel.cc',
52          'ipc_sync_channel.h',
53          'ipc_sync_message.cc',
54          'ipc_sync_message.h',
55          'ipc_sync_message_filter.cc',
56          'ipc_sync_message_filter.h',
57          'message_filter.cc',
58          'message_filter.h',
59          'message_filter_router.cc',
60          'message_filter_router.h',
61          'param_traits_log_macros.h',
62          'param_traits_macros.h',
63          'param_traits_read_macros.h',
64          'param_traits_write_macros.h',
65          'struct_constructor_macros.h',
66          'struct_destructor_macros.h',
67          'unix_domain_socket_util.cc',
68          'unix_domain_socket_util.h',
69        ],
70        'defines': [
71          'IPC_IMPLEMENTATION',
72        ],
73        'include_dirs': [
74          '..',
75        ],
76        'target_conditions': [
77          ['>(nacl_untrusted_build)==1', {
78            'sources!': [
79              'ipc_channel.cc',
80              'ipc_channel_posix.cc',
81              'unix_domain_socket_util.cc',
82            ],
83          }],
84          ['OS == "win" or OS == "ios"', {
85            'sources!': [
86              'unix_domain_socket_util.cc',
87            ],
88          }],
89        ],
90      }],
91    ],
92  },
93}
94