Author: tkreuzer
Date: Wed Apr 18 17:21:18 2012
New Revision: 56363
URL:
http://svn.reactos.org/svn/reactos?rev=56363&view=rev
Log:
[TESTS]
Add a test framework for crt (ntdll, crtdll, msvcrt and static)
Added:
trunk/rostests/apitests/crt/ (with props)
trunk/rostests/apitests/crt/CMakeLists.txt (with props)
trunk/rostests/apitests/crt/crtdll_crt_apitest.cmake (with props)
trunk/rostests/apitests/crt/msvcrt_crt_apitest.cmake (with props)
trunk/rostests/apitests/crt/msvcrt_mini.spec (with props)
trunk/rostests/apitests/crt/ntdll_crt_apitest.cmake (with props)
trunk/rostests/apitests/crt/strcpy.c (with props)
trunk/rostests/apitests/crt/testlist.c (with props)
Modified:
trunk/rostests/apitests/CMakeLists.txt
Modified: trunk/rostests/apitests/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/CMakeLists.txt?r…
==============================================================================
--- trunk/rostests/apitests/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/rostests/apitests/CMakeLists.txt [iso-8859-1] Wed Apr 18 17:21:18 2012
@@ -2,6 +2,7 @@
add_library(apitest apitest.c)
add_subdirectory(advapi32)
+add_subdirectory(crt)
add_subdirectory(dciman32)
add_subdirectory(gdi32)
add_subdirectory(msvcrt)
Propchange: trunk/rostests/apitests/crt/
------------------------------------------------------------------------------
--- bugtraq:logregex (added)
+++ bugtraq:logregex Wed Apr 18 17:21:18 2012
@@ -1,0 +1,2 @@
+([Ii]ssue|[Bb]ug)s? #?(\d+)(,? ?#?(\d+))*(,? ?(and |or )?#?(\d+))?
+(\d+)
Propchange: trunk/rostests/apitests/crt/
------------------------------------------------------------------------------
bugtraq:message = See issue #%BUGID% for more details.
Propchange: trunk/rostests/apitests/crt/
------------------------------------------------------------------------------
bugtraq:url =
http://www.reactos.org/bugzilla/show_bug.cgi?id=%BUGID%
Propchange: trunk/rostests/apitests/crt/
------------------------------------------------------------------------------
tsvn:logminsize = 10
Added: trunk/rostests/apitests/crt/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/crt/CMakeLists.t…
==============================================================================
--- trunk/rostests/apitests/crt/CMakeLists.txt (added)
+++ trunk/rostests/apitests/crt/CMakeLists.txt [iso-8859-1] Wed Apr 18 17:21:18 2012
@@ -1,0 +1,6 @@
+
+spec2def(msvcrt_mini.dll msvcrt_mini.spec ADD_IMPORTLIB)
+remove_definitions(-D_DLL -D__USE_CRTIMP)
+include(ntdll_crt_apitest.cmake)
+include(crtdll_crt_apitest.cmake)
+include(msvcrt_crt_apitest.cmake)
Propchange: trunk/rostests/apitests/crt/CMakeLists.txt
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/rostests/apitests/crt/crtdll_crt_apitest.cmake
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/crt/crtdll_crt_a…
==============================================================================
--- trunk/rostests/apitests/crt/crtdll_crt_apitest.cmake (added)
+++ trunk/rostests/apitests/crt/crtdll_crt_apitest.cmake [iso-8859-1] Wed Apr 18 17:21:18
2012
@@ -1,0 +1,561 @@
+
+list(APPEND SOURCE_CRTDLL
+# _CIacos.c
+# _CIasin.c
+# _CIatan.c
+# _CIatan2.c
+# _CIcosh.c
+# _CIcos.c
+# _CIexp.c
+# _CIfmod.c
+# _CIlog.c
+# _CIlog10.c
+# _CIpow.c
+# _CIsin.c
+# _CIsinh.c
+# _CIsqrt.c
+# _CItan.c
+# _CItanh.c
+# _HUGE_dll.c
+# _XcptFilter.c
+# __GetMainArgs.c
+# __argc_dll.c
+# __argv_dll.c
+# __dllonexit.c
+# __doserrno.c
+# __fpecode.c
+# __isascii.c
+# __iscsym.c
+# __iscsymf.c
+# __mb_cur_max_dll.c
+# __pxcptinfoptrs.c
+# __threadhandle.c
+# __threadid.c
+# __toascii.c
+# _abnormal_termination.c
+# _access.c
+# _acmdln_dll.c
+# _aexit_rtn_dll.c
+# _amsg_exit.c
+# _assert.c
+# _basemajor_dll.c
+# _baseminor_dll.c
+# _baseversion_dll.c
+# _beep.c
+# _beginthread.c
+# _c_exit.c
+# _cabs.c
+# _cexit.c
+# _cgets.c
+# _chdir.c
+# _chdrive.c
+# _chgsign.c
+# _chmod.c
+# _chsize.c
+# _clearfp.c
+# _close.c
+# _commit.c
+# _commode_dll.c
+# _control87.c
+# _controlfp.c
+# _copysign.c
+# _cprintf.c
+# _cpumode_dll.c
+# _cputs.c
+# _creat.c
+# _cscanf.c
+# _ctype.c
+# _cwait.c
+# _daylight_dll.c
+# _dup.c
+# _dup2.c
+# _ecvt.c
+# _endthread.c
+# _environ_dll.c
+# _eof.c
+# _errno.c
+# _except_handler2.c
+# _execl.c
+# _execle.c
+# _execlp.c
+# _execlpe.c
+# _execv.c
+# _execve.c
+# _execvp.c
+# _execvpe.c
+# _exit.c
+# _expand.c
+# _fcloseall.c
+# _fcvt.c
+# _fdopen.c
+# _fgetchar.c
+# _fgetwchar.c
+# _filbuf.c
+# _fileinfo_dll.c
+# _filelength.c
+# _fileno.c
+# _findclose.c
+# _findfirst.c
+# _findnext.c
+# _finite.c
+# _flsbuf.c
+# _flushall.c
+# _fmode_dll.c
+# _fpclass.c
+# _fpieee_flt.c
+# _fpreset.c
+# _fputchar.c
+# _fputwchar.c
+# _fsopen.c
+# _fstat.c
+# _ftime.c
+# _ftol.c
+# _fullpath.c
+# _futime.c
+# _gcvt.c
+# _get_osfhandle.c
+# _getch.c
+# _getche.c
+# _getcwd.c
+# _getdcwd.c
+# _getdiskfree.c
+# _getdllprocaddr.c
+# _getdrive.c
+# _getdrives.c
+# _getpid.c
+# _getsystime.c
+# _getw.c
+# _global_unwind2.c
+# _heapchk.c
+# _heapmin.c
+# _heapset.c
+# _heapwalk.c
+# _hypot.c
+# _initterm.c
+# _iob.c
+# _isatty.c
+# _isctype.c
+# _ismbbalnum.c
+# _ismbbalpha.c
+# _ismbbgraph.c
+# _ismbbkalnum.c
+# _ismbbkana.c
+# _ismbbkpunct.c
+# _ismbblead.c
+# _ismbbprint.c
+# _ismbbpunct.c
+# _ismbbtrail.c
+# _ismbcalpha.c
+# _ismbcdigit.c
+# _ismbchira.c
+# _ismbckata.c
+# _ismbcl0.c
+# _ismbcl1.c
+# _ismbcl2.c
+# _ismbclegal.c
+# _ismbclower.c
+# _ismbcprint.c
+# _ismbcspace.c
+# _ismbcsymbol.c
+# _ismbcupper.c
+# _ismbslead.c
+# _ismbstrail.c
+# _isnan.c
+# _itoa.c
+# _itow.c
+# _j0.c
+# _j1.c
+# _jn.c
+# _kbhit.c
+# _lfind.c
+# _loaddll.c
+# _local_unwind2.c
+# _locking.c
+# _logb.c
+# _lrotl.c
+# _lrotr.c
+# _lsearch.c
+# _lseek.c
+# _ltoa.c
+# _ltow.c
+# _makepath.c
+# _matherr.c
+# _mbbtombc.c
+# _mbbtype.c
+# _mbccpy.c
+# _mbcjistojms.c
+# _mbcjmstojis.c
+# _mbclen.c
+# _mbctohira.c
+# _mbctokata.c
+# _mbctolower.c
+# _mbctombb.c
+# _mbctoupper.c
+# _mbctype.c
+# _mbsbtype.c
+# _mbscat.c
+# _mbschr.c
+# _mbscmp.c
+# _mbscpy.c
+# _mbscspn.c
+# _mbsdec.c
+# _mbsdup.c
+# _mbsicmp.c
+# _mbsinc.c
+# _mbslen.c
+# _mbslwr.c
+# _mbsnbcat.c
+# _mbsnbcmp.c
+# _mbsnbcnt.c
+# _mbsnbcpy.c
+# _mbsnbicmp.c
+# _mbsnbset.c
+# _mbsncat.c
+# _mbsnccnt.c
+# _mbsncmp.c
+# _mbsncpy.c
+# _mbsnextc.c
+# _mbsnicmp.c
+# _mbsninc.c
+# _mbsnset.c
+# _mbspbrk.c
+# _mbsrchr.c
+# _mbsrev.c
+# _mbsset.c
+# _mbsspn.c
+# _mbsspnp.c
+# _mbsstr.c
+# _mbstok.c
+# _mbstrlen.c
+# _mbsupr.c
+# _memccpy.c
+# _memicmp.c
+# _mkdir.c
+# _mktemp.c
+# _msize.c
+# _nextafter.c
+# _onexit.c
+# _open.c
+# _open_osfhandle.c
+# _osmajor_dll.c
+# _osminor_dll.c
+# _osmode_dll.c
+# _osver_dll.c
+# _osversion_dll.c
+# _pclose.c
+# _pctype_dll.c
+# _pgmptr_dll.c
+# _pipe.c
+# _popen.c
+# _purecall.c
+# _putch.c
+# _putenv.c
+# _putw.c
+# _pwctype_dll.c
+# _read.c
+# _rmdir.c
+# _rmtmp.c
+# _rotl.c
+# _rotr.c
+# _scalb.c
+# _searchenv.c
+# _seterrormode.c
+# _setjmp.c
+# _setmode.c
+# _setsystime.c
+# _sleep.c
+# _snprintf.c
+# _snwprintf.c
+# _sopen.c
+# _spawnl.c
+# _spawnle.c
+# _spawnlp.c
+# _spawnlpe.c
+# _spawnv.c
+# _spawnve.c
+# _spawnvp.c
+# _spawnvpe.c
+# _splitpath.c
+# _stat.c
+# _statusfp.c
+# _strcmpi.c
+# _strdate.c
+# _strdec.c
+# _strdup.c
+# _strerror.c
+# _stricmp.c
+# _stricoll.c
+# _strinc.c
+# _strlwr.c
+# _strncnt.c
+# _strnextc.c
+# _strnicmp.c
+# _strninc.c
+# _strnset.c
+# _strrev.c
+# _strset.c
+# _strspnp.c)
+# _strtime.c
+# _strupr.c
+# _swab.c
+# _sys_errlist.c
+# _sys_nerr_dll.c
+# _tell.c
+# _tempnam.c
+# _timezone_dll.c
+# _tolower.c
+# _toupper.c
+# _tzname.c
+# _tzset.c
+# _ultoa.c
+# _ultow.c
+# _umask.c
+# _ungetch.c
+# _unlink.c
+# _unloaddll.c
+# _utime.c
+# _vsnprintf.c
+# _vsnwprintf.c
+# _wcsdup.c
+# _wcsicmp.c
+# _wcsicoll.c
+# _wcslwr.c
+# _wcsnicmp.c
+# _wcsnset.c
+# _wcsrev.c
+# _wcsset.c
+# _wcsupr.c
+# _winmajor_dll.c
+# _winminor_dll.c
+# _winver_dll.c
+# _write.c
+# _wtoi.c
+# _wtol.c
+# _y0.c
+# _y1.c
+# _yn.c
+# abort.c
+# abs.c
+# acos.c
+# asctime.c
+# asin.c
+# atan.c
+# atan2.c
+# atexit.c
+# atof.c
+# atoi.c
+# atol.c
+# bsearch.c
+# calloc.c
+# ceil.c
+# clearerr.c
+# clock.c
+# cos.c
+# cosh.c
+# ctime.c
+# difftime.c
+# div.c
+# exit.c
+# exp.c
+# fabs.c
+# fclose.c
+# feof.c
+# ferror.c
+# fflush.c
+# fgetc.c
+# fgetpos.c
+# fgets.c
+# fgetwc.c
+# floor.c
+# fmod.c
+# fopen.c
+# fprintf.c
+# fputc.c
+# fputs.c
+# fputwc.c
+# fread.c
+# free.c
+# freopen.c
+# frexp.c
+# fscanf.c
+# fseek.c
+# fsetpos.c
+# ftell.c
+# fwprintf.c
+# fwrite.c
+# fwscanf.c
+# getc.c
+# getchar.c
+# getenv.c
+# gets.c
+# gmtime.c
+# is_wctype.c
+# isalnum.c
+# isalpha.c
+# iscntrl.c
+# isdigit.c
+# isgraph.c
+# isleadbyte.c
+# islower.c
+# isprint.c
+# ispunct.c
+# isspace.c
+# isupper.c
+# iswalnum.c
+# iswalpha.c
+# iswascii.c
+# iswcntrl.c
+# iswctype.c
+# iswdigit.c
+# iswgraph.c
+# iswlower.c
+# iswprint.c
+# iswpunct.c
+# iswspace.c
+# iswupper.c
+# iswxdigit.c
+# isxdigit.c
+# labs.c
+# ldexp.c
+# ldiv.c
+# localeconv.c
+# localtime.c
+# log.c
+# log10.c
+# longjmp.c
+# malloc.c
+# mblen.c
+# mbstowcs.c
+# mbtowc.c
+# memchr.c
+# memcmp.c
+# memcpy.c
+# memmove.c
+# memset.c
+# mktime.c
+# modf.c
+# perror.c
+# pow.c
+# printf.c
+# putc.c
+# putchar.c
+# puts.c
+# qsort.c
+# raise.c
+# rand.c
+# realloc.c
+# remove.c
+# rename.c
+# rewind.c
+# scanf.c
+# setbuf.c
+# setlocale.c
+# setvbuf.c
+# signal.c
+# sin.c
+# sinh.c
+# sprintf.c
+# sqrt.c
+# srand.c
+# sscanf.c
+# strcat.c
+# strchr.c
+# strcmp.c
+# strcoll.c
+ strcpy.c
+# strcspn.c
+# strerror.c
+# strftime.c
+# strlen.c
+# strncat.c
+# strncmp.c
+# strncpy.c
+# strpbrk.c
+# strrchr.c
+# strspn.c
+# strstr.c
+# strtod.c
+# strtok.c
+# strtol.c
+# strtoul.c
+# strxfrm.c
+# swprintf.c
+# swscanf.c
+# system.c
+# tan.c
+# tanh.c
+# time.c
+# tmpfile.c
+# tmpnam.c
+# tolower.c
+# toupper.c
+# towlower.c
+# towupper.c
+# ungetc.c
+# ungetwc.c
+# vfprintf.c
+# vfwprintf.c
+# vprintf.c
+# vsprintf.c
+# vswprintf.c
+# vwprintf.c
+# wcscat.c
+# wcschr.c
+# wcscmp.c
+# wcscoll.c
+# wcscpy.c
+# wcscspn.c
+# wcsftime.c
+# wcslen.c
+# wcsncat.c
+# wcsncmp.c
+# wcsncpy.c
+# wcspbrk.c
+# wcsrchr.c
+# wcsspn.c
+# wcsstr.c
+# wcstod.c
+# wcstok.c
+# wcstol.c
+# wcstombs.c
+# wcstoul.c
+# wcsxfrm.c
+# wctomb.c
+# wprintf.c
+# wscanf.c
+)
+
+if (ARCH MATCHES i386)
+ list(APPEND SOURCE_CRTDLL
+ # _CIpow.c
+ # _ftol.c
+ # _alldiv.c
+ # _alldvrm.c
+ # _allmul.c
+ # _allrem.c
+ # _allshl.c
+ # _allshr.c
+ # _alloca_probe.c
+ # _aulldiv.c
+ # _aulldvrm.c
+ # _aullrem.c
+ # _aullshr.c
+ # _chkstk.c
+ )
+elseif (ARCH MATCHES amd64)
+ list(APPEND SOURCE_CRTDLL
+ # __C_specific_handler
+ # _setjmp.c
+ # _setjmpex.c
+ # _local_unwind.c
+ # longjmp.c
+ )
+endif()
+
+
+add_executable(crtdll_crt_apitest testlist.c ${SOURCE_CRTDLL})
+add_target_compile_definitions(crtdll_crt_apitest _DLL __USE_CRTIMP)
+target_link_libraries(crtdll_crt_apitest wine ${PSEH_LIB})
+set_module_type(crtdll_crt_apitest win32cui)
+add_importlibs(crtdll_crt_apitest crtdll msvcrt_mini kernel32)
+add_cd_file(TARGET crtdll_crt_apitest DESTINATION reactos/bin FOR all)
Propchange: trunk/rostests/apitests/crt/crtdll_crt_apitest.cmake
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/rostests/apitests/crt/msvcrt_crt_apitest.cmake
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/crt/msvcrt_crt_a…
==============================================================================
--- trunk/rostests/apitests/crt/msvcrt_crt_apitest.cmake (added)
+++ trunk/rostests/apitests/crt/msvcrt_crt_apitest.cmake [iso-8859-1] Wed Apr 18 17:21:18
2012
@@ -1,0 +1,1384 @@
+
+list(APPEND SOURCE_MSVCRT
+# _CrtCheckMemory.c
+# _CrtDbgBreak.c
+# _CrtDbgReport.c
+# _CrtDbgReportV.c
+# _CrtDbgReportW.c
+# _CrtDbgReportWV.c
+# _CrtDoForAllClientObjects.c
+# _CrtDumpMemoryLeaks.c
+# _CrtIsMemoryBlock.c
+# _CrtIsValidHeapPointer.c
+# _CrtIsValidPointer.c
+# _CrtMemCheckpoint.c
+# _CrtMemDifference.c
+# _CrtMemDumpAllObjectsSince.c
+# _CrtMemDumpStatistics.c
+# _CrtReportBlockType.c
+# _CrtSetAllocHook.c
+# _CrtSetBreakAlloc.c
+# _CrtSetDbgBlockType.c
+# _CrtSetDbgFlag.c
+# _CrtSetDumpClient.c
+# _CrtSetReportFile.c
+# _CrtSetReportHook.c
+# _CrtSetReportHook2.c
+# _CrtSetReportMode.c
+# _CxxThrowException.c
+# _Getdays.c
+# _Getmonths.c
+# _Gettnames.c
+# _HUGE.c
+# _Strftime.c
+# _XcptFilter.c
+# __CppXcptFilter.c
+# __CxxCallUnwindDelDtor.c
+# __CxxCallUnwindDtor.c
+# __CxxCallUnwindVecDtor.c
+# __CxxDetectRethrow.c
+# __CxxExceptionFilter.c
+# __CxxQueryExceptionSize.c
+# __CxxRegisterExceptionObject
+# __CxxUnregisterExceptionObject
+# __DestructExceptionObject
+# __RTCastToVoid.c MSVCRT___RTCastToVoid
+# __RTDynamicCast.c MSVCRT___RTDynamicCast
+# __RTtypeid.c MSVCRT___RTtypeid
+# __STRINGTOLD.c
+# ___lc_codepage_func.c
+# ___lc_collate_cp_func.c
+# ___lc_handle_func.c
+# ___mb_cur_max_func.c MSVCRT___mb_cur_max_func
+# ___setlc_active_func.c
+# ___unguarded_readlc_active_add_func.c
+# __argc
+# __argv
+# __badioinfo __badioinfo
+# __crtCompareStringA.c kernel32.CompareStringA
+# __crtCompareStringW.c kernel32.CompareStringW
+# __crtGetLocaleInfoW.c kernel32.GetLocaleInfoW
+# __crtGetStringTypeW.c
+# __crtLCMapStringA.c
+# __crtLCMapStringW
+# __daylight.c __p__daylight
+# __dllonexit.c
+# __doserrno.c
+# __fpecode.c
+# __get_app_type.c
+# __getmainargs.c
+# __initenv
+# __iob_func.c
+# __isascii.c
+# __iscsym.c
+# __iscsymf.c
+# __lc_codepage MSVCRT___lc_codepage
+# __lc_collate # not in XP / 7
+# __lc_collate_cp MSVCRT___lc_collate_cp
+# __lc_handle MSVCRT___lc_handle
+# __lconv_init.c
+# __libm_sse2_acos
+# __libm_sse2_acosf
+# __libm_sse2_asin
+# __libm_sse2_asinf
+# __libm_sse2_atan
+# __libm_sse2_atan2
+# __libm_sse2_atanf
+# __libm_sse2_cos
+# __libm_sse2_cosf
+# __libm_sse2_exp
+# __libm_sse2_expf
+# __libm_sse2_log
+# __libm_sse2_log10
+# __libm_sse2_log10f
+# __libm_sse2_logf
+# __libm_sse2_pow
+# __libm_sse2_powf
+# __libm_sse2_sin
+# __libm_sse2_sinf
+# __libm_sse2_tan
+# __libm_sse2_tanf
+# __mb_cur_max
+# __pctype_func.c
+# __pioinfo
+# __pwctype_func.c
+# __pxcptinfoptrs.c
+# __set_app_type.c
+# __setlc_active
+# __setusermatherr.c
+# __strncnt
+# __threadhandle.c kernel32.GetCurrentThread
+# __threadid.c kernel32.GetCurrentThreadId
+# __toascii.c
+# __uncaught_exception.c
+# __unDName.c
+# __unDNameEx.c
+# __unguarded_readlc_active
+# __wargv __wargv
+# __wcserror.c
+# __wcserror_s.c
+# __wcsncnt
+# __wgetmainargs.c
+# __winitenv
+# _abnormal_termination.c
+# _abs64
+# _access.c
+# _access_s.c
+# _acmdln
+# _aexit_rtn
+# _aligned_free.c
+# _aligned_free_dbg
+# _aligned_malloc.c
+# _aligned_malloc_dbg
+# _aligned_offset_malloc.c
+# _aligned_offset_malloc_dbg
+# _aligned_offset_realloc.c
+# _aligned_offset_realloc_dbg
+# _aligned_realloc.c
+# _aligned_realloc_dbg
+# _amsg_exit.c
+# _assert.c
+# _atodbl.c
+# _atodbl_l
+# _atof_l.c
+# _atoflt_l
+# -ret64 _atoi64.c
+# _atoi64_l
+# _atoi_l
+# _atol_l
+# _atoldbl.c
+# _atoldbl_l
+# _beep.c
+# _beginthread.c
+# _beginthreadex.c
+# _c_exit.c
+# _cabs.c
+# _callnewh.c
+# _calloc_dbg
+# _cexit.c
+# _cgets.c
+# _cgets_s
+# _cgetws
+# _cgetws_s
+# _chdir.c
+# _chdrive.c
+# _chgsign.c
+# _chmod.c
+# _chsize.c
+# _chsize_s
+# _chvalidator
+# _chvalidator_l
+# _clearfp.c
+# _close.c
+# _commit.c
+# _commode
+# _control87.c
+# _controlfp.c
+# _controlfp_s.c
+# _copysign.c
+# _cprintf.c
+# _cprintf_l
+# _cprintf_p
+# _cprintf_p_l
+# _cprintf_s
+# _cprintf_s_l
+# _cputs.c
+# _cputws
+# _creat.c
+# _crtAssertBusy
+# _crtBreakAlloc
+# _crtDbgFlag
+# _cscanf.c
+# _cscanf_l.c
+# _cscanf_s.c
+# _cscanf_s_l.c
+# _ctime32.c
+# _ctime32_s.c
+# _ctime64.c
+# _ctime64_s.c
+# _ctype
+# _cwait.c
+# _cwprintf.c
+# _cwprintf_l
+# _cwprintf_p
+# _cwprintf_p_l
+# _cwprintf_s
+# _cwprintf_s_l
+# _cwscanf.c
+# _cwscanf_l.c
+# _cwscanf_s.c
+# _cwscanf_s_l.c
+# _daylight
+# _difftime32.c
+# _difftime64.c
+# _dstbias
+# _dup.c
+# _dup2.c
+# _ecvt.c
+# _ecvt_s
+# _endthread.c
+# _endthreadex.c
+# _environ
+# _eof.c
+# _errno.c
+# _execl.c
+# _execle.c
+# _execlp.c
+# _execlpe.c
+# _execv.c
+# _execve.c
+# _execvp.c
+# _execvpe.c
+# _exit.c
+# _expand.c
+# _expand_dbg
+# _fcloseall.c
+# _fcvt.c
+# _fcvt_s
+# _fdopen.c
+# _fgetchar.c
+# _fgetwchar.c
+# _filbuf.c
+# _fileinfo
+# _filelength.c
+# -ret64 _filelengthi64.c
+# _fileno.c
+# _findclose.c
+# _findfirst.c
+# _findfirst64.c
+# _findfirsti64.c
+# _findnext.c
+# _findnext64.c
+# _findnexti64.c
+# _finite.c
+# _flsbuf.c
+# _flushall.c
+# _fmode
+# _fpclass.c
+# _fpieee_flt.c
+# _fpreset.c
+# _fprintf_l
+# _fprintf_p
+# _fprintf_p_l
+# _fprintf_s_l
+# _fputchar.c
+# _fputwchar.c
+# _free_dbg
+# _freea
+# _freea_s
+# _fscanf_l
+# _fscanf_l.c
+# _fscanf_s_l.c
+# _fseeki64.c
+# _fsopen.c
+# _fstat.c
+# _fstat64.c
+# _fstati64.c
+# -ret64 _ftelli64.c
+# _ftime.c
+# _ftime32.c
+# _ftime32_s
+# _ftime64.c
+# _ftime64_s
+# _ftol2_sse_excpt
+# _fullpath.c
+# _fullpath_dbg
+# _futime.c
+# _futime32.c
+# _futime64.c
+# _fwprintf_l
+# _fwprintf_p
+# _fwprintf_p_l
+# _fwprintf_s_l
+# _fwscanf_l.c
+# _fwscanf_s_l.c
+# _gcvt.c
+# _gcvt_s
+# _get_doserrno.c
+# _get_environ
+# _get_errno.c
+# _get_fileinfo
+# _get_fmode
+# _get_heap_handle.c
+# _get_osfhandle.c
+# _get_osplatform.c
+# _get_osver
+# _get_output_format.c
+# _get_pgmptr.c
+# _get_sbh_threshold.c
+# _get_wenviron
+# _get_winmajor
+# _get_winminor
+# _get_winver
+# _get_wpgmptr.c
+# _get_terminate.c
+# _get_tzname.c
+# _get_unexpected.c
+# _getch.c
+# _getche.c
+# _getcwd.c
+# _getdcwd.c
+# _getdiskfree.c
+# _getdllprocaddr.c
+# _getdrive.c
+# _getdrives.c kernel32.GetLogicalDrives
+# _getmaxstdio.c
+# _getmbcp.c
+# _getpid.c kernel32.GetCurrentProcessId
+# _getsystime.c
+# _getw.c
+# _getwch
+# _getwche
+# _getws.c
+# _gmtime32.c
+# _gmtime32_s.c
+# _gmtime64.c
+# _gmtime64_s.c
+# _heapadd.c
+# _heapchk.c
+# _heapmin.c
+# _heapset.c
+# _heapused.c
+# _heapwalk.c
+# _hypot.c
+# _i64toa.c
+# _i64toa_s.c
+# _i64tow.c
+# _i64tow_s.c
+# _initterm.c
+# _initterm_e.c
+# _invalid_parameter.c
+# _iob
+# _isalnum_l
+# _isalpha_l
+# _isatty.c
+# _iscntrl_l
+# _isctype.c
+# _isctype_l
+# _isdigit_l
+# _isgraph_l
+# _isleadbyte_l
+# _islower_l
+# _ismbbalnum.c
+# _ismbbalnum_l
+# _ismbbalpha.c
+# _ismbbalpha_l
+# _ismbbgraph.c
+# _ismbbgraph_l
+# _ismbbkalnum.c
+# _ismbbkalnum_l
+# _ismbbkana.c
+# _ismbbkana_l
+# _ismbbkprint.c
+# _ismbbkprint_l
+# _ismbbkpunct.c
+# _ismbbkpunct_l
+# _ismbblead.c
+# _ismbblead_l
+# _ismbbprint.c
+# _ismbbprint_l
+# _ismbbpunct.c
+# _ismbbpunct_l
+# _ismbbtrail.c
+# _ismbbtrail_l
+# _ismbcalnum.c
+# _ismbcalnum_l
+# _ismbcalpha.c
+# _ismbcalpha_l
+# _ismbcdigit.c
+# _ismbcdigit_l
+# _ismbcgraph.c
+# _ismbcgraph_l
+# _ismbchira.c
+# _ismbchira_l
+# _ismbckata.c
+# _ismbckata_l
+# _ismbcl0.c
+# _ismbcl0_l
+# _ismbcl1.c
+# _ismbcl1_l
+# _ismbcl2.c
+# _ismbcl2_l
+# _ismbclegal.c
+# _ismbclegal_l
+# _ismbclower.c
+# _ismbclower_l
+# _ismbcprint.c
+# _ismbcprint_l
+# _ismbcpunct.c
+# _ismbcpunct_l
+# _ismbcspace.c
+# _ismbcspace_l
+# _ismbcsymbol.c
+# _ismbcsymbol_l
+# _ismbcupper.c
+# _ismbcupper_l
+# _ismbslead.c
+# _ismbslead_l
+# _ismbstrail.c
+# _ismbstrail_l
+# _isnan.c
+# _isprint_l
+# _isspace_l
+# _isupper_l
+# _iswalnum_l
+# _iswalpha_l
+# _iswcntrl_l
+# _iswctype_l
+# _iswdigit_l
+# _iswgraph_l
+# _iswlower_l
+# _iswprint_l
+# _iswpunct_l
+# _iswspace_l
+# _iswupper_l
+# _iswxdigit_l
+# _isxdigit_l
+# _itoa.c
+# _itoa_s.c
+# _itow.c
+# _itow_s.c
+# _j0.c
+# _j1.c
+# _jn.c
+# _kbhit.c
+# _lfind.c
+# _lfind_s
+# _loaddll.c
+# _localtime32.c
+# _localtime32_s.c
+# _localtime64.c
+# _localtime64_s.c
+# _lock.c
+# _locking.c
+# _logb.c
+# _longjmpex.c longjmp
+# _lrotl.c
+# _lrotr.c
+# _lsearch.c
+# _lsearch_s
+# _lseek.c
+# -ret64 _lseeki64.c
+# _ltoa.c
+# _ltoa_s.c
+# _ltow.c
+# _ltow_s.c
+# _makepath.c
+# _makepath_s.c
+# _malloc_dbg
+# _mbbtombc.c
+# _mbbtombc_l
+# _mbbtype.c
+# _mbcasemap
+# _mbccpy .c
+# _mbccpy_l
+# _mbccpy_s
+# _mbccpy_s_l
+# _mbcjistojms.c
+# _mbcjistojms_l
+# _mbcjmstojis.c
+# _mbcjmstojis_l
+# _mbclen.c
+# _mbclen_l
+# _mbctohira.c
+# _mbctohira_l
+# _mbctokata.c
+# _mbctokata_l
+# _mbctolower.c
+# _mbctolower_l
+# _mbctombb.c
+# _mbctombb_l
+# _mbctoupper.c
+# _mbctoupper_l
+# _mbctype
+# _mblen_l
+# _mbsbtype.c
+# _mbsbtype_l
+# _mbscat.c
+# _mbscat_s
+# _mbscat_s_l
+# _mbschr.c
+# _mbschr_l
+# _mbscmp.c
+# _mbscmp_l
+# _mbscoll.c
+# _mbscoll_l
+# _mbscpy.c
+# _mbscpy_s
+# _mbscpy_s_l
+# _mbscspn.c
+# _mbscspn_l
+# _mbsdec.c
+# _mbsdec_l
+# _mbsdup.c
+# _strdup_dbg
+# _mbsicmp.c
+# _mbsicmp_l
+# _mbsicoll.c
+# _mbsicoll_l
+# _mbsinc.c
+# _mbsinc_l
+# _mbslen.c
+# _mbslen_l
+# _mbslwr.c
+# _mbslwr_l
+# _mbslwr_s
+# _mbslwr_s_l
+# _mbsnbcat.c
+# _mbsnbcat_l
+# _mbsnbcat_s
+# _mbsnbcat_s_l
+# _mbsnbcmp.c
+# _mbsnbcmp_l
+# _mbsnbcnt.c
+# _mbsnbcnt_l
+# _mbsnbcoll.c
+# _mbsnbcoll_l
+# _mbsnbcpy.c
+# _mbsnbcpy_l
+# _mbsnbcpy_s.c
+# _mbsnbcpy_s_l
+# _mbsnbicmp.c
+# _mbsnbicmp_l
+# _mbsnbicoll.c
+# _mbsnbicoll_l
+# _mbsnbset.c
+# _mbsnbset_l
+# _mbsnbset_s
+# _mbsnbset_s_l
+# _mbsncat.c
+# _mbsncat_l
+# _mbsncat_s
+# _mbsncat_s_l
+# _mbsnccnt.c
+# _mbsnccnt_l
+# _mbsncmp.c
+# _mbsncmp_l
+# _mbsncoll.c
+# _mbsncoll_l
+# _mbsncpy.c
+# _mbsncpy_l
+# _mbsncpy_s
+# _mbsncpy_s_l
+# _mbsnextc.c
+# _mbsnextc_l
+# _mbsnicmp.c
+# _mbsnicmp_l
+# _mbsnicoll.c
+# _mbsnicoll_l
+# _mbsninc.c
+# _mbsninc_l
+# _mbsnlen
+# _mbsnlen_l
+# _mbsnset.c
+# _mbsnset_l
+# _mbsnset_s
+# _mbsnset_s_l
+# _mbspbrk.c
+# _mbspbrk_l
+# _mbsrchr.c
+# _mbsrchr_l
+# _mbsrev.c
+# _mbsrev_l
+# _mbsset.c
+# _mbsset_l
+# _mbsset_s
+# _mbsset_s_l
+# _mbsspn.c
+# _mbsspn_l
+# _mbsspnp.c
+# _mbsspnp_l
+# _mbsstr.c
+# _mbsstr_l
+# _mbstok.c
+# _mbstok_l
+# _mbstok_s
+# _mbstok_s_l
+# _mbstowcs_l
+# _mbstowcs_s_l
+# _mbstrlen.c
+# _mbstrlen_l
+# _mbstrnlen
+# _mbstrnlen_l
+# _mbsupr.c
+# _mbsupr_l
+# _mbsupr_s
+# _mbsupr_s_l
+# _mbtowc_l
+# _memccpy.c
+# _memicmp.c
+# _memicmp_l
+# _mkdir.c
+# _mkgmtime.c
+# _mkgmtime32.c
+# _mkgmtime64.c
+# _mktemp.c
+# _mktemp_s
+# _mktime32.c
+# _mktime64.c
+# _msize.c
+# _msize_debug
+# _nextafter.c
+# _onexit.c
+# _open.c
+# _open_osfhandle.c
+# _osplatform
+# _osver
+# _outp.c
+# _outpd.c
+# _outpw.c
+# _pclose.c
+# _pctype
+# _pgmptr
+# _pipe.c
+# _popen.c
+# _printf_l
+# _printf_p
+# _printf_p_l
+# _printf_s_l
+# _purecall.c
+# _putch.c
+# _putenv.c
+# _putenv_s
+# _putw.c
+# _putwch.c
+# _putws.c
+# _pwctype
+# _read.c
+# _realloc_dbg
+# _resetstkoflw.c
+# _rmdir.c
+# _rmtmp.c
+# _rotl.c
+# _rotl64
+# _rotr.c
+# _rotr64
+# _scalb.c
+# _scanf_l.c
+# _scanf_s_l.c
+# _scprintf
+# _scprintf_l
+# _scprintf_p_l
+# _scwprintf
+# _scwprintf_l
+# _scwprintf_p_l
+# _searchenv.c
+# _searchenv_s.c
+# _set_SSE2_enable
+# _set_controlfp
+# _set_doserrno.c
+# _set_errno.c
+# _set_error_mode.c
+# _set_fileinfo
+# _set_fmode
+# _set_output_format
+# _set_sbh_threshold.c
+# _seterrormode.c
+# _setmaxstdio.c
+# _setmbcp.c
+# _setmode.c
+# _setsystime.c
+# _sleep.c
+# _snprintf.c
+# _snprintf_c
+# _snprintf_c_l
+# _snprintf_l
+# _snprintf_s
+# _snprintf_s_l
+# _snscanf
+# _snscanf_l
+# _snscanf_s
+# _snscanf_s_l
+# _snwprintf.c
+# _snwprintf_l
+# _snwprintf_s
+# _snwprintf_s_l
+# _snwscanf
+# _snwscanf_l
+# _snwscanf_s
+# _snwscanf_s_l
+# _sopen.c
+# _sopen_s.c
+# _spawnl.c
+# _spawnle.c
+# _spawnlp.c
+# _spawnlpe.c
+# _spawnv.c
+# _spawnve.c
+# _spawnvp.c
+# _spawnvpe.c
+# _splitpath.c
+# _splitpath_s
+# _sprintf_l
+# _sprintf_p_l
+# _sprintf_s_l
+# _sscanf_l.c
+# _sscanf_s_l.c
+# _stat.c
+# _stat64.c
+# _stati64.c
+# _statusfp.c
+# _strcmpi.c
+# _strcoll_l
+# _strdate.c
+# _strdate_s
+# _strdup.c
+# _strdup_dbg
+# _strerror.c
+# _strerror_s
+# _stricmp.c
+# _stricmp_l
+# _stricoll.c
+# _stricoll_l
+# _strlwr.c
+# _strlwr_l
+# _strlwr_s
+# _strlwr_s_l
+# _strncoll.c
+# _strncoll_l
+# _strnicmp.c
+# _strnicmp_l
+# _strnicoll.c
+# _strnicoll_l
+# _strnset.c
+# _strnset_s
+# _strrev.c
+# _strset.c
+# _strset_s
+# _strtime.c
+# _strtime_s
+# _strtod_l.c
+# _strtoi64.c
+# _strtoi64_l.c
+# _strtol_l
+# _strtoui64.c strtoull
+# _strtoui64_l.c
+# _strtoul_l
+# _strupr.c
+# _strupr_l
+# _strupr_s
+# _strupr_s_l
+# _strxfrm_l
+# _swab.c
+# _swprintf.c swprintf
+# _swprintf_c
+# _swprintf_c_l
+# _swprintf_p_l
+# _swprintf_s_l
+# _swscanf_l.c
+# _swscanf_s_l.c
+# _sys_errlist
+# _sys_nerr
+# _tell.c
+# -ret64 _telli64.c
+# _tempnam.c
+# _tempnam_dbg
+# _time32.c
+# _time64.c
+# _timezone
+# _tolower.c
+# _tolower_l
+# _toupper.c
+# _toupper_l
+# _towlower_l
+# _towupper_l
+# _tzname
+# _tzset.c
+# _ui64toa.c
+# _ui64toa_s.c
+# _ui64tow.c
+# _ui64tow_s.c
+# _ultoa.c
+# _ultoa_s
+# _ultow.c
+# _ultow_s
+# _umask.c
+# _umask_s
+# _ungetch.c
+# _ungetwch
+# _unlink.c
+# _unloaddll.c
+# _unlock.c
+# _utime32.c
+# _utime64.c
+# _vcprintf
+# _vcprintf_l
+# _vcprintf_p
+# _vcprintf_p_l
+# _vcprintf_s
+# _vcprintf_s_l
+# _vcwprintf.c
+# _vcwprintf_l
+# _vcwprintf_p
+# _vcwprintf_p_l
+# _vcwprintf_s
+# _vcwprintf_s_l
+# _vfprintf_l
+# _vfprintf_p
+# _vfprintf_p_l
+# _vfprintf_s_l
+# _vfwprintf_l
+# _vfwprintf_p
+# _vfwprintf_p_l
+# _vfwprintf_s_l
+# _vprintf_l
+# _vprintf_p
+# _vprintf_p_l
+# _vprintf_s_l
+# _utime.c
+# _vscprintf.c
+# _vscprintf_l
+# _vscprintf_p_l
+# _vscwprintf.c
+# _vscwprintf_l
+# _vscwprintf_p_l
+# _vsnprintf.c
+# _vsnprintf_c.c _vsnprintf
+# _vsnprintf_c_l.c _vsnprintf_l
+# _vsnprintf_l.c
+# _vsnprintf_s.c
+# _vsnprintf_s_l.c
+# _vsnwprintf.c
+# _vsnwprintf_l.c
+# _vsnwprintf_s.c
+# _vsnwprintf_s_l.c
+# _vsprintf_l
+# _vsprintf_p.c
+# _vsprintf_p_l
+# _vsprintf_s_l
+# _vswprintf.c
+# _vswprintf_c.c _vsnwprintf
+# _vswprintf_c_l.c _vsnwprintf_l
+# _vswprintf_l.c
+# _vswprintf_p_l.c _vsnwprintf_l
+# _vswprintf_s_l.c
+# _vwprintf_l
+# _vwprintf_p
+# _vwprintf_p_l
+# _vwprintf_s_l
+# _waccess.c
+# _waccess_s.c
+# _wasctime.c
+# _wasctime_s
+# _wassert
+# _wchdir.c
+# _wchmod.c
+# _wcmdln
+# _wcreat.c
+# _wcscoll_l
+# _wcsdup.c
+# _wcsdup_dbg
+# _wcserror.c
+# _wcserror_s.c
+# _wcsftime_l
+# _wcsicmp.c
+# _wcsicmp_l
+# _wcsicoll.c
+# _wcsicoll_l
+# _wcslwr.c
+# _wcslwr_l
+# _wcslwr_s
+# _wcslwr_s_l
+# _wcsncoll.c
+# _wcsncoll_l
+# _wcsnicmp.c
+# _wcsnicmp_l
+# _wcsnicoll.c
+# _wcsnicoll_l
+# _wcsnset.c
+# _wcsnset_s
+# _wcsrev.c
+# _wcsset.c
+# _wcsset_s
+# _wcstoi64.c
+# _wcstoi64_l.c
+# _wcstol_l
+# _wcstombs_l
+# _wcstombs_s_l.c
+# _wcstoui64.c
+# _wcstoui64_l.c
+# _wcstoul_l
+# _wcsupr.c
+# _wcsupr_l
+# _wcsupr_s.c
+# _wcsupr_s_l
+# _wcsxfrm_l
+# _wctime.c
+# _wctime32.c
+# _wctime32_s
+# _wctime64.c
+# _wctime64_s
+# _wctomb_l
+# _wctomb_s_l
+# _wctype
+# _wenviron
+# _wexecl.c
+# _wexecle.c
+# _wexeclp.c
+# _wexeclpe.c
+# _wexecv.c
+# _wexecve.c
+# _wexecvp.c
+# _wexecvpe.c
+# _wfdopen.c
+# _wfindfirst.c
+# _wfindfirst64
+# _wfindfirsti64.c
+# _wfindnext.c
+# _wfindnext64
+# _wfindnexti64.c
+# _wfopen.c
+# _wfopen_s.c
+# _wfreopen.c
+# _wfreopen_s
+# _wfsopen.c
+# _wfullpath.c
+# _wfullpath_dbg
+# _wgetcwd.c
+# _wgetdcwd.c
+# _wgetenv.c
+# _wgetenv_s
+# _winmajor
+# _winminor
+# _winput_s
+# _winver
+# _wmakepath.c
+# _wmakepath_s.c
+# _wmkdir.c
+# _wmktemp.c
+# _wmktemp_s
+# _wopen.c
+# _woutput_s
+# _wperror.c
+# _wpgmptr
+# _wpopen.c
+# _wprintf_l
+# _wprintf_p
+# _wprintf_p_l
+# _wprintf_s_l
+# _wputenv.c
+# _wputenv_s
+# _wremove.c
+# _wrename.c
+# _write.c
+# _wrmdir.c
+# _wscanf_l.c
+# _wscanf_s_l.c
+# _wsearchenv.c
+# _wsearchenv_s
+# _wsetlocale.c
+# _wsopen.c
+# _wsopen_s.c
+# _wspawnl.c
+# _wspawnle.c
+# _wspawnlp.c
+# _wspawnlpe.c
+# _wspawnv.c
+# _wspawnve.c
+# _wspawnvp.c
+# _wspawnvpe.c
+# _wsplitpath.c
+# _wsplitpath_s.c
+# _wstat.c
+# _wstati64.c
+# _wstat64.c
+# _wstrdate.c
+# _wstrdate_s
+# _wstrtime.c
+# _wstrtime_s
+# _wsystem.c
+# _wtempnam.c
+# _wtempnam_dbg
+# _wtmpnam.c
+# _wtmpnam_s
+# _wtof.c
+# _wtof_l.c
+# _wtoi.c
+# _wtoi64.c
+# _wtoi64_l
+# _wtoi_l
+# _wtol.c
+# _wtol_l
+# _wunlink.c
+# _wutime.c
+# _wutime32.c
+# _wutime64.c
+# _y0.c
+# _y1.c
+# _yn.c
+# abort.c
+# abs.c
+# acos.c
+# asctime.c
+# asctime_s
+# asin.c
+# atan.c
+# atan2.c
+# atexit # <-- keep this as an extern, thank you
+# atof.c
+# atoi.c
+# atol.c
+# bsearch.c
+# bsearch_s
+# btowc.c
+# calloc.c
+# ceil.c
+# clearerr.c
+# clearerr_s
+# clock.c
+# cos.c
+# cosh.c
+# ctime.c
+# difftime.c
+# div.c
+# exit.c
+# exp.c
+# fabs.c
+# fclose.c
+# feof.c
+# ferror.c
+# fflush.c
+# fgetc.c
+# fgetpos.c
+# fgets.c
+# fgetwc.c
+# fgetws.c
+# floor.c
+# fmod.c
+# fopen.c
+# fopen_s.c
+# fprintf.c
+# fprintf_s.c
+# fputc.c
+# fputs.c
+# fputwc.c
+# fputws.c
+# fread.c
+# free.c
+# freopen.c
+# freopen_s
+# frexp.c
+# fscanf.c
+# fscanf_s.c
+# fseek.c
+# fsetpos.c
+# ftell.c
+# fwprintf.c
+# fwprintf_s.c
+# fwrite.c
+# fwscanf.c
+# fwscanf_s.c
+# getc.c
+# getchar.c
+# getenv.c
+# getenv_s
+# gets.c
+# getwc.c
+# getwchar.c
+# gmtime.c
+# is_wctype.c
+# isalnum.c
+# isalpha.c
+# iscntrl.c
+# isdigit.c
+# isgraph.c
+# isleadbyte.c
+# islower.c
+# isprint.c
+# ispunct.c
+# isspace.c
+# isupper.c
+# iswalnum.c
+# iswalpha.c
+# iswascii.c
+# iswcntrl.c
+# iswctype.c
+# iswdigit.c
+# iswgraph.c
+# iswlower.c
+# iswprint.c
+# iswpunct.c
+# iswspace.c
+# iswupper.c
+# iswxdigit.c
+# isxdigit.c
+# labs.c
+# ldexp.c
+# ldiv.c
+# localeconv.c
+# localtime.c
+# log.c
+# log10.c
+# longjmp.c
+# malloc.c
+# mblen.c
+# mbrlen
+# mbrtowc
+# mbsdup_dbg
+# mbsrtowcs
+# mbsrtowcs_s
+# mbstowcs.c
+# mbstowcs_s
+# mbtowc.c
+# memchr.c
+# memcmp.c
+# memcpy.c
+# memcpy_s.c memmove_s
+# memmove.c
+# memmove_s.c
+# memset.c
+# mktime.c
+# modf.c
+# perror.c
+# pow.c
+# printf.c
+# printf_s.c
+# putc.c
+# putchar.c
+# puts.c
+# putwc.c fputwc
+# putwchar.c _fputwchar
+# qsort.c
+# qsort_s
+# raise.c
+# rand.c
+# rand_s.c
+# realloc.c
+# remove.c
+# rename.c
+# rewind.c
+# scanf.c
+# scanf_s.c
+# setbuf.c
+# _setjmp.c
+# setlocale.c
+# setvbuf.c
+# signal.c
+# sin.c
+# sinh.c
+# sprintf.c
+# sprintf_s.c
+# sqrt.c
+# srand.c
+# sscanf.c
+# sscanf_s.c
+# strcat.c
+# strcat_s.c
+# strchr.c
+# strcmp.c
+# strcoll.c
+ strcpy.c
+# strcpy_s.c
+# strcspn.c
+# strerror.c
+# strerror_s.c
+# strftime.c
+# strlen.c
+# strncat.c
+# strncat_s
+# strncmp.c
+# strncpy.c
+# strncpy_s.c
+# strnlen.c
+# strpbrk.c
+# strrchr.c
+# strspn.c
+# strstr.c
+# strtod.c
+# strtok.c
+# strtok_s.c
+# strtol.c
+# strtoul.c
+# strxfrm.c
+# swprintf.c
+# swprintf_s.c
+# swscanf.c
+# swscanf_s.c
+# system.c
+# tan.c
+# tanh.c
+# time.c
+# tmpfile.c
+# tmpfile_s
+# tmpnam.c
+# tmpnam_s
+# tolower.c
+# toupper.c
+# towlower.c
+# towupper.c
+# ungetc.c
+# ungetwc.c
+# utime
+# vfprintf.c
+# vfprintf_s.c
+# vfwprintf.c
+# vfwprintf_s.c
+# vprintf.c
+# vprintf_s.c
+# vsnprintf
+# vsprintf.c
+# vsprintf_s.c
+# vswprintf.c
+# vswprintf_s.c
+# vwprintf.c
+# vwprintf_s.c
+# wcrtomb
+# wcrtomb_s
+# wcscat.c
+# wcscat_s.c
+# wcschr.c
+# wcscmp.c
+# wcscoll.c
+# wcscpy.c
+# wcscpy_s.c
+# wcscspn.c
+# wcsftime.c
+# wcslen.c
+# wcsncat.c
+# wcsncat_s.c
+# wcsncmp.c
+# wcsncpy.c
+# wcsncpy_s.c
+# wcsnlen
+# wcspbrk.c
+# wcsrchr.c
+# wcsrtombs
+# wcsrtombs_s
+# wcsspn.c
+# wcsstr.c
+# wcstod.c
+# wcstok.c
+# wcstok_s.c
+# wcstol.c
+# wcstombs.c
+# wcstombs_s.c
+# wcstoul.c
+# wcsxfrm.c
+# wctob
+# wctomb.c
+# wctomb_s
+# wprintf.c
+# wprintf_s.c
+# wscanf.c
+# wscanf_s.c
+)
+
+if (ARCH MATCHES i386)
+ list(APPEND SOURCE_MSVCRT
+ # _CIacos.c
+ # _CIasin.c
+ # _CIatan.c
+ # _CIatan2.c
+ # _CIcos.c
+ # _CIcosh.c
+ # _CIexp.c
+ # _CIfmod.c
+ # _CIlog.c
+ # _CIlog10.c
+ # _CIpow.c
+ # _CIsin.c
+ # _CIsinh.c
+ # _CIsqrt.c
+ # _CItan.c
+ # _CItanh.c
+ # _chkesp.c
+ # _EH_prolog.c
+ # __CxxFrameHandler.c
+ # __CxxFrameHandler2.c
+ # __CxxFrameHandler3.c
+ # __CxxLongjmpUnwind.c
+ # __p___argc.c
+ # __p___argv.c
+ # __p___initenv.c
+ # __p___mb_cur_max.c
+ # __p___wargv.c
+ # __p___winitenv.c
+ # __p__acmdln.c
+ # __p__amblksiz.c
+ # __p__commode.c
+ # __p__daylight.c
+ # __p__dstbias.c
+ # __p__environ.c
+ # __p__fileinfo.c
+ # __p__fmode.c
+ # __p__iob.c
+ # __p__mbcasemap.c
+ # __p__mbctype.c
+ # __p__osver.c
+ # __p__pctype.c
+ # __p__pgmptr.c
+ # __p__pwctype.c
+ # __p__timezone.c
+ # __p__tzname.c
+ # __p__wcmdln.c
+ # __p__wenviron.c
+ # __p__winmajor.c
+ # __p__winminor.c
+ # __p__winver.c
+ # __p__wpgmptr.c
+ # _adj_fdiv_m16i.c
+ # _adj_fdiv_m32.c
+ # _adj_fdiv_m32i.c
+ # _adj_fdiv_m64.c
+ # _adj_fdiv_r.c
+ # _adj_fdivr_m16i.c
+ # _adj_fdivr_m32.c
+ # _adj_fdivr_m32i.c
+ # _adj_fdivr_m64.c
+ # _adj_fpatan.c
+ # _adj_fprem.c
+ # _adj_fprem1.c
+ # _adj_fptan.c
+ # _adjust_fdiv
+ # _except_handler2.c
+ # _except_handler3.c
+ # _except_handler4_common.c
+ # _ftol.c
+ # _ftol2.c _ftol
+ # _ftol2_sse.c
+ # _global_unwind2.c
+ # _inp.c
+ # _inpd.c
+ # _inpw.c
+ # _local_unwind2.c
+ # _local_unwind4.c
+ # _safe_fdiv.c
+ # _safe_fdivr.c
+ # _safe_fprem.c
+ # _safe_fprem1.c
+ # _seh_longjmp_unwind4.c
+ # _seh_longjmp_unwind.c
+ # -norelay _setjmp3.c
+ )
+elseif (ARCH MATCHES amd64)
+ list(APPEND SOURCE_MSVCRT
+ # __C_specific_handler
+ # _setjmp.c
+ # _setjmpex.c
+ # _local_unwind.c
+ # longjmp.c
+ # __C_specific_handler.c
+ # _setjmpex.c
+ # ceilf.c
+ # cosf.c
+ # floorf.c
+ # fmodf.c
+ # logf.c
+ # powf.c
+ # sinf.c
+ # sqrtf.c
+ )
+endif()
+
+add_executable(static_crt_apitest testlist.c ${SOURCE_MSVCRT})
+target_link_libraries(static_crt_apitest wine ${PSEH_LIB} crt msvcrtex wine)
+set_module_type(static_crt_apitest win32cui)
+add_importlibs(static_crt_apitest kernel32)
+add_cd_file(TARGET static_crt_apitest DESTINATION reactos/bin FOR all)
+
+add_executable(msvcrt_crt_apitest testlist.c ${SOURCE_MSVCRT})
+add_target_compile_definitions(msvcrt_crt_apitest _DLL __USE_CRTIMP)
+target_link_libraries(msvcrt_crt_apitest wine ${PSEH_LIB})
+set_module_type(msvcrt_crt_apitest win32cui)
+add_importlibs(msvcrt_crt_apitest msvcrt kernel32)
+add_cd_file(TARGET msvcrt_crt_apitest DESTINATION reactos/bin FOR all)
Propchange: trunk/rostests/apitests/crt/msvcrt_crt_apitest.cmake
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/rostests/apitests/crt/msvcrt_mini.spec
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/crt/msvcrt_mini.…
==============================================================================
--- trunk/rostests/apitests/crt/msvcrt_mini.spec (added)
+++ trunk/rostests/apitests/crt/msvcrt_mini.spec [iso-8859-1] Wed Apr 18 17:21:18 2012
@@ -1,0 +1,30 @@
+
+@ cdecl fputs(str ptr) MSVCRT.fputs
+@ extern _iob MSVCRT._iob
+@ varargs fprintf(ptr str) MSVCRT.fprintf
+@ cdecl vfprintf(ptr str ptr) MSVCRT.vfprintf
+@ cdecl fflush(ptr) MSVCRT.fflush
+@ cdecl setvbuf(ptr str long long) MSVCRT.setvbuf
+@ cdecl _strdup(str) MSVCRT._strdup
+@ cdecl __getmainargs(ptr ptr ptr long ptr) MSVCRT.__getmainargs
+@ cdecl __setusermatherr(ptr) MSVCRT.__setusermatherr
+@ cdecl _amsg_exit(long) MSVCRT._amsg_exit
+@ cdecl __set_app_type(long) MSVCRT.__set_app_type
+@ extern _fmode MSVCRT._fmode
+@ cdecl _initterm(ptr ptr) MSVCRT._initterm
+@ extern _acmdln MSVCRT._acmdln
+@ cdecl signal(long long) MSVCRT.signal
+@ cdecl _fpreset() MSVCRT._fpreset
+@ cdecl _onexit(ptr) MSVCRT._onexit
+@ cdecl __dllonexit(ptr ptr ptr) MSVCRT.__dllonexit
+@ cdecl _unlock(long) MSVCRT._unlock
+@ cdecl abort() MSVCRT.abort
+@ cdecl calloc(long long) MSVCRT.calloc
+@ cdecl malloc(long) MSVCRT.malloc
+@ extern __initenv MSVCRT.__initenv
+@ cdecl _cexit() MSVCRT._cexit
+@ extern _winmajor MSVCRT._winmajor
+@ cdecl __lconv_init() MSVCRT.__lconv_init
+@ cdecl _lock(long) MSVCRT._lock
+@ cdecl free(ptr) MSVCRT.free
+@ cdecl exit(long) MSVCRT.exit
Propchange: trunk/rostests/apitests/crt/msvcrt_mini.spec
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/rostests/apitests/crt/ntdll_crt_apitest.cmake
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/crt/ntdll_crt_ap…
==============================================================================
--- trunk/rostests/apitests/crt/ntdll_crt_apitest.cmake (added)
+++ trunk/rostests/apitests/crt/ntdll_crt_apitest.cmake [iso-8859-1] Wed Apr 18 17:21:18
2012
@@ -1,0 +1,161 @@
+
+list(APPEND SOURCE_NTDLL
+# _CIcos.c
+# _CIlog.c
+# _CIsin.c
+# _CIsqrt.c
+# __isascii.c
+# __iscsym.c
+# __iscsymf.c
+# __toascii.c
+# _atoi64.c
+# _fltused.c
+# _i64toa.c
+# _i64tow.c
+# _itoa.c
+# _itow.c
+# _lfind.c
+# _ltoa.c
+# _ltow.c
+# _memccpy.c
+# _memicmp.c
+# _snprintf.c
+# _snwprintf.c
+# _splitpath.c
+ # _strcmpi == _stricmp
+# _stricmp.c
+# _strlwr.c
+# _strnicmp.c
+# _strupr.c
+# _tolower.c
+# _toupper.c
+# _ui64toa.c
+# _ui64tow.c
+# _ultoa.c
+# _ultow.c
+# _vscwprintf.c
+# _vsnprintf.c
+# _vsnwprintf.c
+# _wcsicmp.c
+# _wcslwr.c
+# _wcsnicmp.c
+# _wcsupr.c
+# _wtoi.c
+# _wtoi64.c
+# _wtol.c
+# abs.c
+# atan.c
+# atoi.c
+# atol.c
+# bsearch.c
+# ceil.c
+# cos.c
+# fabs.c
+# floor.c
+# isalnum.c
+# isalpha.c
+# iscntrl.c
+# isdigit.c
+# isgraph.c
+# islower.c
+# isprint.c
+# ispunct.c
+# isspace.c
+# isupper.c
+# iswalpha.c
+# iswctype.c
+# iswdigit.c
+# iswlower.c
+# iswspace.c
+# iswxdigit.c
+# isxdigit.c
+# labs.c
+# log.c
+# mbstowcs.c
+# memchr.c
+# memcmp.c
+ # memcpy == memmove
+# memmove.c
+# memset.c
+# pow.c
+# qsort.c
+# sin.c
+# sprintf.c
+# sqrt.c
+# sscanf.c
+# strcat.c
+# strchr.c
+# strcmp.c
+ strcpy.c
+# strcspn.c
+# strlen.c
+# strncat.c
+# strncmp.c
+# strncpy.c
+# strpbrk.c
+# strrchr.c
+# strspn.c
+# strstr.c
+# strtol.c
+# strtoul.c
+# swprintf.c
+# tan.c
+# tolower.c
+# toupper.c
+# towlower.c
+# towupper.c
+# vsprintf.c
+# wcscat.c
+# wcschr.c
+# wcscmp.c
+# wcscpy.c
+# wcscspn.c
+# wcslen.c
+# wcsncat.c
+# wcsncmp.c
+# wcsncpy.c
+# wcspbrk.c
+# wcsrchr.c
+# wcsspn.c
+# wcsstr.c
+# wcstok.c
+# wcstol.c
+# wcstombs.c
+# wcstoul.c
+)
+
+if (ARCH MATCHES i386)
+ list(APPEND SOURCE_NTDLL
+ # _CIpow.c
+ # _ftol.c
+ # _alldiv.c
+ # _alldvrm.c
+ # _allmul.c
+ # _allrem.c
+ # _allshl.c
+ # _allshr.c
+ # _alloca_probe.c
+ # _aulldiv.c
+ # _aulldvrm.c
+ # _aullrem.c
+ # _aullshr.c
+ # _chkstk.c
+ )
+elseif (ARCH MATCHES amd64)
+ list(APPEND SOURCE_NTDLL
+ # __C_specific_handler
+ # _setjmp.c
+ # _setjmpex.c
+ # _local_unwind.c
+ # longjmp.c
+ )
+endif()
+
+
+add_executable(ntdll_crt_apitest testlist.c ${SOURCE_NTDLL})
+add_target_compile_definitions(ntdll_crt_apitest _DLL __USE_CRTIMP)
+target_link_libraries(ntdll_crt_apitest wine ${PSEH_LIB})
+set_module_type(ntdll_crt_apitest win32cui)
+add_importlibs(ntdll_crt_apitest ntdll msvcrt_mini kernel32)
+add_cd_file(TARGET ntdll_crt_apitest DESTINATION reactos/bin FOR all)
+
Propchange: trunk/rostests/apitests/crt/ntdll_crt_apitest.cmake
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/rostests/apitests/crt/strcpy.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/crt/strcpy.c?rev…
==============================================================================
--- trunk/rostests/apitests/crt/strcpy.c (added)
+++ trunk/rostests/apitests/crt/strcpy.c [iso-8859-1] Wed Apr 18 17:21:18 2012
@@ -1,0 +1,8 @@
+
+#include <stdio.h>
+#include <wine/test.h>
+
+START_TEST(strcpy)
+{
+}
+
Propchange: trunk/rostests/apitests/crt/strcpy.c
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/rostests/apitests/crt/testlist.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/crt/testlist.c?r…
==============================================================================
--- trunk/rostests/apitests/crt/testlist.c (added)
+++ trunk/rostests/apitests/crt/testlist.c [iso-8859-1] Wed Apr 18 17:21:18 2012
@@ -1,0 +1,21 @@
+#define WIN32_LEAN_AND_MEAN
+#define __ROS_LONG64__
+#include <windows.h>
+
+#define STANDALONE
+#include "wine/test.h"
+
+extern void func_strcpy(void);
+
+const struct test winetest_testlist[] =
+{
+ { "strcpy", func_strcpy },
+#if defined(TEST_CRTDLL) || defined(TEST_MSVCRT)
+ // ...
+#elif defined(TEST_MSVCRT)
+#elif defined(TEST_NTDLL)
+#elif defined(TEST_CRTDLL)
+#endif
+ { 0, 0 }
+};
+
Propchange: trunk/rostests/apitests/crt/testlist.c
------------------------------------------------------------------------------
svn:eol-style = native