1# Copyright 2021 The Chromium Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5if (current_toolchain == default_toolchain) { 6 import("//build/toolchain/toolchain.gni") 7 8 # A toolchain that will capture compiler and linker arguments to a file. 9 toolchain("flagcapture") { 10 tool("cxx") { 11 cxx = rebase_path("argcapture.py", root_build_dir) 12 command = "$cxx {{output}} {{defines}} {{include_dirs}} {{cflags}} {{cflags_cc}}" 13 outputs = [ "{{root_out_dir}}/{{label_name}}.txt" ] 14 } 15 tool("solink") { 16 solink = rebase_path("argcapture.py", root_build_dir) 17 command = "$solink {{output}} {{ldflags}}" 18 outputs = [ "{{root_out_dir}}/{{label_name}}.txt" ] 19 } 20 tool("alink") { 21 command = "this-should-never-run" 22 outputs = [ "this-will-never-exist" ] 23 } 24 tool("stamp") { 25 command = stamp_command 26 description = stamp_description 27 } 28 } 29} else if (current_toolchain == "//build/android/native_flags:flagcapture") { 30 # This will record flags from all default configs of the default toolchain. 31 source_set("default_ccflags") { 32 sources = [ "empty.cc" ] 33 } 34 shared_library("default_ldflags") { 35 no_default_deps = true 36 } 37} 38