# Copyright 2016 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/chrome_build.gni") import("//build/config/sanitizers/sanitizers.gni") # This file declares arguments and configs that control whether dSYM debug # info is produced and whether build products are stripped. declare_args() { # Produce dSYM files for targets that are configured to do so. dSYM # generation is controlled globally as it is a linker output (produced via # the //build/toolchain/apple/linker_driver.py. Enabling this will result in # all shared library, loadable module, and executable targets having a dSYM # generated. enable_dsyms = is_official_build || using_sanitizer # Strip symbols from linked targets by default. If this is enabled, the # //build/config/mac:strip_all config will be applied to all linked targets. # If custom stripping parameters are required, remove that config from a # linked target and apply custom -Wcrl,strip flags. See # //build/toolchain/apple/linker_driver.py for more information. enable_stripping = is_official_build } # Save unstripped copies of targets with a ".unstripped" suffix. This is # useful to preserve the original output when enable_stripping=true but # we're not actually generating real dSYMs. save_unstripped_output = enable_stripping && !enable_dsyms