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