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

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

Issue 2667853004: Remove dependency on scan-build wrapper script for Clang analysis builds. (Closed)
Patch Set: WIP clang on windows Created 3 years, 9 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/toolchain/nacl_toolchain.gni ('k') | docs/clang_static_analyzer.md » ('j') | 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/clang_static_analyzer.gni")
9 import("//build/toolchain/goma.gni") 10 import("//build/toolchain/goma.gni")
10 import("//build/toolchain/toolchain.gni") 11 import("//build/toolchain/toolchain.gni")
11 12
12 # Should only be running on Windows. 13 # Should only be running on Windows.
13 assert(is_win) 14 assert(is_win)
14 15
15 # Setup the Visual Studio state. 16 # Setup the Visual Studio state.
16 # 17 #
17 # Its arguments are the VS path and the compiler wrapper tool. It will write 18 # Its arguments are the VS path and the compiler wrapper tool. It will write
18 # "environment.x86" and "environment.x64" to the build directory and return a 19 # "environment.x86" and "environment.x64" to the build directory and return a
19 # list to us. 20 # list to us.
20 21
21 # This tool will is used as a wrapper for various commands below. 22 # This tool will is used as a wrapper for various commands below.
22 tool_wrapper_path = rebase_path("tool_wrapper.py", root_build_dir) 23 tool_wrapper_path = rebase_path("tool_wrapper.py", root_build_dir)
23 24
24 if (use_goma) { 25 if (use_goma) {
25 goma_prefix = "$goma_dir/gomacc.exe " 26 goma_prefix = "$goma_dir/gomacc.exe "
26 } else { 27 } else {
27 goma_prefix = "" 28 goma_prefix = ""
28 } 29 }
29 30
31 # Path to the Clang static analysis wrapper script.
32 if (is_clang && use_clang_static_analyzer) {
33 analyzer_prefix = "$python_path " + rebase_path(
34 "//build/toolchain/clang_static_analyzer_wrapper.py",
35 root_build_dir) + " --clang-prefix=\"-Xclang\" "
36 }
37
30 # Copy the VS runtime DLL for the default toolchain to the root build directory 38 # Copy the VS runtime DLL for the default toolchain to the root build directory
31 # so things will run. 39 # so things will run.
32 if (current_toolchain == default_toolchain) { 40 if (current_toolchain == default_toolchain) {
33 if (is_debug) { 41 if (is_debug) {
34 configuration_name = "Debug" 42 configuration_name = "Debug"
35 } else { 43 } else {
36 configuration_name = "Release" 44 configuration_name = "Release"
37 } 45 }
38 exec_script("../../vs_toolchain.py", 46 exec_script("../../vs_toolchain.py",
39 [ 47 [
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after
373 forward_variables_from(invoker.toolchain_args, "*") 381 forward_variables_from(invoker.toolchain_args, "*")
374 } 382 }
375 is_clang = false 383 is_clang = false
376 current_cpu = "x64" 384 current_cpu = "x64"
377 } 385 }
378 } 386 }
379 387
380 msvc_toolchain("clang_" + target_name) { 388 msvc_toolchain("clang_" + target_name) {
381 environment = "environment.x64" 389 environment = "environment.x64"
382 prefix = rebase_path("$clang_base_path/bin", root_build_dir) 390 prefix = rebase_path("$clang_base_path/bin", root_build_dir)
383 cl = "${goma_prefix}$prefix/${clang_cl}" 391 cl = "${analyzer_prefix}${goma_prefix}$prefix/${clang_cl}"
384 sys_include_flags = "${x64_toolchain_data.include_flags_imsvc}" 392 sys_include_flags = "${x64_toolchain_data.include_flags_imsvc}"
385 393
386 toolchain_args = { 394 toolchain_args = {
387 if (defined(invoker.toolchain_args)) { 395 if (defined(invoker.toolchain_args)) {
388 forward_variables_from(invoker.toolchain_args, "*") 396 forward_variables_from(invoker.toolchain_args, "*")
389 } 397 }
390 is_clang = true 398 is_clang = true
391 current_cpu = "x64" 399 current_cpu = "x64"
392 } 400 }
393 } 401 }
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
430 msvc_toolchain("winrt_x64") { 438 msvc_toolchain("winrt_x64") {
431 environment = "environment.winrt_x64" 439 environment = "environment.winrt_x64"
432 cl = "${goma_prefix}\"${vc_bin_dir}/cl.exe\"" 440 cl = "${goma_prefix}\"${vc_bin_dir}/cl.exe\""
433 441
434 toolchain_args = { 442 toolchain_args = {
435 is_clang = false 443 is_clang = false
436 current_cpu = "x64" 444 current_cpu = "x64"
437 } 445 }
438 } 446 }
439 } 447 }
OLDNEW
« no previous file with comments | « build/toolchain/nacl_toolchain.gni ('k') | docs/clang_static_analyzer.md » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698