Bug 669403: Always build both VC9 and VC10 exception-wrapping hackery into the Gecko SDK. r=bsmedberg
authorChris Jones <jones.chris.g@gmail.com>
Wed, 31 Aug 2011 11:05:20 -0700
changeset 76343 5c4506fdbde9047caa1f63facecb4d30c48c4bee
parent 76342 891e5dbae3ec7f84ee003213e6377b2602066119
child 76345 e5072a22fe9510ee98e46811374f23e6e37cd854
push id3
push userfelipc@gmail.com
push dateFri, 30 Sep 2011 20:09:13 +0000
reviewersbsmedberg
bugs669403
milestone9.0a1
Bug 669403: Always build both VC9 and VC10 exception-wrapping hackery into the Gecko SDK. r=bsmedberg
memory/mozalloc/Makefile.in
memory/mozalloc/msvc_raise_wrappers.cpp
--- a/memory/mozalloc/Makefile.in
+++ b/memory/mozalloc/Makefile.in
@@ -80,30 +80,41 @@ CPPSRCS 		=			\
 	mozalloc_oom.cpp			\
 	$(NULL)
 
 ifdef WRAP_STL_INCLUDES #{
 ifdef GNU_CXX #{
 EXPORTS_mozilla	+= throw_gcc.h
 else
 ifdef _MSC_VER #{
-EXPORTS_mozilla	+= throw_msvc.h
-ifdef MOZ_MSVC_STL_WRAP__Throw #{
-EXPORTS_mozilla	+= msvc_throw_wrapper.h
-CPPSRCS		+= msvc_throw_wrapper.cpp
+
+ifeq ($(MOZ_MSVC_STL_WRAP__RAISE),1) #{
+BUILD_MSVC_WRAPPERS = 1
 else
-ifdef MOZ_MSVC_STL_WRAP__RAISE #{
-EXPORTS_mozilla	+= msvc_raise_wrappers.h
-CPPSRCS		+= msvc_raise_wrappers.cpp
-else
-$(error Unknown STL wrapper tactic for MSVC)
+ifeq ($(MOZ_MSVC_STL_WRAP__Throw),1) #{
+BUILD_MSVC_WRAPPERS = 1
 endif #}
 endif #}
+
+ifdef BUILD_MSVC_WRAPPERS #{
+EXPORTS_mozilla		+=			\
+	msvc_raise_wrappers.h			\
+	msvc_throw_wrapper.h			\
+	throw_msvc.h				\
+	$(NULL)
+
+CPPSRCS			+= 			\
+	msvc_raise_wrappers.cpp			\
+	msvc_throw_wrapper.cpp			\
+	$(NULL)
+endif #}
+
 endif #}
 endif #}
+
 endif #}
 
 ifneq (,$(filter OS2 WINNT,$(OS_ARCH)))
 SDK_LIBRARY = $(IMPORT_LIBRARY)
 else
 SDK_LIBRARY = $(SHARED_LIBRARY)
 endif
 
--- a/memory/mozalloc/msvc_raise_wrappers.cpp
+++ b/memory/mozalloc/msvc_raise_wrappers.cpp
@@ -39,16 +39,18 @@
  * ***** END LICENSE BLOCK ***** */
 
 #include <stdio.h>
 
 #if defined(XP_WIN) || defined(XP_OS2)
 #  define MOZALLOC_EXPORT __declspec(dllexport)
 #endif
 
+#include "mozalloc_abort.h"
+
 #define MOZALLOC_DONT_WRAP_RAISE_FUNCTIONS
 #include "mozilla/throw_msvc.h"
 
 __declspec(noreturn) static void abort_from_exception(const char* const which,
                                                       const char* const what);
 static void
 abort_from_exception(const char* const which,  const char* const what)
 {