summaryrefslogtreecommitdiff
path: root/solenv/inc/wntgcci6.mk
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/inc/wntgcci6.mk')
-rw-r--r--solenv/inc/wntgcci6.mk33
1 files changed, 26 insertions, 7 deletions
diff --git a/solenv/inc/wntgcci6.mk b/solenv/inc/wntgcci6.mk
index 28c16561d89f..9186ea9cc826 100644
--- a/solenv/inc/wntgcci6.mk
+++ b/solenv/inc/wntgcci6.mk
@@ -81,7 +81,10 @@ CFLAGSNOOPT=-O0
# Compiler flags for describing the output path
CFLAGSOUTOBJ=-o
#plattform hart setzen
-CDEFS+=-DWIN32 -DWINVER=0x500 -D_WIN32_IE=0x500 -D_DLL -D_M_IX86 -DSTLPORT_VERSION=450 -D_NATIVE_WCHAR_T_DEFINED
+CDEFS+=-DWIN32 -DWINVER=0x500 -D_WIN32_IE=0x500 -D_M_IX86 -DSTLPORT_VERSION=450 -D_NATIVE_WCHAR_T_DEFINED
+.IF "$(DYNAMIC_CRT)"!=""
+CDEFS+=-D_DLL
+.ENDIF
# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
CFLAGSWARNCC=-Wall -Wextra -Wendif-labels
@@ -117,6 +120,8 @@ MINGWLIBDIR=$(COMPATH)$/lib$/mingw
.ELSE
MINGWLIBDIR=$(COMPATH)$/lib
.ENDIF
+MINGWSSTDOBJ=$(MINGW_CLIB_DIR)$/crtbegin.o
+MINGWSSTDENDOBJ=$(MINGW_CLIB_DIR)$/crtend.o
LINKFLAGSAPPGUI=-mwindows $(MINGWLIBDIR)$/crt2.o
LINKFLAGSSHLGUI=--warn-once -mwindows -shared $(MINGWLIBDIR)$/dllcrt2.o
LINKFLAGSAPPCUI=-mconsole $(MINGWLIBDIR)$/crt2.o
@@ -126,19 +131,33 @@ LINKFLAGSPROF=
LINKFLAGSDEBUG=-g
LINKFLAGSOPT=
+.IF "$(MINGW_SHARED_GXXLIB)"=="YES" && "$(DYNAMIC_CRT)"!=""
+STDLIBCPP=-lstdc++_s
+.ELSE
STDLIBCPP=-lstdc++
+.ENDIF
UWINAPILIB*=$(DYNAMIC) -luwinapi
+.IF "$(MINGW_SHARED_GCCLIB)"=="YES" && "$(DYNAMIC_CRT)"!=""
+MINGW_LIBGCC=-lgcc_s -lgcc
+LINKFLAGS+=-shared-libgcc
+.ELSE
+.IF "$(MINGW_GCCLIB_EH)"=="YES"
+MINGW_LIBGCC=-lgcc_eh -lgcc
+.ELSE
+MINGW_LIBGCC=-lgcc
+.ENDIF
+.ENDIF
STDOBJVCL=$(L)$/salmain.obj
STDOBJGUI=
STDSLOGUI=
STDOBJCUI=
STDSLOCUI=
-STDLIBGUIMT=-Wl,--start-group CPPRUNTIME -lgcc
-STDLIBCUIMT=-Wl,--start-group CPPRUNTIME -lgcc
-STDSHLGUIMT=-Wl,--start-group CPPRUNTIME -lgcc
-STDSHLCUIMT=-Wl,--start-group CPPRUNTIME -lgcc
-.IF "$(MINGW_NODLL)"==""
+STDLIBGUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+STDLIBCUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+STDSHLGUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+STDSHLCUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+.IF "$(DYNAMIC_CRT)"!=""
STDLIBGUIMT+=-lmingwthrd
STDLIBCUIMT+=-lmingwthrd
STDSHLGUIMT+=-lmingwthrd
@@ -150,7 +169,7 @@ STDSHLGUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -l
STDSHLCUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt
LIBSTLPORT=-lstlport_gcc
-LIBSTLPORTST=-lstlport_gcc_static
+LIBSTLPORTST=-lstlport_gcc_static $(STDLIBCPP)
LIBMGR=ar
LIBFLAGS=-rsu