diff --git a/reactos/base/applications/games/solitaire/solitaire.rbuild b/reactos/base/applications/games/solitaire/solitaire.rbuild
index 3b4a8df0447..97173a0dafa 100644
--- a/reactos/base/applications/games/solitaire/solitaire.rbuild
+++ b/reactos/base/applications/games/solitaire/solitaire.rbuild
@@ -3,9 +3,9 @@
.
cardlib
- -lstdc++
0x0501
0x0501
+ advapi32
kernel32
user32
gdi32
diff --git a/reactos/base/setup/usetup/usetup.rbuild b/reactos/base/setup/usetup/usetup.rbuild
index bece1aacfb6..e20064b0d2d 100644
--- a/reactos/base/setup/usetup/usetup.rbuild
+++ b/reactos/base/setup/usetup/usetup.rbuild
@@ -9,7 +9,6 @@
0x0502
- -lgcc
zlib
inflib
ext2lib
diff --git a/reactos/base/shell/explorer/explorer.rbuild b/reactos/base/shell/explorer/explorer.rbuild
index 5fccd6d6c7e..34a01da5c23 100644
--- a/reactos/base/shell/explorer/explorer.rbuild
+++ b/reactos/base/shell/explorer/explorer.rbuild
@@ -1,16 +1,15 @@
-
- -fexceptions
+
-Wno-non-virtual-dtor
.
-
0x0600
0x0501
0x0500
+ advapi32
kernel32
gdi32
user32
diff --git a/reactos/base/system/smss/smss.rbuild b/reactos/base/system/smss/smss.rbuild
index 39b0649ee9f..015b5913da4 100644
--- a/reactos/base/system/smss/smss.rbuild
+++ b/reactos/base/system/smss/smss.rbuild
@@ -7,7 +7,6 @@
nt
smlib
ntdll
- -lgcc
smss.h
client.c
diff --git a/reactos/dll/3rdparty/mesa32/mesa32.rbuild b/reactos/dll/3rdparty/mesa32/mesa32.rbuild
index 4b0e48f12a3..77e1ade8565 100644
--- a/reactos/dll/3rdparty/mesa32/mesa32.rbuild
+++ b/reactos/dll/3rdparty/mesa32/mesa32.rbuild
@@ -2,7 +2,6 @@
- -Wl,--enable-stdcall-fixup
ntdll
kernel32
msvcrt
diff --git a/reactos/dll/ntdll/ntdll.rbuild b/reactos/dll/ntdll/ntdll.rbuild
index 61073e9781c..8054b34a2b4 100644
--- a/reactos/dll/ntdll/ntdll.rbuild
+++ b/reactos/dll/ntdll/ntdll.rbuild
@@ -16,9 +16,6 @@
ntdllsys
libcntpr
pseh
- -lgcc
- -nostdlib
- -nostartfiles
ntstatus
api.c
diff --git a/reactos/dll/win32/cfgmgr32/cfgmgr32.rbuild b/reactos/dll/win32/cfgmgr32/cfgmgr32.rbuild
index 61270cb3fbc..4f0ad22e908 100644
--- a/reactos/dll/win32/cfgmgr32/cfgmgr32.rbuild
+++ b/reactos/dll/win32/cfgmgr32/cfgmgr32.rbuild
@@ -1,9 +1,6 @@
- -nostartfiles
- -nostdlib
- -lgcc
cfgmgr32.rc
diff --git a/reactos/dll/win32/crtdll/crtdll.rbuild b/reactos/dll/win32/crtdll/crtdll.rbuild
index 97a72f59390..d69b3c04a94 100644
--- a/reactos/dll/win32/crtdll/crtdll.rbuild
+++ b/reactos/dll/win32/crtdll/crtdll.rbuild
@@ -1,6 +1,4 @@
- -nostartfiles
- -lgcc
.
include
diff --git a/reactos/dll/win32/gdi32/gdi32.rbuild b/reactos/dll/win32/gdi32/gdi32.rbuild
index 4418bac6d13..4a04b9b9e5a 100644
--- a/reactos/dll/win32/gdi32/gdi32.rbuild
+++ b/reactos/dll/win32/gdi32/gdi32.rbuild
@@ -50,8 +50,5 @@
utils.c
path.c
- -lgcc
- -nostartfiles
- -nostdlib
gdi32.rc
diff --git a/reactos/dll/win32/kernel32/kernel32.rbuild b/reactos/dll/win32/kernel32/kernel32.rbuild
index 24cdeb00529..55899c5996a 100644
--- a/reactos/dll/win32/kernel32/kernel32.rbuild
+++ b/reactos/dll/win32/kernel32/kernel32.rbuild
@@ -131,9 +131,6 @@
wine
pseh
ntdll
- -lgcc
- -nostartfiles
- -nostdlib
kernel32.rc
diff --git a/reactos/dll/win32/lpk/lpk.rbuild b/reactos/dll/win32/lpk/lpk.rbuild
index cb3440264e2..fe83c7ec489 100644
--- a/reactos/dll/win32/lpk/lpk.rbuild
+++ b/reactos/dll/win32/lpk/lpk.rbuild
@@ -13,8 +13,5 @@
dllmain.c
stub.c
- -lgcc
- -nostartfiles
- -nostdlib
lpk.rc
diff --git a/reactos/dll/win32/lsasrv/lsasrv.rbuild b/reactos/dll/win32/lsasrv/lsasrv.rbuild
index fc09c4fea16..b87a23a0681 100644
--- a/reactos/dll/win32/lsasrv/lsasrv.rbuild
+++ b/reactos/dll/win32/lsasrv/lsasrv.rbuild
@@ -4,8 +4,6 @@
.
0x600
0x0600
- -nostartfiles
- -nostdlib
lsa_server
ntdll
kernel32
diff --git a/reactos/dll/win32/msvcrt/msvcrt.rbuild b/reactos/dll/win32/msvcrt/msvcrt.rbuild
index 75af5b3e4f5..a5a985284b9 100644
--- a/reactos/dll/win32/msvcrt/msvcrt.rbuild
+++ b/reactos/dll/win32/msvcrt/msvcrt.rbuild
@@ -1,8 +1,4 @@
- -nostartfiles
- --enable-stdcall-fixup
- -nostdlib
- -lgcc
.
include
diff --git a/reactos/dll/win32/samsrv/samsrv.rbuild b/reactos/dll/win32/samsrv/samsrv.rbuild
index 342a0dbd6ee..a2ebe7f0476 100644
--- a/reactos/dll/win32/samsrv/samsrv.rbuild
+++ b/reactos/dll/win32/samsrv/samsrv.rbuild
@@ -3,8 +3,6 @@
.
- -nostartfiles
- -nostdlib
ntdll
kernel32
samsrv.c
diff --git a/reactos/dll/win32/user32/user32.rbuild b/reactos/dll/win32/user32/user32.rbuild
index 66106aa980f..607c4bd156e 100644
--- a/reactos/dll/win32/user32/user32.rbuild
+++ b/reactos/dll/win32/user32/user32.rbuild
@@ -74,8 +74,5 @@
window.c
winpos.c
- -lgcc
- -nostartfiles
- -nostdlib
user32.rc
diff --git a/reactos/drivers/filesystems/ext2/ext2.rbuild b/reactos/drivers/filesystems/ext2/ext2.rbuild
index ea553020f8a..9247a254c26 100644
--- a/reactos/drivers/filesystems/ext2/ext2.rbuild
+++ b/reactos/drivers/filesystems/ext2/ext2.rbuild
@@ -3,7 +3,6 @@
inc
- -lgcc
ntoskrnl
hal
diff --git a/reactos/drivers/filesystems/fastfat/vfatfs.rbuild b/reactos/drivers/filesystems/fastfat/vfatfs.rbuild
index c00a928605c..56ca836973c 100644
--- a/reactos/drivers/filesystems/fastfat/vfatfs.rbuild
+++ b/reactos/drivers/filesystems/fastfat/vfatfs.rbuild
@@ -3,7 +3,6 @@
.
- -lgcc
ntoskrnl
hal
blockdev.c
diff --git a/reactos/drivers/storage/class/disk/disk.rbuild b/reactos/drivers/storage/class/disk/disk.rbuild
index f2e63ce0fb2..e59a64ecc20 100644
--- a/reactos/drivers/storage/class/disk/disk.rbuild
+++ b/reactos/drivers/storage/class/disk/disk.rbuild
@@ -2,7 +2,6 @@
- -lgcc
ntoskrnl
hal
class2
diff --git a/reactos/drivers/storage/class/ramdisk/ramdisk.rbuild b/reactos/drivers/storage/class/ramdisk/ramdisk.rbuild
index a726f9e7c72..f37a12a8dcf 100644
--- a/reactos/drivers/storage/class/ramdisk/ramdisk.rbuild
+++ b/reactos/drivers/storage/class/ramdisk/ramdisk.rbuild
@@ -2,7 +2,6 @@
- -lgcc
ntoskrnl
hal
class2
diff --git a/reactos/drivers/storage/ide/uniata/uniata.rbuild b/reactos/drivers/storage/ide/uniata/uniata.rbuild
index 85b58c5293e..e874386627b 100644
--- a/reactos/drivers/storage/ide/uniata/uniata.rbuild
+++ b/reactos/drivers/storage/ide/uniata/uniata.rbuild
@@ -20,6 +20,4 @@
ros_glue.cpp
ros_glue_asm.s
-
- -lgcc
diff --git a/reactos/drivers/wdm/audio/drivers/mpu401/mpu401.rbuild b/reactos/drivers/wdm/audio/drivers/mpu401/mpu401.rbuild
index 0396a37fda6..cbd1fef36b1 100644
--- a/reactos/drivers/wdm/audio/drivers/mpu401/mpu401.rbuild
+++ b/reactos/drivers/wdm/audio/drivers/mpu401/mpu401.rbuild
@@ -9,7 +9,6 @@
-->
- -Wl,--entry,_DriverEntry@8
.
..
ntoskrnl
diff --git a/reactos/lib/3rdparty/bzip2/bzip2.rbuild b/reactos/lib/3rdparty/bzip2/bzip2.rbuild
index ffeaf504b81..3437902a950 100644
--- a/reactos/lib/3rdparty/bzip2/bzip2.rbuild
+++ b/reactos/lib/3rdparty/bzip2/bzip2.rbuild
@@ -4,7 +4,6 @@
- -lgcc
ntoskrnl
hal
bzlib.c
diff --git a/reactos/ntoskrnl/ntoskrnl-generic.rbuild b/reactos/ntoskrnl/ntoskrnl-generic.rbuild
index d3ee6313b61..cb7c7aad932 100644
--- a/reactos/ntoskrnl/ntoskrnl-generic.rbuild
+++ b/reactos/ntoskrnl/ntoskrnl-generic.rbuild
@@ -458,8 +458,5 @@
wmi.c
ntoskrnl.rc
- -nostartfiles
- -nostdlib
- -lgcc
ntoskrnl_$(ARCH).lnk
diff --git a/reactos/tools/rbuild/backend/mingw/mingw.cpp b/reactos/tools/rbuild/backend/mingw/mingw.cpp
index e99d769ab59..ae2e4d45bbb 100644
--- a/reactos/tools/rbuild/backend/mingw/mingw.cpp
+++ b/reactos/tools/rbuild/backend/mingw/mingw.cpp
@@ -526,8 +526,9 @@ MingwBackend::GenerateGlobalVariables () const
fprintf ( fMakefile, "PROJECT_RCFLAGS := $(PROJECT_CFLAGS) $(PROJECT_CDEFINES)\n" );
fprintf ( fMakefile, "PROJECT_WIDLFLAGS := $(PROJECT_CFLAGS) $(PROJECT_CDEFINES)\n" );
- fprintf ( fMakefile, "PROJECT_LFLAGS := %s\n",
+ fprintf ( fMakefile, "PROJECT_LFLAGS := \"$(shell ${TARGET_CC} -print-libgcc-file-name)\" %s\n",
GenerateProjectLFLAGS ().c_str () );
+ fprintf ( fMakefile, "PROJECT_LPPFLAGS := \"$(shell ${TARGET_CPP} -print-file-name=libstdc++.a)\" \"$(shell ${TARGET_CPP} -print-file-name=libgcc.a)\" \"$(shell ${TARGET_CPP} -print-file-name=libmingw32.a)\" \"$(shell ${TARGET_CPP} -print-file-name=libmingwex.a)\"\n" );
fprintf ( fMakefile, "PROJECT_CFLAGS += -Wall\n" );
fprintf ( fMakefile, "ifneq ($(OARCH),)\n" );
fprintf ( fMakefile, "PROJECT_CFLAGS += -march=$(OARCH)\n" );
diff --git a/reactos/tools/rbuild/backend/mingw/modulehandler.cpp b/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
index fff325def12..55dd78248da 100644
--- a/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
+++ b/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
@@ -743,10 +743,9 @@ MingwModuleHandler::GenerateMacro (
size_t i;
bool generateAssignment;
+ generateAssignment = (use_pch && module.pch != NULL ) || data.includes.size () > 0 || data.defines.size () > 0;
if ( generatingCompilerMacro )
- generateAssignment = (use_pch && module.pch != NULL ) || data.includes.size () > 0 || data.defines.size () > 0 || data.compilerFlags.size () > 0;
- else
- generateAssignment = (use_pch && module.pch != NULL ) || data.includes.size () > 0 || data.defines.size () > 0;
+ generateAssignment |= data.compilerFlags.size () > 0;
if ( generateAssignment )
{
fprintf ( fMakefile,
@@ -1581,7 +1580,8 @@ MingwModuleHandler::GenerateLinkerCommand (
{
const FileLocation *target_file = GetTargetFilename ( module, NULL );
const FileLocation *definitionFilename = GetDefinitionFilename ();
- string linker = module.cplusplus ? "${gpp}" : "${gcc}";
+ const FileLocation temp_obj ( TemporaryDirectory, "", module.name + ".temp.ld" );
+ string linker = "${ld}";
string objectsMacro = GetObjectsMacro ( module );
string libsMacro = GetLibsMacro ();
@@ -1590,7 +1590,7 @@ MingwModuleHandler::GenerateLinkerCommand (
string linkerScriptArgument;
if ( module.linkerScript != NULL )
- linkerScriptArgument = ssprintf ( " -Wl,-T,%s", backend->GetFullName ( *module.linkerScript->file ).c_str () );
+ linkerScriptArgument = ssprintf ( " -T=%s", backend->GetFullName ( *module.linkerScript->file ).c_str () );
else
linkerScriptArgument = "";
@@ -1603,17 +1603,23 @@ MingwModuleHandler::GenerateLinkerCommand (
fprintf ( fMakefile, "\t$(ECHO_LD)\n" );
string targetName ( module.output->name );
+ fprintf ( fMakefile, "\t@echo $(subst $(SEP),/,%s) > %s\n",
+ objectsMacro.c_str (),
+ backend->GetFullName ( temp_obj ).c_str () );
+ CLEAN_FILE ( temp_obj );
+
if ( !module.IsDLL () )
{
fprintf ( fMakefile,
- "\t%s %s%s -o %s %s %s %s\n",
+ "\t%s %s%s @%s %s%s %s -o %s\n",
linker.c_str (),
linkerParameters.c_str (),
linkerScriptArgument.c_str (),
- target_macro.c_str (),
- objectsMacro.c_str (),
+ backend->GetFullName ( temp_obj ).c_str (),
+ module.cplusplus ? "$(PROJECT_LPPFLAGS) " : "",
libsMacro.c_str (),
- GetLinkerMacro ().c_str () );
+ GetLinkerMacro ().c_str (),
+ target_macro.c_str () );
}
else if ( module.HasImportLibrary () )
{
@@ -1631,15 +1637,16 @@ MingwModuleHandler::GenerateLinkerCommand (
module.underscoreSymbols ? " --add-underscore" : "" );
fprintf ( fMakefile,
- "\t%s %s%s %s -o %s %s %s %s\n",
+ "\t%s %s%s %s @%s %s%s %s -o %s\n",
linker.c_str (),
linkerParameters.c_str (),
linkerScriptArgument.c_str (),
backend->GetFullName ( temp_exp ).c_str (),
- target_macro.c_str (),
- objectsMacro.c_str (),
+ backend->GetFullName ( temp_obj ).c_str (),
+ module.cplusplus ? "$(PROJECT_LPPFLAGS) " : "",
libsMacro.c_str (),
- GetLinkerMacro ().c_str () );
+ GetLinkerMacro ().c_str (),
+ target_macro.c_str () );
fprintf ( fMakefile,
"\t$(Q)$(PEFIXUP_TARGET) %s -exports%s\n",
@@ -1659,14 +1666,15 @@ MingwModuleHandler::GenerateLinkerCommand (
//printf ( "%s will have all its functions exported\n",
// module.target->name.c_str () );
fprintf ( fMakefile,
- "\t%s %s%s -o %s %s %s %s\n",
+ "\t%s %s%s @%s %s%s %s -o %s\n",
linker.c_str (),
linkerParameters.c_str (),
linkerScriptArgument.c_str (),
- target_macro.c_str (),
- objectsMacro.c_str (),
+ backend->GetFullName ( temp_obj ).c_str (),
+ module.cplusplus ? "$(PROJECT_LPPFLAGS) " : "",
libsMacro.c_str (),
- GetLinkerMacro ().c_str () );
+ GetLinkerMacro ().c_str (),
+ target_macro.c_str () );
}
GenerateBuildMapCode ();
@@ -2529,7 +2537,7 @@ MingwKernelModuleHandler::GenerateKernelModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,native -Wl,--entry,%s -Wl,--image-base,%s",
+ string linkerParameters = ssprintf ( "-subsystem=native -entry=%s -image-base=%s",
module.GetEntryPoint(!(Environment::GetArch() == "arm")).c_str (),
module.baseaddress.c_str () );
@@ -2652,7 +2660,7 @@ MingwKernelModeDLLModuleHandler::GenerateKernelModeDLLModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,native -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 -nostartfiles -shared",
+ string linkerParameters = ssprintf ( "-subsystem=native -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000 -shared",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -2701,7 +2709,7 @@ MingwKernelModeDriverModuleHandler::GenerateKernelModeDriverModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,native -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 -nostartfiles -shared",
+ string linkerParameters = ssprintf ( "-subsystem=native -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000 -shared",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -2749,7 +2757,7 @@ MingwNativeDLLModuleHandler::GenerateNativeDLLModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,native -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 -nostartfiles -nostdlib -shared",
+ string linkerParameters = ssprintf ( "-subsystem=native -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000 -shared",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -2797,7 +2805,7 @@ MingwNativeCUIModuleHandler::GenerateNativeCUIModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,native -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 -nostartfiles -nostdlib",
+ string linkerParameters = ssprintf ( "-subsystem=native -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -2922,7 +2930,7 @@ MingwWin32DLLModuleHandler::GenerateWin32DLLModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,console -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 -shared",
+ string linkerParameters = ssprintf ( "-subsystem=console -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000 -shared",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -2964,7 +2972,7 @@ MingwWin32OCXModuleHandler::GenerateWin32OCXModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,console -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 -shared",
+ string linkerParameters = ssprintf ( "-subsystem=console -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000 -shared",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -3013,7 +3021,7 @@ MingwWin32CUIModuleHandler::GenerateWin32CUIModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,console -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000",
+ string linkerParameters = ssprintf ( "-subsystem=console -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -3062,7 +3070,7 @@ MingwWin32GUIModuleHandler::GenerateWin32GUIModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,windows -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000",
+ string linkerParameters = ssprintf ( "-subsystem=windows -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
@@ -3684,7 +3692,7 @@ MingwTestModuleHandler::GenerateTestModuleTarget ()
string dependencies = linkDepsMacro + " " + objectsMacro;
- string linkerParameters = ssprintf ( "-Wl,--subsystem,console -Wl,--entry,%s -Wl,--image-base,%s -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000",
+ string linkerParameters = ssprintf ( "-subsystem=console -entry=%s -image-base=%s -file-alignment=0x1000 -section-alignment=0x1000",
module.GetEntryPoint(true).c_str (),
module.baseaddress.c_str () );
GenerateLinkerCommand ( dependencies,
diff --git a/reactos/tools/rbuild/backend/mingw/modulehandler.h b/reactos/tools/rbuild/backend/mingw/modulehandler.h
index 8c4cea5140c..238c3dc26a6 100644
--- a/reactos/tools/rbuild/backend/mingw/modulehandler.h
+++ b/reactos/tools/rbuild/backend/mingw/modulehandler.h
@@ -250,7 +250,6 @@ public:
MingwKernelModeDLLModuleHandler ( const Module& module );
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
- std::string TypeSpecificLinkerFlags() { return "-nostartfiles -nostdlib"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateKernelModeDLLModuleTarget ();
@@ -264,7 +263,6 @@ public:
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
std::string TypeSpecificCFlags() { return "-D__NTDRIVER__"; }
- std::string TypeSpecificLinkerFlags() { return "-nostartfiles -nostdlib"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateKernelModeDriverModuleTarget ();
@@ -277,7 +275,6 @@ public:
MingwNativeDLLModuleHandler ( const Module& module );
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
- std::string TypeSpecificLinkerFlags() { return "-nostartfiles -nostdlib"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateNativeDLLModuleTarget ();
@@ -291,7 +288,6 @@ public:
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
std::string TypeSpecificCFlags() { return "-D__NTAPP__"; }
- std::string TypeSpecificLinkerFlags() { return "-nostartfiles -nostdlib"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateNativeCUIModuleTarget ();
@@ -304,7 +300,6 @@ public:
MingwWin32DLLModuleHandler ( const Module& module );
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
- std::string TypeSpecificLinkerFlags() { return module.cplusplus ? "-nostartfiles -lgcc" : "-nostartfiles -nostdlib -lgcc"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateWin32DLLModuleTarget ();
@@ -317,7 +312,6 @@ public:
MingwWin32OCXModuleHandler ( const Module& module );
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
- std::string TypeSpecificLinkerFlags() { return module.cplusplus ? "-nostartfiles -lgcc" : "-nostartfiles -nostdlib -lgcc"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateWin32OCXModuleTarget ();
@@ -330,7 +324,6 @@ public:
MingwWin32CUIModuleHandler ( const Module& module );
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
- std::string TypeSpecificLinkerFlags() { return module.cplusplus ? "-nostartfiles -lgcc" : "-nostartfiles -nostdlib -lgcc"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateWin32CUIModuleTarget ();
@@ -343,7 +336,6 @@ public:
MingwWin32GUIModuleHandler ( const Module& module );
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
- std::string TypeSpecificLinkerFlags() { return module.cplusplus ? "-nostartfiles -lgcc" : "-nostartfiles -nostdlib -lgcc"; }
void AddImplicitLibraries ( Module& module );
private:
void GenerateWin32GUIModuleTarget ();
@@ -431,7 +423,6 @@ public:
MingwTestModuleHandler ( const Module& module );
virtual HostType DefaultHost() { return HostFalse; }
virtual void Process ();
- std::string TypeSpecificLinkerFlags() { return "-nostartfiles -nostdlib"; }
protected:
virtual void GetModuleSpecificCompilationUnits ( std::vector& compilationUnits );
private: