mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 22:23:01 +00:00
[UCRTSUPPORT] Add wine c++ exception code
This commit is contained in:
parent
e2d69ad98c
commit
ae0fa8ba49
5 changed files with 103 additions and 45 deletions
|
@ -2,21 +2,67 @@
|
|||
list(APPEND UCRTSUPP_SOURCE
|
||||
${CRT_FLOAT_SOURCE}
|
||||
${CRT_MATH_SOURCE}
|
||||
misc/amsg.c
|
||||
misc/purecall.c
|
||||
misc/tls.c
|
||||
wine/cpp.c
|
||||
wine/except.c
|
||||
wine/undname.c
|
||||
)
|
||||
|
||||
list(APPEND UCRTSUPP_ASM_SOURCE
|
||||
${CRT_EXCEPT_ASM_SOURCE}
|
||||
${CRT_FLOAT_ASM_SOURCE}
|
||||
${CRT_MATH_ASM_SOURCE}
|
||||
${CRT_SETJMP_ASM_SOURCE}
|
||||
${CRT_WINE_ASM_SOURCE}
|
||||
)
|
||||
|
||||
if(ARCH STREQUAL "i386")
|
||||
list(APPEND UCRTSUPP_SOURCE
|
||||
except/i386/CxxHandleV8Frame.c
|
||||
wine/except_i386.c
|
||||
)
|
||||
list(APPEND UCRTSUPP_ASM_SOURCE
|
||||
except/i386/__CxxFrameHandler3.s
|
||||
except/i386/chkesp.s
|
||||
wine/rosglue_i386.s
|
||||
)
|
||||
if(MSVC)
|
||||
list(APPEND UCRTSUPP_ASM_SOURCE
|
||||
except/i386/cpp.s
|
||||
except/i386/prolog.s
|
||||
)
|
||||
endif()
|
||||
elseif(ARCH STREQUAL "amd64")
|
||||
list(APPEND UCRTSUPP_SOURCE
|
||||
wine/except_x86_64.c
|
||||
)
|
||||
if(MSVC)
|
||||
list(APPEND UCRTSUPP_ASM_SOURCE
|
||||
except/amd64/cpp.s
|
||||
)
|
||||
endif()
|
||||
elseif(ARCH STREQUAL "arm")
|
||||
list(APPEND UCRTSUPP_SOURCE
|
||||
wine/except_arm.c
|
||||
)
|
||||
if(MSVC)
|
||||
list(APPEND UCRTSUPP_ASM_SOURCE
|
||||
except/arm/cpp.s
|
||||
)
|
||||
endif()
|
||||
elseif(ARCH STREQUAL "arm64")
|
||||
list(APPEND UCRTSUPP_SOURCE
|
||||
wine/except_arm64.c
|
||||
)
|
||||
endif()
|
||||
|
||||
add_asm_files(ucrtsupp_asm ${UCRTSUPP_ASM_SOURCE})
|
||||
|
||||
add_library(ucrtsupport ${UCRTSUPP_SOURCE} ${ucrtsupp_asm})
|
||||
target_link_libraries(ucrtsupport chkstk ${PSEH_LIB})
|
||||
target_compile_definitions(ucrtsupport PRIVATE
|
||||
__UCRTSUPPORT__
|
||||
CRTDLL
|
||||
_MSVCRT_LIB_
|
||||
_MSVCRT_
|
||||
|
@ -24,6 +70,11 @@ target_compile_definitions(ucrtsupport PRIVATE
|
|||
USE_MSVCRT_PREFIX
|
||||
__MINGW_IMPORT=extern
|
||||
__fma3_lib_init=__acrt_initialize_fma3
|
||||
set_terminate=_wine_set_terminate
|
||||
terminate=_wine_terminate
|
||||
_get_terminate=_wine_get_terminate
|
||||
unexpected=_wine_unexpected
|
||||
__pxcptinfoptrs=_wine__pxcptinfoptrs
|
||||
)
|
||||
#add_pch(crt precomp.h)
|
||||
add_dependencies(ucrtsupport psdk asm)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue