OLD | NEW |
| (Empty) |
1 # Copyright 2013 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 'variables': { | |
6 'chromium_code': 1, | |
7 }, | |
8 'includes': [ | |
9 '../build/util/version.gypi', | |
10 '../build/win_precompile.gypi', | |
11 'blacklist.gypi', | |
12 'dll_hash.gypi', | |
13 ], | |
14 'targets': [ | |
15 ##-------------------------------------------------------------------------- | |
16 ## chrome_elf | |
17 ##-------------------------------------------------------------------------- | |
18 { | |
19 'target_name': 'chrome_elf_resources', | |
20 'type': 'none', | |
21 'variables': { | |
22 'output_dir': 'chrome_elf', | |
23 'branding_path': '../chrome/app/theme/<(branding_path_component)/BRANDIN
G', | |
24 'template_input_path': '../chrome/app/chrome_version.rc.version', | |
25 }, | |
26 'sources': [ | |
27 'chrome_elf.ver', | |
28 ], | |
29 'includes': [ | |
30 '../chrome/version_resource_rules.gypi', | |
31 ], | |
32 }, | |
33 { | |
34 'target_name': 'chrome_elf', | |
35 'type': 'shared_library', | |
36 'include_dirs': [ | |
37 '..', | |
38 ], | |
39 'sources': [ | |
40 'chrome_elf.def', | |
41 'chrome_elf_main.cc', | |
42 'chrome_elf_main.h', | |
43 '<(SHARED_INTERMEDIATE_DIR)/chrome_elf/chrome_elf_version.rc', | |
44 ], | |
45 'dependencies': [ | |
46 '../chrome/chrome.gyp:install_static_util', | |
47 'blacklist', | |
48 'chrome_elf_crash', | |
49 'chrome_elf_hook_util', | |
50 'chrome_elf_resources', | |
51 'chrome_elf_security', | |
52 'nt_registry/nt_registry.gyp:chrome_elf_nt_registry', | |
53 ], | |
54 'msvs_settings': { | |
55 'VCLinkerTool': { | |
56 'conditions': [ | |
57 ['target_arch=="ia32"', { | |
58 # Don't set an x64 base address (to avoid breaking HE-ASLR). | |
59 'BaseAddress': '0x01c20000', | |
60 }], | |
61 ], | |
62 # Set /SUBSYSTEM:WINDOWS. | |
63 'SubSystem': '2', | |
64 'AdditionalDependencies!': [ | |
65 'user32.lib', | |
66 ], | |
67 'IgnoreDefaultLibraryNames': [ | |
68 'user32.lib', | |
69 ], | |
70 }, | |
71 }, | |
72 }, | |
73 ##-------------------------------------------------------------------------- | |
74 ## chrome_elf sub targets | |
75 ##-------------------------------------------------------------------------- | |
76 { | |
77 'target_name': 'chrome_elf_constants', | |
78 'type': 'static_library', | |
79 'include_dirs': [ | |
80 '..', | |
81 ], | |
82 'sources': [ | |
83 'chrome_elf_constants.cc', | |
84 'chrome_elf_constants.h', | |
85 ], | |
86 }, | |
87 { | |
88 'target_name': 'chrome_elf_crash', | |
89 'type': 'static_library', | |
90 'include_dirs': [ | |
91 '..', | |
92 ], | |
93 'sources': [ | |
94 '../chrome/app/chrome_crash_reporter_client_win.cc', | |
95 '../chrome/app/chrome_crash_reporter_client_win.h', | |
96 '../chrome/common/chrome_result_codes.h', | |
97 'crash/crash_helper.cc', | |
98 'crash/crash_helper.h', | |
99 ], | |
100 'dependencies': [ | |
101 '../base/base.gyp:base', # This needs to go. | |
102 '../base/base.gyp:base_static', # pe_image | |
103 '../chrome/chrome.gyp:install_static_util', | |
104 '../components/components.gyp:crash_component', | |
105 '../components/components.gyp:crash_core_common', #crash_keys | |
106 'chrome_elf_hook_util', | |
107 ], | |
108 }, | |
109 { | |
110 'target_name': 'chrome_elf_hook_util', | |
111 'type': 'static_library', | |
112 'include_dirs': [ | |
113 '..', | |
114 ], | |
115 'sources': [ | |
116 '../base/macros.h', | |
117 'hook_util/hook_util.cc', | |
118 'hook_util/hook_util.h', | |
119 ], | |
120 'dependencies': [ | |
121 '../base/base.gyp:base_static', # pe_image | |
122 '../sandbox/sandbox.gyp:sandbox', | |
123 ], | |
124 }, | |
125 { | |
126 'target_name': 'chrome_elf_security', | |
127 'type': 'static_library', | |
128 'include_dirs': [ | |
129 '..', | |
130 ], | |
131 'sources': [ | |
132 'chrome_elf_security.cc', | |
133 'chrome_elf_security.h', | |
134 ], | |
135 'dependencies': [ | |
136 'chrome_elf_constants', | |
137 'nt_registry/nt_registry.gyp:chrome_elf_nt_registry', | |
138 ] | |
139 }, | |
140 ##-------------------------------------------------------------------------- | |
141 ## tests | |
142 ##-------------------------------------------------------------------------- | |
143 { | |
144 'target_name': 'chrome_elf_unittests_exe', | |
145 'product_name': 'chrome_elf_unittests', | |
146 'type': 'executable', | |
147 'sources': [ | |
148 'blacklist/test/blacklist_test.cc', | |
149 'chrome_elf_util_unittest.cc', | |
150 'elf_imports_unittest.cc', | |
151 'run_all_unittests.cc', | |
152 ], | |
153 'include_dirs': [ | |
154 '..', | |
155 '<(SHARED_INTERMEDIATE_DIR)', | |
156 ], | |
157 'dependencies': [ | |
158 '../base/base.gyp:base', | |
159 '../base/base.gyp:run_all_unittests', | |
160 '../base/base.gyp:test_support_base', | |
161 '../chrome/chrome.gyp:install_static_util', | |
162 '../sandbox/sandbox.gyp:sandbox', | |
163 '../testing/gtest.gyp:gtest', | |
164 'blacklist', | |
165 'blacklist_test_dll_1', | |
166 'blacklist_test_dll_2', | |
167 'blacklist_test_dll_3', | |
168 'blacklist_test_main_dll', | |
169 'chrome_elf_crash', | |
170 'chrome_elf_hook_util', | |
171 'chrome_elf_security', | |
172 'nt_registry/nt_registry.gyp:chrome_elf_nt_registry', | |
173 ], | |
174 'msvs_settings': { | |
175 'VCLinkerTool': { | |
176 'DelayLoadDLLs': [ | |
177 'dbghelp.dll', | |
178 'ole32.dll', | |
179 'psapi.dll', | |
180 'rpcrt4.dll', | |
181 'shell32.dll', | |
182 'shlwapi.dll', | |
183 'user32.dll', | |
184 'winhttp.dll', | |
185 'winmm.dll', | |
186 'ws2_32.dll', | |
187 ], | |
188 }, | |
189 }, | |
190 }, | |
191 { | |
192 # A dummy target to ensure that chrome_elf.dll and chrome.exe gets built | |
193 # when building chrome_elf_unittests.exe without introducing an | |
194 # explicit runtime dependency. | |
195 'target_name': 'chrome_elf_unittests', | |
196 'type': 'none', | |
197 'dependencies': [ | |
198 '../chrome/chrome.gyp:chrome', | |
199 '../chrome/chrome.gyp:install_static_util', | |
200 'chrome_elf', | |
201 'chrome_elf_unittests_exe', | |
202 ], | |
203 }, | |
204 ], # targets | |
205 ##---------------------------------------------------------------------------- | |
206 ## conditionals | |
207 ##---------------------------------------------------------------------------- | |
208 'conditions': [ | |
209 ['test_isolation_mode != "noop"', { | |
210 'targets': [ | |
211 { | |
212 'target_name': 'chrome_elf_unittests_run', | |
213 'type': 'none', | |
214 'dependencies': [ | |
215 'chrome_elf_unittests', | |
216 ], | |
217 'includes': [ '../build/isolate.gypi' ], | |
218 'sources': [ 'chrome_elf_unittests.isolate' ], | |
219 }, | |
220 ], | |
221 }], | |
222 ], | |
223 } | |
OLD | NEW |