Fix build break
[chromium-blink-merge.git] / chrome / nacl.gypi
blob0607ef54ff5570fe68746f7330d4bb2e6196c535
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   'include': [
7     '../native_client/build/untrusted.gypi',
8   ],
9   'target_defaults': {
10     'variables': {
11       'nacl_target': 0,
12     },
13     'target_conditions': [
14       # This part is shared between the targets defined below. Only files and
15       # settings relevant for building the Win64 target should be added here.
16       ['nacl_target==1', {
17         'include_dirs': [
18           '<(INTERMEDIATE_DIR)',
19         ],
20         'defines': [
21           '<@(nacl_defines)',
22         ],
23         'sources': [
24           # .cc, .h, and .mm files under nacl that are used on all
25           # platforms, including both 32-bit and 64-bit Windows.
26           # Test files are also not included.
27           'nacl/nacl_ipc_adapter.cc',
28           'nacl/nacl_ipc_adapter.h',
29           'nacl/nacl_main.cc',
30           'nacl/nacl_main_platform_delegate.h',
31           'nacl/nacl_main_platform_delegate_linux.cc',
32           'nacl/nacl_main_platform_delegate_mac.mm',
33           'nacl/nacl_main_platform_delegate_win.cc',
34           'nacl/nacl_listener.cc',
35           'nacl/nacl_listener.h',
36           'nacl/nacl_validation_db.h',
37           'nacl/nacl_validation_query.cc',
38           'nacl/nacl_validation_query.h',
39         ],
40         # TODO(gregoryd): consider switching NaCl to use Chrome OS defines
41         'conditions': [
42           ['OS=="win"', {
43             'defines': [
44               '__STDC_LIMIT_MACROS=1',
45             ],
46             'include_dirs': [
47               '<(DEPTH)/third_party/wtl/include',
48             ],
49           },],
50           ['OS=="linux"', {
51             'defines': [
52               '__STDC_LIMIT_MACROS=1',
53             ],
54             'sources': [
55               'app/nacl_fork_delegate_linux.cc',
56               'app/nacl_fork_delegate_linux.h',
57             ],
58           },],
59         ],
60       }],
61     ],
62   },
63   'conditions': [
64     ['disable_nacl!=1', {
65       'targets': [
66         {
67           'target_name': 'nacl',
68           'type': 'static_library',
69           'variables': {
70             'nacl_target': 1,
71           },
72           'dependencies': [
73             '../base/base.gyp:base',
74             '../ipc/ipc.gyp:ipc',
75             '../ppapi/native_client/src/trusted/plugin/plugin.gyp:ppGoogleNaClPluginChrome',
76             '../ppapi/ppapi_internal.gyp:ppapi_shared',
77             '../ppapi/ppapi_internal.gyp:ppapi_ipc',
78             '../native_client/src/trusted/service_runtime/service_runtime.gyp:sel_main_chrome',
79           ],
80           'conditions': [
81             ['disable_nacl_untrusted==0', {
82               'dependencies': [
83                 '../ppapi/native_client/native_client.gyp:nacl_irt',
84                 '../ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_irt_shim.gyp:pnacl_irt_shim',
85                 '../ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_support_extension.gyp:pnacl_support_extension',
86               ],
87             }],
88           ],
89           'direct_dependent_settings': {
90             'defines': [
91               '<@(nacl_defines)',
92             ],
93           },
94         },
95       ],
96       'conditions': [
97         ['OS=="win" and target_arch=="ia32"', {
98           'targets': [
99             {
100               'target_name': 'nacl_win64',
101               'type': 'static_library',
102               'variables': {
103                 'nacl_target': 1,
104               },
105               'dependencies': [
106                 '../native_client/src/trusted/service_runtime/service_runtime.gyp:sel_main_chrome64',
107                 '../ppapi/ppapi_internal.gyp:ppapi_shared_win64',
108                 '../ppapi/ppapi_internal.gyp:ppapi_ipc_win64',
109               ],
110               'export_dependent_settings': [
111                 '../ppapi/ppapi_internal.gyp:ppapi_ipc_win64',
112               ],
113               'sources': [
114                 'common/nacl_cmd_line.cc',
115                 'common/nacl_debug_exception_handler_win.cc',
116                 'common/nacl_messages.cc',
117                 'common/nacl_types.cc',
118                 'nacl/nacl_broker_listener.cc',
119                 'nacl/nacl_broker_listener.h',
120               ],
121               'include_dirs': [
122                 '..',
123               ],
124               'defines': [
125                 '<@(nacl_win64_defines)',
126                 'COMPILE_CONTENT_STATICALLY',
127               ],
128               'configurations': {
129                 'Common_Base': {
130                   'msvs_target_platform': 'x64',
131                 },
132               },
133               'direct_dependent_settings': {
134                 'defines': [
135                   '<@(nacl_defines)',
136                 ],
137               },
138             },
139           ],
140         }],
141         ['OS=="linux"', {
142           'targets': [
143             {
144               'target_name': 'nacl_helper',
145               'type': 'executable',
146               'include_dirs': [
147                 '..',
148               ],
149               'dependencies': [
150                 '../crypto/crypto.gyp:crypto',
151                 '../sandbox/sandbox.gyp:libc_urandom_override',
152                 'nacl',
153               ],
154               'sources': [
155                 'nacl/nacl_helper_linux.cc',
156                 '../base/posix/unix_domain_socket_linux.cc',
157                 '../chrome/common/nacl_messages.cc',
158                 '../chrome/common/nacl_types.cc',
159                 '../content/common/child_process_sandbox_support_impl_shm_linux.cc',
160               ],
161               'conditions': [
162                 ['toolkit_uses_gtk == 1', {
163                   'dependencies': [
164                     '../build/linux/system.gyp:gtk',
165                   ],
166                 }],
167                 ['use_glib == 1', {
168                   'dependencies': [
169                     '../build/linux/system.gyp:glib',
170                   ],
171                 }],
172                 ['os_posix == 1 and OS != "mac"', {
173                   'conditions': [
174                     ['linux_use_tcmalloc==1', {
175                       'dependencies': [
176                         '../base/allocator/allocator.gyp:allocator',
177                       ],
178                     }],
179                   ],
180                 }],
181               ],
182               'cflags': ['-fPIE'],
183               'link_settings': {
184                 'ldflags': ['-pie'],
185               },
186             },
187           ],
188         }],
189       ],
190     }, {  # else (disable_nacl==1)
191       'targets': [
192         {
193           'target_name': 'nacl',
194           'type': 'none',
195           'sources': [],
196         },
197       ],
198       'conditions': [
199         ['OS=="win"', {
200           'targets': [
201             {
202               'target_name': 'nacl_win64',
203               'type': 'none',
204               'sources': [],
205             },
206           ],
207         }],
208       ],
209     }],
210   ],