From d2b6e407d772bcd9671de0545e4ccb3f0bb51bb7 Mon Sep 17 00:00:00 2001 From: "hans@chromium.org" Date: Mon, 21 Jul 2014 22:35:48 +0000 Subject: [PATCH] Disable exceptions on Windows also in the shared_library build They were previously only disabled in static_library builds. This is believed to have been due to problems with old MSVC versions, but it should work now. This change is relevant for Clang, which currently doesn't support exceptions on Windows. Last time I attempted to do this, it broke some tests due to a debug assertion. Gtest had previously been catching the exception, but with exceptions disabled it crashed. Those tests were actually broken in static_library Debug builds too, but we don't seem to have bots for that. After Blink r176189, we no longer hit that debug assertion, so the tests now pass. BUG=82385 TEST=blink_platform_unittests --gtest_filter=DateTimeFormatTest.CommonPattern, content_browsertests --gtest_filter=RenderViewImplTest.SetEditableSelectionAndComposition webkit_unit_tests R=thakis@chromium.org Review URL: https://codereview.chromium.org/404853002 git-svn-id: http://src.chromium.org/svn/trunk/src/build@284519 4ff67af0-8c30-449e-8e8b-ad334ec8d88c --- common.gypi | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/common.gypi b/common.gypi index 533ea808a..99b4cb8d0 100644 --- a/common.gypi +++ b/common.gypi @@ -5138,6 +5138,8 @@ 'CERT_CHAIN_PARA_HAS_EXTRA_FIELDS', 'WIN32_LEAN_AND_MEAN', '_ATL_NO_OPENGL', + # _HAS_EXCEPTIONS must match ExceptionHandling in msvs_settings. + '_HAS_EXCEPTIONS=0', ], 'conditions': [ ['buildtype=="Official"', { @@ -5205,11 +5207,6 @@ ], }, ], - ['component=="static_library"', { - 'defines': [ - '_HAS_EXCEPTIONS=0', - ], - }], ['secure_atl', { 'defines': [ '_SECURE_ATL', @@ -5292,13 +5289,8 @@ 'WarningLevel': '4', 'WarnAsError': 'true', 'DebugInformationFormat': '3', - 'conditions': [ - ['component=="shared_library"', { - 'ExceptionHandling': '1', # /EHsc - }, { - 'ExceptionHandling': '0', - }], - ], + # ExceptionHandling must match _HAS_EXCEPTIONS above. + 'ExceptionHandling': '0', }, 'VCLibrarianTool': { 'AdditionalOptions': ['/ignore:4221'],