OLD | NEW |
| (Empty) |
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 'sandbox_windows_target': 0, | |
9 'target_arch%': 'ia32', | |
10 }, | |
11 'target_conditions': [ | |
12 ['sandbox_windows_target==1', { | |
13 # Files that are shared between the 32-bit and the 64-bit versions | |
14 # of the Windows sandbox library. | |
15 'sources': [ | |
16 'src/acl.cc', | |
17 'src/acl.h', | |
18 'src/app_container.cc', | |
19 'src/app_container.h', | |
20 'src/broker_services.cc', | |
21 'src/broker_services.h', | |
22 'src/crosscall_client.h', | |
23 'src/crosscall_params.h', | |
24 'src/crosscall_server.cc', | |
25 'src/crosscall_server.h', | |
26 'src/eat_resolver.cc', | |
27 'src/eat_resolver.h', | |
28 'src/filesystem_dispatcher.cc', | |
29 'src/filesystem_dispatcher.h', | |
30 'src/filesystem_interception.cc', | |
31 'src/filesystem_interception.h', | |
32 'src/filesystem_policy.cc', | |
33 'src/filesystem_policy.h', | |
34 'src/handle_closer.cc', | |
35 'src/handle_closer.h', | |
36 'src/handle_closer_agent.cc', | |
37 'src/handle_closer_agent.h', | |
38 'src/handle_dispatcher.cc', | |
39 'src/handle_dispatcher.h', | |
40 'src/handle_interception.cc', | |
41 'src/handle_interception.h', | |
42 'src/handle_policy.cc', | |
43 'src/handle_policy.h', | |
44 'src/interception.cc', | |
45 'src/interception.h', | |
46 'src/interception_agent.cc', | |
47 'src/interception_agent.h', | |
48 'src/interception_internal.h', | |
49 'src/interceptors.h', | |
50 'src/internal_types.h', | |
51 'src/ipc_tags.h', | |
52 'src/job.cc', | |
53 'src/job.h', | |
54 'src/named_pipe_dispatcher.cc', | |
55 'src/named_pipe_dispatcher.h', | |
56 'src/named_pipe_interception.cc', | |
57 'src/named_pipe_interception.h', | |
58 'src/named_pipe_policy.cc', | |
59 'src/named_pipe_policy.h', | |
60 'src/nt_internals.h', | |
61 'src/policy_broker.cc', | |
62 'src/policy_broker.h', | |
63 'src/policy_engine_opcodes.cc', | |
64 'src/policy_engine_opcodes.h', | |
65 'src/policy_engine_params.h', | |
66 'src/policy_engine_processor.cc', | |
67 'src/policy_engine_processor.h', | |
68 'src/policy_low_level.cc', | |
69 'src/policy_low_level.h', | |
70 'src/policy_params.h', | |
71 'src/policy_target.cc', | |
72 'src/policy_target.h', | |
73 'src/process_mitigations.cc', | |
74 'src/process_mitigations.h', | |
75 'src/process_mitigations_win32k_dispatcher.cc', | |
76 'src/process_mitigations_win32k_dispatcher.h', | |
77 'src/process_mitigations_win32k_interception.cc', | |
78 'src/process_mitigations_win32k_interception.h', | |
79 'src/process_mitigations_win32k_policy.cc', | |
80 'src/process_mitigations_win32k_policy.h', | |
81 'src/process_thread_dispatcher.cc', | |
82 'src/process_thread_dispatcher.h', | |
83 'src/process_thread_interception.cc', | |
84 'src/process_thread_interception.h', | |
85 'src/process_thread_policy.cc', | |
86 'src/process_thread_policy.h', | |
87 'src/registry_dispatcher.cc', | |
88 'src/registry_dispatcher.h', | |
89 'src/registry_interception.cc', | |
90 'src/registry_interception.h', | |
91 'src/registry_policy.cc', | |
92 'src/registry_policy.h', | |
93 'src/resolver.cc', | |
94 'src/resolver.h', | |
95 'src/restricted_token_utils.cc', | |
96 'src/restricted_token_utils.h', | |
97 'src/restricted_token.cc', | |
98 'src/restricted_token.h', | |
99 'src/sandbox_factory.h', | |
100 'src/sandbox_globals.cc', | |
101 'src/sandbox_nt_types.h', | |
102 'src/sandbox_nt_util.cc', | |
103 'src/sandbox_nt_util.h', | |
104 'src/sandbox_policy_base.cc', | |
105 'src/sandbox_policy_base.h', | |
106 'src/sandbox_policy.h', | |
107 'src/sandbox_rand.cc', | |
108 'src/sandbox_rand.h', | |
109 'src/sandbox_types.h', | |
110 'src/sandbox_utils.cc', | |
111 'src/sandbox_utils.h', | |
112 'src/sandbox.cc', | |
113 'src/sandbox.h', | |
114 'src/security_level.h', | |
115 'src/service_resolver.cc', | |
116 'src/service_resolver.h', | |
117 'src/sharedmem_ipc_client.cc', | |
118 'src/sharedmem_ipc_client.h', | |
119 'src/sharedmem_ipc_server.cc', | |
120 'src/sharedmem_ipc_server.h', | |
121 'src/sid.cc', | |
122 'src/sid.h', | |
123 'src/sync_dispatcher.cc', | |
124 'src/sync_dispatcher.h', | |
125 'src/sync_interception.cc', | |
126 'src/sync_interception.h', | |
127 'src/sync_policy.cc', | |
128 'src/sync_policy.h', | |
129 'src/target_interceptions.cc', | |
130 'src/target_interceptions.h', | |
131 'src/target_process.cc', | |
132 'src/target_process.h', | |
133 'src/target_services.cc', | |
134 'src/target_services.h', | |
135 'src/top_level_dispatcher.cc', | |
136 'src/top_level_dispatcher.h', | |
137 'src/win_utils.cc', | |
138 'src/win_utils.h', | |
139 'src/win2k_threadpool.cc', | |
140 'src/win2k_threadpool.h', | |
141 'src/window.cc', | |
142 'src/window.h', | |
143 ], | |
144 'target_conditions': [ | |
145 ['target_arch=="x64"', { | |
146 'sources': [ | |
147 'src/interceptors_64.cc', | |
148 'src/interceptors_64.h', | |
149 'src/resolver_64.cc', | |
150 'src/service_resolver_64.cc', | |
151 ], | |
152 }], | |
153 ['target_arch=="ia32"', { | |
154 'sources': [ | |
155 'src/resolver_32.cc', | |
156 'src/service_resolver_32.cc', | |
157 'src/sidestep_resolver.cc', | |
158 'src/sidestep_resolver.h', | |
159 'src/sidestep\ia32_modrm_map.cpp', | |
160 'src/sidestep\ia32_opcode_map.cpp', | |
161 'src/sidestep\mini_disassembler_types.h', | |
162 'src/sidestep\mini_disassembler.cpp', | |
163 'src/sidestep\mini_disassembler.h', | |
164 'src/sidestep\preamble_patcher_with_stub.cpp', | |
165 'src/sidestep\preamble_patcher.h', | |
166 ], | |
167 }], | |
168 ], | |
169 }], | |
170 ], | |
171 }, | |
172 'targets': [ | |
173 { | |
174 'target_name': 'sandbox', | |
175 'type': 'static_library', | |
176 'variables': { | |
177 'sandbox_windows_target': 1, | |
178 }, | |
179 'dependencies': [ | |
180 '../base/base.gyp:base', | |
181 '../base/base.gyp:base_static', | |
182 ], | |
183 'export_dependent_settings': [ | |
184 '../base/base.gyp:base', | |
185 ], | |
186 'include_dirs': [ | |
187 '../..', | |
188 ], | |
189 'target_conditions': [ | |
190 ['target_arch=="ia32"', { | |
191 'copies': [ | |
192 { | |
193 'destination': '<(PRODUCT_DIR)', | |
194 'files': [ | |
195 'wow_helper/wow_helper.exe', | |
196 'wow_helper/wow_helper.pdb', | |
197 ], | |
198 }, | |
199 ], | |
200 }], | |
201 ], | |
202 }, | |
203 { | |
204 'target_name': 'sbox_integration_tests', | |
205 'type': 'executable', | |
206 'dependencies': [ | |
207 'sandbox', | |
208 '../base/base.gyp:test_support_base', | |
209 '../testing/gtest.gyp:gtest', | |
210 ], | |
211 'sources': [ | |
212 'src/address_sanitizer_test.cc', | |
213 'src/app_container_test.cc', | |
214 'src/file_policy_test.cc', | |
215 'src/handle_inheritance_test.cc', | |
216 'src/handle_policy_test.cc', | |
217 'tests/integration_tests/integration_tests_test.cc', | |
218 'src/handle_closer_test.cc', | |
219 'src/integrity_level_test.cc', | |
220 'src/ipc_ping_test.cc', | |
221 'src/lpc_policy_test.cc', | |
222 'src/named_pipe_policy_test.cc', | |
223 'src/policy_target_test.cc', | |
224 'src/process_mitigations_test.cc', | |
225 'src/process_policy_test.cc', | |
226 'src/registry_policy_test.cc', | |
227 'src/restricted_token_test.cc', | |
228 'src/sync_policy_test.cc', | |
229 'src/sync_policy_test.h', | |
230 'src/unload_dll_test.cc', | |
231 'tests/common/controller.cc', | |
232 'tests/common/controller.h', | |
233 'tests/common/test_utils.cc', | |
234 'tests/common/test_utils.h', | |
235 'tests/integration_tests/integration_tests.cc', | |
236 ], | |
237 }, | |
238 { | |
239 'target_name': 'sbox_validation_tests', | |
240 'type': 'executable', | |
241 'dependencies': [ | |
242 'sandbox', | |
243 '../base/base.gyp:test_support_base', | |
244 '../testing/gtest.gyp:gtest', | |
245 ], | |
246 'sources': [ | |
247 'tests/common/controller.cc', | |
248 'tests/common/controller.h', | |
249 'tests/validation_tests/unit_tests.cc', | |
250 'tests/validation_tests/commands.cc', | |
251 'tests/validation_tests/commands.h', | |
252 'tests/validation_tests/suite.cc', | |
253 ], | |
254 }, | |
255 { | |
256 'target_name': 'sbox_unittests', | |
257 'type': 'executable', | |
258 'dependencies': [ | |
259 'sandbox', | |
260 '../base/base.gyp:test_support_base', | |
261 '../testing/gtest.gyp:gtest', | |
262 ], | |
263 'sources': [ | |
264 'src/app_container_unittest.cc', | |
265 'src/interception_unittest.cc', | |
266 'src/service_resolver_unittest.cc', | |
267 'src/restricted_token_unittest.cc', | |
268 'src/job_unittest.cc', | |
269 'src/sid_unittest.cc', | |
270 'src/policy_engine_unittest.cc', | |
271 'src/policy_low_level_unittest.cc', | |
272 'src/policy_opcodes_unittest.cc', | |
273 'src/ipc_unittest.cc', | |
274 'src/sandbox_nt_util_unittest.cc', | |
275 'src/threadpool_unittest.cc', | |
276 'src/win_utils_unittest.cc', | |
277 'tests/common/test_utils.cc', | |
278 'tests/common/test_utils.h', | |
279 'tests/unit_tests/unit_tests.cc', | |
280 ], | |
281 }, | |
282 { | |
283 'target_name': 'sandbox_poc', | |
284 'type': 'executable', | |
285 'dependencies': [ | |
286 'sandbox', | |
287 'pocdll', | |
288 ], | |
289 'sources': [ | |
290 'sandbox_poc/main_ui_window.cc', | |
291 'sandbox_poc/main_ui_window.h', | |
292 'sandbox_poc/resource.h', | |
293 'sandbox_poc/sandbox.cc', | |
294 'sandbox_poc/sandbox.h', | |
295 'sandbox_poc/sandbox.ico', | |
296 'sandbox_poc/sandbox.rc', | |
297 ], | |
298 'link_settings': { | |
299 'libraries': [ | |
300 '-lcomctl32.lib', | |
301 ], | |
302 }, | |
303 'msvs_settings': { | |
304 'VCLinkerTool': { | |
305 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS | |
306 }, | |
307 }, | |
308 }, | |
309 { | |
310 'target_name': 'pocdll', | |
311 'type': 'shared_library', | |
312 'sources': [ | |
313 'sandbox_poc/pocdll/exports.h', | |
314 'sandbox_poc/pocdll/fs.cc', | |
315 'sandbox_poc/pocdll/handles.cc', | |
316 'sandbox_poc/pocdll/invasive.cc', | |
317 'sandbox_poc/pocdll/network.cc', | |
318 'sandbox_poc/pocdll/pocdll.cc', | |
319 'sandbox_poc/pocdll/processes_and_threads.cc', | |
320 'sandbox_poc/pocdll/registry.cc', | |
321 'sandbox_poc/pocdll/spyware.cc', | |
322 'sandbox_poc/pocdll/utils.h', | |
323 ], | |
324 'defines': [ | |
325 'POCDLL_EXPORTS', | |
326 ], | |
327 'include_dirs': [ | |
328 '../..', | |
329 ], | |
330 }, | |
331 ], | |
332 'conditions': [ | |
333 ['OS=="win" and target_arch=="ia32"', { | |
334 'targets': [ | |
335 { | |
336 'target_name': 'sandbox_win64', | |
337 'type': 'static_library', | |
338 'variables': { | |
339 'sandbox_windows_target': 1, | |
340 'target_arch': 'x64', | |
341 }, | |
342 'dependencies': [ | |
343 '../base/base.gyp:base_win64', | |
344 '../base/base.gyp:base_static_win64', | |
345 ], | |
346 'configurations': { | |
347 'Common_Base': { | |
348 'msvs_target_platform': 'x64', | |
349 }, | |
350 }, | |
351 'include_dirs': [ | |
352 '../..', | |
353 ], | |
354 'defines': [ | |
355 '<@(nacl_win64_defines)', | |
356 ] | |
357 }, | |
358 ], | |
359 }], | |
360 ['test_isolation_mode != "noop"', { | |
361 'targets': [ | |
362 { | |
363 'target_name': 'sbox_integration_tests_run', | |
364 'type': 'none', | |
365 'dependencies': [ | |
366 'sbox_integration_tests', | |
367 ], | |
368 'includes': [ | |
369 '../../build/isolate.gypi', | |
370 ], | |
371 'sources': [ | |
372 '../sbox_integration_tests.isolate', | |
373 ], | |
374 }, | |
375 { | |
376 'target_name': 'sbox_unittests_run', | |
377 'type': 'none', | |
378 'dependencies': [ | |
379 'sbox_unittests', | |
380 ], | |
381 'includes': [ | |
382 '../../build/isolate.gypi', | |
383 ], | |
384 'sources': [ | |
385 '../sbox_unittests.isolate', | |
386 ], | |
387 }, | |
388 { | |
389 'target_name': 'sbox_validation_tests_run', | |
390 'type': 'none', | |
391 'dependencies': [ | |
392 'sbox_validation_tests', | |
393 ], | |
394 'includes': [ | |
395 '../../build/isolate.gypi', | |
396 ], | |
397 'sources': [ | |
398 '../sbox_validation_tests.isolate', | |
399 ], | |
400 }, | |
401 ], | |
402 }], | |
403 ], | |
404 } | |
OLD | NEW |