diff options
-rw-r--r-- | bridges/source/cpp_uno/mingw_intel/except.cxx | 1 | ||||
-rw-r--r-- | bridges/source/cpp_uno/mingw_intel/makefile.mk | 6 | ||||
-rw-r--r-- | bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx | 4 | ||||
-rw-r--r-- | bridges/source/jni_uno/jni_java2uno.cxx | 4 | ||||
-rw-r--r-- | bridges/source/jni_uno/jni_uno2java.cxx | 4 | ||||
-rw-r--r-- | bridges/source/jni_uno/makefile.mk | 6 | ||||
-rw-r--r-- | sal/systools/win32/uwinapi/makefile.mk | 4 | ||||
-rw-r--r-- | sal/util/makefile.mk | 4 |
8 files changed, 20 insertions, 13 deletions
diff --git a/bridges/source/cpp_uno/mingw_intel/except.cxx b/bridges/source/cpp_uno/mingw_intel/except.cxx index a529dc00d48b..5285b709b7b5 100644 --- a/bridges/source/cpp_uno/mingw_intel/except.cxx +++ b/bridges/source/cpp_uno/mingw_intel/except.cxx @@ -32,6 +32,7 @@ #include "precompiled_bridges.hxx" #include <stdio.h> +#include <string.h> #include <cxxabi.h> #include <hash_map> diff --git a/bridges/source/cpp_uno/mingw_intel/makefile.mk b/bridges/source/cpp_uno/mingw_intel/makefile.mk index 823c3888516b..242d21617d5e 100644 --- a/bridges/source/cpp_uno/mingw_intel/makefile.mk +++ b/bridges/source/cpp_uno/mingw_intel/makefile.mk @@ -47,11 +47,17 @@ ENABLE_EXCEPTIONS=TRUE .IF "$(cppu_no_leak)" == "" CFLAGS += -DLEAK_STATIC_DATA .ENDIF +.IF "$(EXCEPTIONS)" == "sjlj" +CFLAGS += -DBROKEN_ALLOCA +.ENDIF # In case someone enabled the non-standard -fomit-frame-pointer which does not # work with the .cxx sources in this directory: CFLAGSCXX += -fno-omit-frame-pointer +NOOPTFILES= \ + $(SLO)$/uno2cpp.obj + CFLAGSNOOPT=-O0 SLOFILES= \ diff --git a/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx b/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx index 0c12fac5c93f..f6b6a1c6511d 100644 --- a/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx +++ b/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx @@ -44,10 +44,6 @@ #include "share.hxx" #include "smallstruct.hxx" -#ifdef __MINGW32__ -#define BROKEN_ALLOCA -#endif - using namespace ::rtl; using namespace ::com::sun::star::uno; diff --git a/bridges/source/jni_uno/jni_java2uno.cxx b/bridges/source/jni_uno/jni_java2uno.cxx index 03c7ef9fbc64..b3b4e5ab8b06 100644 --- a/bridges/source/jni_uno/jni_java2uno.cxx +++ b/bridges/source/jni_uno/jni_java2uno.cxx @@ -41,10 +41,6 @@ #include <algorithm> -#ifdef __MINGW32__ -#define BROKEN_ALLOCA -#endif - using namespace ::rtl; namespace jni_uno diff --git a/bridges/source/jni_uno/jni_uno2java.cxx b/bridges/source/jni_uno/jni_uno2java.cxx index d9ad7f92b124..50c551427959 100644 --- a/bridges/source/jni_uno/jni_uno2java.cxx +++ b/bridges/source/jni_uno/jni_uno2java.cxx @@ -40,10 +40,6 @@ #include "jni_bridge.h" -#ifdef __MINGW32__ -#define BROKEN_ALLOCA -#endif - using namespace ::std; using namespace ::rtl; diff --git a/bridges/source/jni_uno/makefile.mk b/bridges/source/jni_uno/makefile.mk index 36f6ffbde5b9..d020eb7e91a1 100644 --- a/bridges/source/jni_uno/makefile.mk +++ b/bridges/source/jni_uno/makefile.mk @@ -47,6 +47,12 @@ nojava: # --- Files -------------------------------------------------------- +.IF "$(GUI)$(COM)" == "WNTGCC" +.IF "$(EXCEPTIONS)" == "sjlj" +CFLAGS += -DBROKEN_ALLOCA +.ENDIF +.ENDIF + SLOFILES= \ $(SLO)$/jni_info.obj \ $(SLO)$/jni_data.obj \ diff --git a/sal/systools/win32/uwinapi/makefile.mk b/sal/systools/win32/uwinapi/makefile.mk index e2a91cf3fd03..52a8561588c2 100644 --- a/sal/systools/win32/uwinapi/makefile.mk +++ b/sal/systools/win32/uwinapi/makefile.mk @@ -142,7 +142,9 @@ STDSHL= .IF "$(COM)"=="GCC" SHL1STDLIBS=\ -lmingw32 \ - -lgcc + $(MINGW_LIBGCC) +MINGWSSTDOBJ= +MINGWSSTDENDOBJ= .ELSE SHL1STDLIBS=\ unicows.lib diff --git a/sal/util/makefile.mk b/sal/util/makefile.mk index f56e6f88f058..bc8026aa860f 100644 --- a/sal/util/makefile.mk +++ b/sal/util/makefile.mk @@ -113,6 +113,10 @@ SHL1STDLIBS= \ $(COMDLG32LIB)\ $(USER32LIB)\ $(OLE32LIB) +.IF "$(COM)"=="GCC" +MINGWSSTDOBJ= +MINGWSSTDENDOBJ= +.ENDIF .ENDIF # WNT .IF "$(GUI)"=="UNX" |