[MSVCRTEX]
authorThomas Faber <thomas.faber@reactos.org>
Sun, 6 Nov 2011 13:07:43 +0000 (13:07 +0000)
committerThomas Faber <thomas.faber@reactos.org>
Sun, 6 Nov 2011 13:07:43 +0000 (13:07 +0000)
- Fix some warnings
- Remove a ros-diff in favor of mingw-w64's solution

svn path=/trunk/; revision=54313

reactos/lib/sdk/crt/msvcrtex.cmake
reactos/lib/sdk/crt/startup/pseudo-reloc.c

index 066500a..4511ff1 100644 (file)
@@ -63,6 +63,8 @@ endif()
 add_library(msvcrtex ${MSVCRTEX_SOURCE})
 add_target_compile_definitions(msvcrtex _DLL)
 set_source_files_properties(startup/crtdll.c PROPERTIES COMPILE_DEFINITIONS CRTDLL)
+set_source_files_properties(startup/crtexe.c
+                            startup/wcrtexe.c PROPERTIES COMPILE_DEFINITIONS _M_CEE_PURE)
 
 if(NOT MSVC)
     target_link_libraries(msvcrtex oldnames)
index 61cc712..b88e37e 100644 (file)
@@ -20,6 +20,7 @@
 #include <stdlib.h>
 #include <stdarg.h>
 #include <memory.h>
+#include <malloc.h>
 
 #if defined(__CYGWIN__)
 #include <wchar.h>
 
 extern char __RUNTIME_PSEUDO_RELOC_LIST__;
 extern char __RUNTIME_PSEUDO_RELOC_LIST_END__;
-#ifndef _MSC_VER
-#define __ImageBase __MINGW_LSYMBOL(_image_base__)
-#endif
-extern char __ImageBase;
+extern char __MINGW_LSYMBOL(_image_base__);
 
 void _pei386_runtime_relocator (void);
 
@@ -466,7 +464,12 @@ _pei386_runtime_relocator (void)
 
   do_pseudo_reloc (&__RUNTIME_PSEUDO_RELOC_LIST__,
                   &__RUNTIME_PSEUDO_RELOC_LIST_END__,
-                  &__MINGW_LSYMBOL(_image_base__));
+#ifdef __GNUC__
+                  &__MINGW_LSYMBOL(_image_base__)
+#else
+                  &__ImageBase
+#endif
+                  );
 #ifdef __MINGW64_VERSION_MAJOR
   restore_modified_sections ();
 #endif /* __MINGW64_VERSION_MAJOR */