Use -fstack-protector-all (stack canaries) for Mac debug builds.
This was previously in effect at r29591 and then backed out at r29601 because it may have caused problems with Valgrind. The Valgrind problems were probably actually caused by -pie, which was recently reintroduced with protection against being used in Valgrind configurations. I don't think that we have any Valgrind builds that use the Debug configuration, so reintroducing this here shouldn't have any effect on Valgrind. Ancient history: in the pre-GYP days, we had -fstack-protector and -fstack-protector-all in the debug.xcconfig that our Xcode-based build used. See http://src.chromium.org/viewvc/chrome/trunk/src/build/debug.xcconfig?view=markup&pathrev=21959 More information on this option: http://developer.apple.com/library/mac/#documentation/DeveloperTools/gcc-4.2.1/gcc/Optimize-Options.html#index-fbtr_002dbb_002dexclusive-615 http://en.wikipedia.org/wiki/Buffer_overflow_protection#GCC_Stack-Smashing_Protector_.28ProPolice.29 BUG=16713 (not really, that's for release builds, but close enough) TEST=everything Review URL: http://codereview.chromium.org/7291019 git-svn-id: http://src.chromium.org/svn/trunk/src/build@91301 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This commit is contained in:
Родитель
244906f3c7
Коммит
c090ea6271
|
@ -975,7 +975,10 @@
|
|||
'xcode_settings': {
|
||||
'COPY_PHASE_STRIP': 'NO',
|
||||
'GCC_OPTIMIZATION_LEVEL': '<(mac_debug_optimization)',
|
||||
'OTHER_CFLAGS': [ '<@(debug_extra_cflags)', ],
|
||||
'OTHER_CFLAGS': [
|
||||
'-fstack-protector-all', # Implies -fstack-protector
|
||||
'<@(debug_extra_cflags)',
|
||||
],
|
||||
},
|
||||
'msvs_settings': {
|
||||
'VCCLCompilerTool': {
|
||||
|
|
Загрузка…
Ссылка в новой задаче