1# Copyright 2016 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 5import("//build/config/chrome_build.gni") 6import("//build/config/sanitizers/sanitizers.gni") 7 8# This file declares arguments and configs that control whether dSYM debug 9# info is produced and whether build products are stripped. 10 11declare_args() { 12 # Produce dSYM files for targets that are configured to do so. dSYM 13 # generation is controlled globally as it is a linker output (produced via 14 # the //build/toolchain/apple/linker_driver.py. Enabling this will result in 15 # all shared library, loadable module, and executable targets having a dSYM 16 # generated. 17 enable_dsyms = is_official_build || using_sanitizer 18 19 # Strip symbols from linked targets by default. If this is enabled, the 20 # //build/config/apple:strip_all config will be applied to all linked targets. 21 # If custom stripping parameters are required, remove that config from a 22 # linked target and apply custom -Wcrl,strip flags. See 23 # //build/toolchain/apple/linker_driver.py for more information. 24 enable_stripping = is_official_build 25} 26 27# Save unstripped copies of targets with a ".unstripped" suffix. This is 28# useful to preserve the original output when enable_stripping=true but 29# we're not actually generating real dSYMs. 30save_unstripped_output = enable_stripping && !enable_dsyms 31