OLD | NEW |
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 declare_args() { | 5 declare_args() { |
6 # Path to the directory containing the VC binaries for the right | 6 # Path to the directory containing the VC binaries for the right |
7 # combination of host and target architectures. Currently only the | 7 # combination of host and target architectures. Currently only the |
8 # 64-bit host toolchain is supported, with either 32-bit or 64-bit targets. | 8 # 64-bit host toolchain is supported, with either 32-bit or 64-bit targets. |
9 # If vc_bin_dir is not specified on the command line (and it normally | 9 # If vc_bin_dir is not specified on the command line (and it normally |
10 # isn't), we will dynamically determine the right value to use at runtime. | 10 # isn't), we will dynamically determine the right value to use at runtime. |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 ] | 158 ] |
159 link_output = libname | 159 link_output = libname |
160 depend_output = libname | 160 depend_output = libname |
161 | 161 |
162 # The use of inputs_newline is to work around a fixed per-line buffer | 162 # The use of inputs_newline is to work around a fixed per-line buffer |
163 # size in the linker. | 163 # size in the linker. |
164 rspfile_content = "{{libs}} {{solibs}} {{inputs_newline}} {{ldflags}}" | 164 rspfile_content = "{{libs}} {{solibs}} {{inputs_newline}} {{ldflags}}" |
165 } | 165 } |
166 | 166 |
167 tool("link") { | 167 tool("link") { |
168 rspfile = "{{output}}.rsp" | 168 binary_output = |
| 169 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}" |
| 170 rspfile = "$binary_output.rsp" |
169 | 171 |
170 link_command = "$python_path gyp-win-tool link-wrapper $env False link.exe
/nologo /OUT:{{output}} /PDB:{{output}}.pdb @$rspfile" | 172 link_command = "$python_path gyp-win-tool link-wrapper $env False link.exe
/nologo /OUT:$binary_output /PDB:$binary_output.pdb @$rspfile" |
171 | 173 |
172 # TODO(brettw) support manifests | 174 # TODO(brettw) support manifests |
173 #manifest_command = "$python_path gyp-win-tool manifest-wrapper $env mt.ex
e -nologo -manifest $manifests -out:{{output}}.manifest" | 175 #manifest_command = "$python_path gyp-win-tool manifest-wrapper $env mt.ex
e -nologo -manifest $manifests -out:{{output}}.manifest" |
174 #command = "cmd /c $link_command && $manifest_command" | 176 #command = "cmd /c $link_command && $manifest_command" |
175 command = link_command | 177 command = link_command |
176 | 178 |
177 default_output_extension = ".exe" | 179 default_output_extension = ".exe" |
178 description = "LINK {{output}}" | 180 description = "LINK $binary_output" |
179 outputs = [ | 181 outputs = [ |
180 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}", | 182 binary_output, |
| 183 "{{root_out_dir}}/{{target_output_name}}.lib", |
181 ] | 184 ] |
182 | 185 |
183 # The use of inputs_newline is to work around a fixed per-line buffer | 186 # The use of inputs_newline is to work around a fixed per-line buffer |
184 # size in the linker. | 187 # size in the linker. |
185 rspfile_content = "{{inputs_newline}} {{libs}} {{solibs}} {{ldflags}}" | 188 rspfile_content = "{{inputs_newline}} {{libs}} {{solibs}} {{ldflags}}" |
186 } | 189 } |
187 | 190 |
188 tool("stamp") { | 191 tool("stamp") { |
189 command = "$python_path gyp-win-tool stamp {{output}}" | 192 command = "$python_path gyp-win-tool stamp {{output}}" |
190 description = "STAMP {{output}}" | 193 description = "STAMP {{output}}" |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
237 } | 240 } |
238 msvc_toolchain("clang_x64") { | 241 msvc_toolchain("clang_x64") { |
239 environment = "environment.x64" | 242 environment = "environment.x64" |
240 current_cpu = "x64" | 243 current_cpu = "x64" |
241 prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin", | 244 prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin", |
242 root_build_dir) | 245 root_build_dir) |
243 cl = "${goma_prefix}$prefix/clang-cl.exe" | 246 cl = "${goma_prefix}$prefix/clang-cl.exe" |
244 is_clang = true | 247 is_clang = true |
245 } | 248 } |
246 } | 249 } |
OLD | NEW |