reactos/sdk/lib/crt
Timo Kreuzer 2c791cdde7 [CRT] Remove duplicated atexit/onexit code
This removes the broken wine version of atexit and onexit. It keeps only dllonexit, which is implemented properly. The previous __call_atexit is moved to where the mingw onexit/atexit code is and adjusts it to work with the existing code. A call to __call_atexit is added in __tmainCRTStartup after the main function was called.
2020-11-01 09:33:14 +01:00
..
conio
direct
except [CRT] Use chkstk_ms.s on x64 builds 2020-09-20 23:08:17 +02:00
float [CRT] Return from fpreset() 2020-09-20 23:08:17 +02:00
include [CRT] Import wine exception handling code 2020-02-09 15:56:30 +01:00
locale
math [ASM] Fix boot with VS 16.7.3 / MSVC 19.27 2020-09-12 15:01:04 +02:00
mbstring
mem
misc [PROGMAN][CRT][USER32] Do not use LoadLibraryEx() NT6+ flags (#3152) 2020-09-13 23:42:09 +02:00
printf
process
search
setjmp
signal
startup [CRT] Remove duplicated atexit/onexit code 2020-11-01 09:33:14 +01:00
stdio
stdlib [CRT] Remove duplicated atexit/onexit code 2020-11-01 09:33:14 +01:00
string [SDK][STDLIB][STRING] Wine-sync wcsrtombs_l and _mbstowcs_l 2020-05-03 15:35:11 +02:00
sys_stat
time
wine [CRT] Import wine exception handling code 2020-02-09 15:56:30 +01:00
wstring
CMakeLists.txt [CRT] Use chkstk_ms.s on x64 builds 2020-09-20 23:08:17 +02:00
crt.cmake [CRT] Remove duplicated atexit/onexit code 2020-11-01 09:33:14 +01:00
libcntpr.cmake [CRT] Use chkstk_ms.s on x64 builds 2020-09-20 23:08:17 +02:00
moldname-msvcrt.def
msvcrtex.cmake [CMAKE] Use an INTERFACE library to perform the msvcrt <-> msvcrtex binding 2020-10-22 18:07:27 +02:00
oldnames-msvcrt.S
oldnames.cmake
precomp.h
README.txt

Big chunks of this CRT library are taken from Wine's msvcrt implementation,
you can find a list of synced files in README.WINE file.

Notes:
1. When syncing, omit MSVCRT_ prefix where possible, Wine has to keep this
because they are linking with *both* original crt, and ms crt implementation.
ReactOS has the only CRT, so no need to make distinct functions.
2. ReactOS compiles two versions of the CRT library, one for usermode
(called just "crt"), and one version for kernelmode usage (called "libcntpr").
In order to separate the code, you can use #ifdef _LIBCNT_ for libcntpr code.