|
1 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- |
|
2 # vim: set filetype=python: |
|
3 # This Source Code Form is subject to the terms of the Mozilla Public |
|
4 # License, v. 2.0. If a copy of the MPL was not distributed with this |
|
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|
6 |
|
7 if CONFIG['OS_ARCH'] == 'Linux': |
|
8 |
|
9 DIRS += ['linux'] |
|
10 |
|
11 elif CONFIG['OS_ARCH'] == 'WINNT': |
|
12 LIBRARY_NAME = 'sandbox_s' |
|
13 EXPORT_LIBRARY = True |
|
14 FORCE_STATIC_LIB = True |
|
15 |
|
16 DIRS += [ |
|
17 'win/src/sandboxbroker', |
|
18 'win/src/sandboxtarget', |
|
19 ] |
|
20 |
|
21 SOURCES += [ |
|
22 'chromium/base/at_exit.cc', |
|
23 'chromium/base/base_switches.cc', |
|
24 'chromium/base/callback_internal.cc', |
|
25 'chromium/base/cpu.cc', |
|
26 'chromium/base/debug/alias.cc', |
|
27 'chromium/base/debug/profiler.cc', |
|
28 'chromium/base/lazy_instance.cc', |
|
29 'chromium/base/location.cc', |
|
30 'chromium/base/memory/ref_counted.cc', |
|
31 'chromium/base/memory/singleton.cc', |
|
32 'chromium/base/shim/base/logging.cpp', |
|
33 'chromium/base/strings/nullable_string16.cc', |
|
34 'chromium/base/strings/string_number_conversions.cc', |
|
35 'chromium/base/strings/string_piece.cc', |
|
36 'chromium/base/strings/string_util_constants.cc', |
|
37 'chromium/base/strings/string_util_stripped.cc', |
|
38 'chromium/base/strings/stringprintf.cc', |
|
39 'chromium/base/strings/utf_string_conversion_utils.cc', |
|
40 'chromium/base/strings/utf_string_conversions.cc', |
|
41 'chromium/base/synchronization/lock.cc', |
|
42 'chromium/base/synchronization/lock_impl_win.cc', |
|
43 'chromium/base/third_party/dmg_fp/dtoa.cc', |
|
44 'chromium/base/third_party/dmg_fp/g_fmt.cc', |
|
45 'chromium/base/third_party/icu/icu_utf.cc', |
|
46 'chromium/base/threading/platform_thread_win.cc', |
|
47 'chromium/base/threading/thread_collision_warner.cc', |
|
48 'chromium/base/threading/thread_id_name_manager.cc', |
|
49 'chromium/base/threading/thread_local_win.cc', |
|
50 'chromium/base/threading/thread_restrictions.cc', |
|
51 'chromium/base/time/time.cc', |
|
52 'chromium/base/time/time_win.cc', |
|
53 'chromium/base/win/event_trace_provider.cc', |
|
54 'chromium/base/win/pe_image.cc', |
|
55 'chromium/base/win/registry.cc', |
|
56 'chromium/base/win/scoped_handle.cc', |
|
57 'chromium/base/win/scoped_process_information.cc', |
|
58 'chromium/base/win/startup_information.cc', |
|
59 'chromium/base/win/windows_version.cc', |
|
60 'win/src/acl.cc', |
|
61 'win/src/app_container.cc', |
|
62 'win/src/broker_services.cc', |
|
63 'win/src/crosscall_server.cc', |
|
64 'win/src/eat_resolver.cc', |
|
65 'win/src/filesystem_dispatcher.cc', |
|
66 'win/src/filesystem_interception.cc', |
|
67 'win/src/filesystem_policy.cc', |
|
68 'win/src/handle_closer.cc', |
|
69 'win/src/handle_closer_agent.cc', |
|
70 'win/src/handle_dispatcher.cc', |
|
71 'win/src/handle_interception.cc', |
|
72 'win/src/handle_policy.cc', |
|
73 'win/src/handle_table.cc', |
|
74 'win/src/interception.cc', |
|
75 'win/src/interception_agent.cc', |
|
76 'win/src/job.cc', |
|
77 'win/src/named_pipe_dispatcher.cc', |
|
78 'win/src/named_pipe_interception.cc', |
|
79 'win/src/named_pipe_policy.cc', |
|
80 'win/src/policy_broker.cc', |
|
81 'win/src/policy_engine_opcodes.cc', |
|
82 'win/src/policy_engine_processor.cc', |
|
83 'win/src/policy_low_level.cc', |
|
84 'win/src/policy_target.cc', |
|
85 'win/src/process_mitigations.cc', |
|
86 'win/src/process_thread_dispatcher.cc', |
|
87 'win/src/process_thread_interception.cc', |
|
88 'win/src/process_thread_policy.cc', |
|
89 'win/src/registry_dispatcher.cc', |
|
90 'win/src/registry_interception.cc', |
|
91 'win/src/registry_policy.cc', |
|
92 'win/src/resolver.cc', |
|
93 'win/src/restricted_token.cc', |
|
94 'win/src/restricted_token_utils.cc', |
|
95 'win/src/sandbox.cc', |
|
96 'win/src/sandbox_nt_util.cc', |
|
97 'win/src/sandbox_policy_base.cc', |
|
98 'win/src/sandbox_utils.cc', |
|
99 'win/src/service_resolver.cc', |
|
100 'win/src/shared_handles.cc', |
|
101 'win/src/sharedmem_ipc_client.cc', |
|
102 'win/src/sharedmem_ipc_server.cc', |
|
103 'win/src/sid.cc', |
|
104 'win/src/sync_dispatcher.cc', |
|
105 'win/src/sync_interception.cc', |
|
106 'win/src/sync_policy.cc', |
|
107 'win/src/target_interceptions.cc', |
|
108 'win/src/target_process.cc', |
|
109 'win/src/target_services.cc', |
|
110 'win/src/win2k_threadpool.cc', |
|
111 'win/src/win_utils.cc', |
|
112 'win/src/window.cc', |
|
113 ] |
|
114 |
|
115 if CONFIG['CPU_ARCH'] == 'x86_64': |
|
116 SOURCES += [ |
|
117 'win/src/interceptors_64.cc', |
|
118 'win/src/resolver_64.cc', |
|
119 'win/src/service_resolver_64.cc', |
|
120 'win/src/Wow64_64.cc', |
|
121 ] |
|
122 else: |
|
123 SOURCES += [ |
|
124 'win/src/resolver_32.cc', |
|
125 'win/src/service_resolver_32.cc', |
|
126 'win/src/sidestep/ia32_modrm_map.cpp', |
|
127 'win/src/sidestep/ia32_opcode_map.cpp', |
|
128 'win/src/sidestep/mini_disassembler.cpp', |
|
129 'win/src/sidestep/preamble_patcher_with_stub.cpp', |
|
130 'win/src/sidestep_resolver.cc', |
|
131 'win/src/Wow64.cc', |
|
132 ] |
|
133 |
|
134 for var in ('UNICODE', '_UNICODE', 'NS_NO_XPCOM', 'SANDBOX_EXPORTS', |
|
135 'NOMINMAX', '_CRT_RAND_S', 'CHROMIUM_SANDBOX_BUILD'): |
|
136 DEFINES[var] = True |
|
137 |
|
138 LOCAL_INCLUDES += ['/security/sandbox/chromium/base/shim'] |
|
139 LOCAL_INCLUDES += ['/security/sandbox/chromium'] |
|
140 LOCAL_INCLUDES += ['/security'] |
|
141 LOCAL_INCLUDES += ['/nsprpub'] |
|
142 |
|
143 DISABLE_STL_WRAPPING = True |