Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(256)

Side by Side Diff: build/toolchain/win/BUILD.gn

Issue 2196403002: Fix the WinAsan dependency to thunk dll. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: step Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « build/config/sanitizers/BUILD.gn ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 import("//build/config/clang/clang.gni") 5 import("//build/config/clang/clang.gni")
6 import("//build/config/compiler/compiler.gni") 6 import("//build/config/compiler/compiler.gni")
7 import("//build/config/sanitizers/sanitizers.gni") 7 import("//build/config/sanitizers/sanitizers.gni")
8 import("//build/config/win/visual_studio_version.gni") 8 import("//build/config/win/visual_studio_version.gni")
9 import("//build/toolchain/goma.gni") 9 import("//build/toolchain/goma.gni")
10 import("//build/toolchain/toolchain.gni") 10 import("//build/toolchain/toolchain.gni")
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 278
279 # These share a name with global variables that are already defined, and 279 # These share a name with global variables that are already defined, and
280 # forward_variables_from won't clobber the existing value, so we need to 280 # forward_variables_from won't clobber the existing value, so we need to
281 # set it explicitly. 281 # set it explicitly.
282 if (defined(invoker.is_clang)) { 282 if (defined(invoker.is_clang)) {
283 is_clang = invoker.is_clang 283 is_clang = invoker.is_clang
284 } 284 }
285 if (defined(invoker.is_component_build)) { 285 if (defined(invoker.is_component_build)) {
286 is_component_build = invoker.is_component_build 286 is_component_build = invoker.is_component_build
287 } 287 }
288 if (defined(invoker.is_asan)) {
289 is_asan = invoker.is_asan
290 }
288 291
289 # This value needs to be passed through unchanged. 292 # This value needs to be passed through unchanged.
290 host_toolchain = host_toolchain 293 host_toolchain = host_toolchain
291 } 294 }
292 } 295 }
293 } 296 }
294 297
295 if (is_clang) { 298 if (is_clang) {
296 sys_include_prefix = "-imsvc" 299 sys_include_prefix = "-imsvc"
297 } else { 300 } else {
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
362 environment = "environment.x64" 365 environment = "environment.x64"
363 toolchain_cpu = "x64" 366 toolchain_cpu = "x64"
364 cl = "${goma_prefix}\"${x64_toolchain_data.vc_bin_dir}/cl.exe\"" 367 cl = "${goma_prefix}\"${x64_toolchain_data.vc_bin_dir}/cl.exe\""
365 is_clang = false 368 is_clang = false
366 369
367 # This shares a name with a global and forward_variables_from won't clobber 370 # This shares a name with a global and forward_variables_from won't clobber
368 # the existing value, so we need to set it explicitly. 371 # the existing value, so we need to set it explicitly.
369 if (defined(invoker.is_component_build)) { 372 if (defined(invoker.is_component_build)) {
370 is_component_build = invoker.is_component_build 373 is_component_build = invoker.is_component_build
371 } 374 }
375 if (defined(invoker.is_asan)) {
376 is_asan = invoker.is_asan
377 }
372 } 378 }
373 379
374 msvc_toolchain("clang_" + target_name) { 380 msvc_toolchain("clang_" + target_name) {
375 environment = "environment.x64" 381 environment = "environment.x64"
376 toolchain_cpu = "x64" 382 toolchain_cpu = "x64"
377 prefix = rebase_path("$clang_base_path/bin", root_build_dir) 383 prefix = rebase_path("$clang_base_path/bin", root_build_dir)
378 cl = "${goma_prefix}$prefix/${clang_cl}" 384 cl = "${goma_prefix}$prefix/${clang_cl}"
379 toolchain_os = "win" 385 toolchain_os = "win"
380 is_clang = true 386 is_clang = true
381 sys_include_flags = "${x64_toolchain_data.include_flags}" 387 sys_include_flags = "${x64_toolchain_data.include_flags}"
382 388
383 # This shares a name with a global and forward_variables_from won't clobber 389 # This shares a name with a global and forward_variables_from won't clobber
384 # the existing value, so we need to set it explicitly. 390 # the existing value, so we need to set it explicitly.
385 if (defined(invoker.is_component_build)) { 391 if (defined(invoker.is_component_build)) {
386 is_component_build = invoker.is_component_build 392 is_component_build = invoker.is_component_build
387 } 393 }
394 if (defined(invoker.is_asan)) {
395 is_asan = invoker.is_asan
396 }
388 } 397 }
389 } 398 }
390 399
391 win_x64_toolchains("x64") { 400 win_x64_toolchains("x64") {
392 # TODO(mcgrathr): These assignments are only required because of 401 # TODO(mcgrathr): These assignments are only required because of
393 # crbug.com/395883. Drop them if that ever gets fixed in GN. 402 # crbug.com/395883. Drop them if that ever gets fixed in GN.
394 concurrent_links = concurrent_links 403 concurrent_links = concurrent_links
395 goma_prefix = goma_prefix 404 goma_prefix = goma_prefix
396 x64_toolchain_data = x64_toolchain_data 405 x64_toolchain_data = x64_toolchain_data
406 if (target_cpu == "x86") {
407 is_asan = false
408 }
397 } 409 }
398 410
399 # The nacl_win64 toolchain is nearly identical to the plain x64 toolchain. 411 # The nacl_win64 toolchain is nearly identical to the plain x64 toolchain.
400 # It's used solely for building nacl64.exe (//components/nacl/broker:nacl64). 412 # It's used solely for building nacl64.exe (//components/nacl/broker:nacl64).
401 # The only reason it's a separate toolchain is so that it can force 413 # The only reason it's a separate toolchain is so that it can force
402 # is_component_build to false in the toolchain_args() block, because 414 # is_component_build to false in the toolchain_args() block, because
403 # building nacl64.exe in component style does not work. 415 # building nacl64.exe in component style does not work.
404 win_x64_toolchains("nacl_win64") { 416 win_x64_toolchains("nacl_win64") {
405 is_component_build = false 417 is_component_build = false
418 is_asan = false
406 419
407 # TODO(mcgrathr): These assignments are only required because of 420 # TODO(mcgrathr): These assignments are only required because of
408 # crbug.com/395883. Drop them if that ever gets fixed in GN. 421 # crbug.com/395883. Drop them if that ever gets fixed in GN.
409 concurrent_links = concurrent_links 422 concurrent_links = concurrent_links
410 goma_prefix = goma_prefix 423 goma_prefix = goma_prefix
411 x64_toolchain_data = x64_toolchain_data 424 x64_toolchain_data = x64_toolchain_data
412 clang_cl = clang_cl 425 clang_cl = clang_cl
413 } 426 }
414 427
415 # WinRT toolchains. Only define these when targeting them. 428 # WinRT toolchains. Only define these when targeting them.
(...skipping 14 matching lines...) Expand all
430 443
431 msvc_toolchain("winrt_x64") { 444 msvc_toolchain("winrt_x64") {
432 environment = "environment.winrt_x64" 445 environment = "environment.winrt_x64"
433 cl = "${goma_prefix}\"${vc_bin_dir}/cl.exe\"" 446 cl = "${goma_prefix}\"${vc_bin_dir}/cl.exe\""
434 is_clang = false 447 is_clang = false
435 448
436 toolchain_cpu = "x64" 449 toolchain_cpu = "x64"
437 toolchain_os = current_os 450 toolchain_os = current_os
438 } 451 }
439 } 452 }
OLDNEW
« no previous file with comments | « build/config/sanitizers/BUILD.gn ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698