diff options
author | ronghuawu@chromium.org <ronghuawu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-28 18:48:29 +0000 |
---|---|---|
committer | ronghuawu@chromium.org <ronghuawu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-28 18:48:29 +0000 |
commit | 57db18ac0e41bf819e0a916635373b965a5facfb (patch) | |
tree | 285e22088f023067ed222cf68e46df5a0340be25 /chrome | |
parent | a3b75bd5a497628b27903a357f70188d56973e0d (diff) | |
download | chromium_src-57db18ac0e41bf819e0a916635373b965a5facfb.zip chromium_src-57db18ac0e41bf819e0a916635373b965a5facfb.tar.gz chromium_src-57db18ac0e41bf819e0a916635373b965a5facfb.tar.bz2 |
Revert 273199 "Enable mac_strip_release under ASan on OSX. Remov..."
Seems causing failures on mac asan bots, e.g:
http://build.chromium.org/p/chromium.memory/waterfall?builder=Mac%20ASan%2064%20Tests%20(1)
> Enable mac_strip_release under ASan on OSX. Remove the .saves files.
>
> Unce upon a time the ASan runtime library used to be statically linked into
> the executables on OSX.
> Because that library provided a number of API functions needed by the shared
> libraries, we had custom ASan-specific .saves files that told the `strip`
> utility to preserve those functions when stripping the executables.
>
> Then ASan switched to using dynamic runtime library, which instantly broke the
> stripping step, because the executables weren't necessarily referencing all the
> ASan API functions (issue 242503).
> As a result, stripping has been disabled, and we haven't had .dSYM debug info
> for ASan builds for more than a year now (issue 148383).
>
> Because the ASan API functions are now undefined in the executables, it's
> actually senseless to use the .saves files to preserve those functions.
> This CL deletes the .saves files and turns mac_strip_release on for ASan
> builds.
>
> BUG=148383,242503,170739,166857
> R=mark@chromium.org
>
> Review URL: https://codereview.chromium.org/292153006
TBR=glider@chromium.org
Review URL: https://codereview.chromium.org/298333007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273302 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/app/app_asan.saves | 32 | ||||
-rw-r--r-- | chrome/chrome.gyp | 6 | ||||
-rw-r--r-- | chrome/chrome_exe.gypi | 6 |
3 files changed, 44 insertions, 0 deletions
diff --git a/chrome/app/app_asan.saves b/chrome/app/app_asan.saves new file mode 100644 index 0000000..fd8b352 --- /dev/null +++ b/chrome/app/app_asan.saves @@ -0,0 +1,32 @@ +# Copyright (c) 2011 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. + +# This file lists symbols that should not be stripped from the Mac browser and +# helper app executables built with AddressSanitizer +# (http://dev.chromium.org/developers/testing/addresssanitizer). + +# The list of Chromium application-specific symbols should be the same as that +# in chrome/app/app.saves +# The list of symbols that should be preserved in all the binaries built with +# AddressSanitizer should correspond to build/asan.saves + +# Chromium-specific symbols. +_main + +# AddressSanitizer-specific symbols. +___asan_init +___asan_handle_no_return +___asan_register_global +___asan_register_globals +___asan_unregister_globals +___asan_report_load1 +___asan_report_load2 +___asan_report_load4 +___asan_report_load8 +___asan_report_load16 +___asan_report_store1 +___asan_report_store2 +___asan_report_store4 +___asan_report_store8 +___asan_report_store16 diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp index 2810f96..19609cc 100644 --- a/chrome/chrome.gyp +++ b/chrome/chrome.gyp @@ -241,6 +241,12 @@ 'STRIPFLAGS': '-s $(CHROMIUM_STRIP_SAVE_FILE)', }, }], + ['asan==1', { + 'xcode_settings': { + # Override the outer definition of CHROMIUM_STRIP_SAVE_FILE. + 'CHROMIUM_STRIP_SAVE_FILE': 'app/app_asan.saves', + }, + }], ['component=="shared_library"', { 'xcode_settings': { 'LD_RUNPATH_SEARCH_PATHS': [ diff --git a/chrome/chrome_exe.gypi b/chrome/chrome_exe.gypi index 758fc4c..2ec9dca 100644 --- a/chrome/chrome_exe.gypi +++ b/chrome/chrome_exe.gypi @@ -456,6 +456,12 @@ ['chrome_multiple_dll', { 'defines': ['CHROME_MULTIPLE_DLL'], }], + ['OS=="mac" and asan==1', { + 'xcode_settings': { + # Override the outer definition of CHROMIUM_STRIP_SAVE_FILE. + 'CHROMIUM_STRIP_SAVE_FILE': 'app/app_asan.saves', + }, + }], ['OS=="linux"', { 'conditions': [ ['branding=="Chrome"', { |