[ros-diffs] [tkreuzer] 49684: [MSVCRT] - Add a number of stub functions to fix build - Comment out some exports that are probably 2k/nt4 only - don't set -u flag for MSVC

tkreuzer at svn.reactos.org tkreuzer at svn.reactos.org
Sun Nov 21 13:08:56 UTC 2010


Author: tkreuzer
Date: Sun Nov 21 13:08:55 2010
New Revision: 49684

URL: http://svn.reactos.org/svn/reactos?rev=49684&view=rev
Log:
[MSVCRT]
- Add a number of stub functions to fix build
- Comment out some exports that are probably 2k/nt4 only
- don't set -u flag for MSVC

Modified:
    branches/cmake-bringup/dll/win32/msvcrt/CMakeLists.txt
    branches/cmake-bringup/dll/win32/msvcrt/msvcrt.spec
    branches/cmake-bringup/dll/win32/msvcrt/msvcrt_stubs.c

Modified: branches/cmake-bringup/dll/win32/msvcrt/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/dll/win32/msvcrt/CMakeLists.txt?rev=49684&r1=49683&r2=49684&view=diff
==============================================================================
--- branches/cmake-bringup/dll/win32/msvcrt/CMakeLists.txt [iso-8859-1] (original)
+++ branches/cmake-bringup/dll/win32/msvcrt/CMakeLists.txt [iso-8859-1] Sun Nov 21 13:08:55 2010
@@ -23,7 +23,9 @@
     ${CMAKE_CURRENT_BINARY_DIR}/msvcrt_precomp.h.gch
     ${SOURCE})
 
+if (NOT MSVC)
 set_target_properties(msvcrt PROPERTIES LINK_FLAGS "-u __seh_longjmp_unwind at 4")
+endif()
 set_module_type(msvcrt win32dll)
 
 target_link_libraries(msvcrt

Modified: branches/cmake-bringup/dll/win32/msvcrt/msvcrt.spec
URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/dll/win32/msvcrt/msvcrt.spec?rev=49684&r1=49683&r2=49684&view=diff
==============================================================================
--- branches/cmake-bringup/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] (original)
+++ branches/cmake-bringup/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] Sun Nov 21 13:08:55 2010
@@ -144,7 +144,7 @@
 @ cdecl __dllonexit(ptr ptr ptr)
 @ cdecl __doserrno() __doserrno
 @ cdecl __fpecode()
-@ stub __get_app_type
+@ cdecl __get_app_type()
 @ cdecl __getmainargs(ptr ptr ptr long ptr)
 @ extern __initenv __initenv
 @ cdecl __iob_func() __p__iob
@@ -152,7 +152,7 @@
 @ cdecl __iscsym(long) __iscsym
 @ cdecl __iscsymf(long) __iscsymf
 @ extern __lc_codepage MSVCRT___lc_codepage
-@ stub __lc_collate
+# @ stub __lc_collate # not in XP / 7
 @ extern __lc_collate_cp MSVCRT___lc_collate_cp
 @ extern __lc_handle MSVCRT___lc_handle
 @ cdecl __lconv_init()
@@ -190,10 +190,10 @@
 @ cdecl -arch=i386 __p__daylight()
 @ cdecl -arch=i386 __p__dstbias()
 @ cdecl -arch=i386 __p__environ()
-@ stub -arch=i386 __p__fileinfo #()
+@ cdecl -arch=i386 __p__fileinfo()
 @ cdecl -arch=i386 __p__fmode()
 @ cdecl -arch=i386 __p__iob()
-@ stub -arch=i386 __p__mbcasemap #()
+@ cdecl -arch=i386 __p__mbcasemap()
 @ cdecl -arch=i386 __p__mbctype()
 @ cdecl -arch=i386 __p__osver()
 @ cdecl -arch=i386 __p__pctype() __pctype_func
@@ -260,7 +260,7 @@
 # stub _aligned_realloc_dbg
 @ cdecl _amsg_exit(long)
 @ cdecl _assert(str str long) 
-@ stub _atodbl #(ptr str)
+@ cdecl _atodbl(ptr str)
 # stub _atodbl_l
 # @ cdecl _atof_l(str ptr)
 # stub _atoflt_l
@@ -365,7 +365,7 @@
 @ cdecl _fgetchar()
 @ cdecl _fgetwchar()
 @ cdecl _filbuf(ptr)
-# extern _fileinfo
+@ extern _fileinfo
 @ cdecl _filelength(long)
 @ cdecl -ret64 _filelengthi64(long)
 @ cdecl _fileno(ptr)
@@ -439,8 +439,8 @@
 # stub _get_winminor
 # stub _get_winver
 # stub _get_wpgmptr
-@ stub _get_terminate
-@ stub _get_unexpected
+# @ stub _get_terminate # not in XP / 7
+# @ stub _get_unexpected # not in XP / 7
 @ cdecl _getch()
 @ cdecl _getche()
 @ cdecl _getcwd(str long)
@@ -466,7 +466,7 @@
 @ cdecl _heapchk()
 @ cdecl _heapmin()
 @ cdecl _heapset(long)
-@ stub _heapused #(ptr ptr)
+# @ stub _heapused #(ptr ptr) # not in XP / 7
 @ cdecl _heapwalk(ptr)
 @ cdecl _hypot(double double)
 @ cdecl _i64toa(long long ptr long)
@@ -475,10 +475,10 @@
 # stub _i64tow_s
 @ cdecl _initterm(ptr ptr)
 # stub _initterm_e
-@ stub _inp #(long) -i386
-@ stub _inpd #(long) -i386
-@ stub _inpw #(long) -i386
-# @ cdecl _invalid_parameter(wstr wstr wstr long long)
+@ cdecl -arch=i386 _inp(long)
+@ cdecl -arch=i386 _inpd(long)
+@ cdecl -arch=i386 _inpw(long)
+@ cdecl _invalid_parameter(wstr wstr wstr long long)
 @ extern _iob
 # stub _isalnum_l
 # stub _isalpha_l
@@ -500,9 +500,9 @@
 # stub _ismbbkalnum_l
 @ cdecl _ismbbkana(long)
 # stub _ismbbkana_l
-@ stub _ismbbkprint #(long)
+@ cdecl _ismbbkprint(long)
 # stub _ismbbkprint_l
-@ stub _ismbbkpunct #(long)
+@ cdecl _ismbbkpunct(long)
 # stub _ismbbkpunct_l
 @ cdecl _ismbblead(long)
 # stub _ismbblead_l
@@ -602,7 +602,7 @@
 @ cdecl _mbbtombc(long)
 # stub _mbbtombc_l
 @ cdecl _mbbtype(long long)
-# extern _mbcasemap
+@ extern _mbcasemap
 @ cdecl _mbccpy (str str)
 # stub _mbccpy_l
 # stub _mbccpy_s
@@ -757,9 +757,9 @@
 @ cdecl _open_osfhandle(long long)
 @ extern _osplatform _osplatform
 @ extern _osver _osver
-@ stub _outp #(long long)
-@ stub _outpd #(long long)
-@ stub _outpw #(long long)
+@ cdecl _outp(long long)
+@ cdecl _outpd(long long)
+@ cdecl _outpw(long long)
 @ cdecl _pclose (ptr)
 @ extern _pctype _pctype
 @ extern _pgmptr _pgmptr
@@ -1091,7 +1091,7 @@
 # stub _wmktemp_s
 @ varargs _wopen(wstr long)
 # stub _woutput_s
-@ stub _wperror #(wstr)
+@ cdecl _wperror(wstr)
 @ extern _wpgmptr
 @ cdecl _wpopen (wstr wstr)
 # stub _wprintf_l

Modified: branches/cmake-bringup/dll/win32/msvcrt/msvcrt_stubs.c
URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/dll/win32/msvcrt/msvcrt_stubs.c?rev=49684&r1=49683&r2=49684&view=diff
==============================================================================
--- branches/cmake-bringup/dll/win32/msvcrt/msvcrt_stubs.c [iso-8859-1] (original)
+++ branches/cmake-bringup/dll/win32/msvcrt/msvcrt_stubs.c [iso-8859-1] Sun Nov 21 13:08:55 2010
@@ -4,6 +4,91 @@
 #include "winbase.h"
 #include "wine/config.h"
 #include "wine/exception.h"
+
+#define NDEBUG
+#include <debug.h>
+
+int __get_app_type()
+{
+    UNIMPLEMENTED;
+    return 0;
+}
+
+int _fileinfo;
+
+void *
+__p__fileinfo()
+{
+    return &_fileinfo;
+}
+
+unsigned char _mbcasemap[1];
+
+void *
+__p__mbcasemap()
+{
+    return _mbcasemap;
+}
+
+int _atodbl(
+   void * value,
+   char * str)
+{
+    UNIMPLEMENTED;
+    return 0;
+}
+
+int _ismbbkprint(
+   unsigned int c)
+{
+    UNIMPLEMENTED;
+    return 0;
+}
+
+int _inp( 
+   unsigned short port)
+{
+    UNIMPLEMENTED;
+    return 0;
+}
+
+unsigned short _inpw( 
+   unsigned short port)
+{
+    UNIMPLEMENTED;
+    return 0;
+}
+
+unsigned long _inpd( 
+   unsigned short port)
+{
+    return 0;
+}
+
+
+int _outp(
+   unsigned short port,
+   int databyte)
+{
+    UNIMPLEMENTED;
+    return 0;
+}
+
+unsigned short _outpw(
+   unsigned short port,
+   unsigned short dataword)
+{
+    UNIMPLEMENTED;
+    return 0;
+}
+
+unsigned long _outpd(
+   unsigned short port,
+   unsigned long dataword)
+{
+    UNIMPLEMENTED;
+    return 0;
+}
 
 void __wine_spec_unimplemented_stub( const char *module, const char *function )
 {
@@ -16,26 +101,18 @@
 
 static const char __wine_spec_file_name[] = "msvcrt.dll";
 
-void __wine_stub_msvcrt_dll_107(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "__get_app_type"); }
 void __wine_stub_msvcrt_dll_115(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "__lc_collate"); }
-void __wine_stub_msvcrt_dll_132(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "__p__fileinfo"); }
-void __wine_stub_msvcrt_dll_135(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "__p__mbcasemap"); }
 void __wine_stub_msvcrt_dll_140(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "__p__pwctype"); }
 void __wine_stub_msvcrt_dll_151(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "__pxcptinfoptrs"); }
-void __wine_stub_msvcrt_dll_189(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_atodbl"); }
 void __wine_stub_msvcrt_dll_267(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_fpieee_flt"); }
 void __wine_stub_msvcrt_dll_288(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_get_terminate"); }
 void __wine_stub_msvcrt_dll_289(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_get_unexpected"); }
 void __wine_stub_msvcrt_dll_301(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_getsystime"); }
 void __wine_stub_msvcrt_dll_311(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_heapused"); }
-void __wine_stub_msvcrt_dll_317(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_inp"); }
-void __wine_stub_msvcrt_dll_318(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_inpd"); }
-void __wine_stub_msvcrt_dll_319(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_inpw"); }
 void __wine_stub_msvcrt_dll_323(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbalnum"); }
 void __wine_stub_msvcrt_dll_324(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbalpha"); }
 void __wine_stub_msvcrt_dll_325(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbgraph"); }
 void __wine_stub_msvcrt_dll_326(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbkalnum"); }
-void __wine_stub_msvcrt_dll_328(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbkprint"); }
 void __wine_stub_msvcrt_dll_329(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbkpunct"); }
 void __wine_stub_msvcrt_dll_331(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbprint"); }
 void __wine_stub_msvcrt_dll_332(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_ismbbpunct"); }
@@ -49,9 +126,6 @@
 void __wine_stub_msvcrt_dll_409(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_mbsnbicoll"); }
 void __wine_stub_msvcrt_dll_414(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_mbsncoll"); }
 void __wine_stub_msvcrt_dll_418(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_mbsnicoll"); }
-void __wine_stub_msvcrt_dll_447(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_outp"); }
-void __wine_stub_msvcrt_dll_448(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_outpd"); }
-void __wine_stub_msvcrt_dll_449(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_outpw"); }
 void __wine_stub_msvcrt_dll_480(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_setsystime"); }
 void __wine_stub_msvcrt_dll_505(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_strncoll"); }
 void __wine_stub_msvcrt_dll_507(void) { __wine_spec_unimplemented_stub(__wine_spec_file_name, "_strnicoll"); }




More information about the Ros-diffs mailing list