diff --git a/dll/ntdll/CMakeLists.txt b/dll/ntdll/CMakeLists.txt index 155ee21d4b5..e99ae40fe62 100644 --- a/dll/ntdll/CMakeLists.txt +++ b/dll/ntdll/CMakeLists.txt @@ -65,7 +65,7 @@ set_module_type(ntdll win32dll ENTRYPOINT 0) set_subsystem(ntdll console) ################# END HACK ################# -target_link_libraries(ntdll ntdll_vista_static etwtrace csrlib rtl rtl_um rtl_vista ntdllsys libcntpr uuid ${PSEH_LIB}) +target_link_libraries(ntdll ntdll_vista_static etwtrace csrlib rtl rtl_um rtl_vista ntdllsys libcntpr setjmp uuid ${PSEH_LIB}) if(DLL_EXPORT_VERSION GREATER_EQUAL 0x600) target_link_libraries(ntdll cryptlib) endif() diff --git a/dll/win32/crtdll/CMakeLists.txt b/dll/win32/crtdll/CMakeLists.txt index b2d01cc5a4b..cf377cabeaf 100644 --- a/dll/win32/crtdll/CMakeLists.txt +++ b/dll/win32/crtdll/CMakeLists.txt @@ -19,7 +19,7 @@ list(APPEND SOURCE add_library(crtdll MODULE ${SOURCE}) set_module_type(crtdll win32dll ENTRYPOINT DllMain 12) -target_link_libraries(crtdll crt wine ${PSEH_LIB}) +target_link_libraries(crtdll crt vcruntime wine ${PSEH_LIB}) add_importlibs(crtdll kernel32 ntdll) add_cd_file(TARGET crtdll DESTINATION reactos/system32 FOR all) diff --git a/dll/win32/msvcrt/CMakeLists.txt b/dll/win32/msvcrt/CMakeLists.txt index 6754ea58f1e..425cc2b6fad 100644 --- a/dll/win32/msvcrt/CMakeLists.txt +++ b/dll/win32/msvcrt/CMakeLists.txt @@ -33,7 +33,7 @@ list(APPEND SOURCE add_library(msvcrt MODULE ${SOURCE}) set_module_type(msvcrt win32dll ENTRYPOINT DllMain 12) add_dependencies(msvcrt psdk) -target_link_libraries(msvcrt crt cpprt wine ${PSEH_LIB}) +target_link_libraries(msvcrt crt vcruntime cpprt wine ${PSEH_LIB}) if(MSVC) # export of deleting destructor "name" diff --git a/dll/win32/ucrtbase/ucrtbase.spec b/dll/win32/ucrtbase/ucrtbase.spec index 4e5a6f355fc..7e773e3a469 100644 --- a/dll/win32/ucrtbase/ucrtbase.spec +++ b/dll/win32/ucrtbase/ucrtbase.spec @@ -125,9 +125,9 @@ @ cdecl __fpecode() @ cdecl __initialize_lconv_for_unsigned_char() @ cdecl -stub __intrinsic_abnormal_termination() # CHECKME -@ cdecl -stub -norelay __intrinsic_setjmp(ptr) # _setjmp +@ cdecl -norelay __intrinsic_setjmp(ptr) @ cdecl -impsym _setjmp(long ptr) __intrinsic_setjmp -@ cdecl -stub -arch=!i386 -norelay __intrinsic_setjmpex(ptr ptr) # _setjmpex +@ cdecl -arch=!i386 -norelay __intrinsic_setjmpex(ptr ptr) @ cdecl __isascii(long) @ cdecl __iscsym(long) @ cdecl __iscsymf(long) @@ -2560,7 +2560,7 @@ @ cdecl set_terminate(ptr) @ cdecl set_unexpected(ptr) @ cdecl setbuf(ptr ptr) -@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp +@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) __intrinsic_setjmp @ cdecl setlocale(long str) @ cdecl setvbuf(ptr str long long) @ cdecl signal(long long) diff --git a/hal/halx86/CMakeLists.txt b/hal/halx86/CMakeLists.txt index 830b4c52393..edfe59ada9e 100644 --- a/hal/halx86/CMakeLists.txt +++ b/hal/halx86/CMakeLists.txt @@ -23,9 +23,9 @@ function(add_hal _halname) ${CMAKE_CURRENT_BINARY_DIR}/hal.def) if(${_halname} STREQUAL "hal") - target_link_libraries(${_halname} libcntpr arbiter fast486 ${PSEH_LIB}) + target_link_libraries(${_halname} libcntpr setjmp arbiter fast486 ${PSEH_LIB}) else() - target_link_libraries(${_halname} libcntpr fast486 ${PSEH_LIB}) + target_link_libraries(${_halname} libcntpr setjmp fast486 ${PSEH_LIB}) endif() add_importlibs(${_halname} ntoskrnl) diff --git a/modules/rostests/apitests/compiler/pseh.c b/modules/rostests/apitests/compiler/pseh.c index ecdaaa687ab..aff593e8ccf 100644 --- a/modules/rostests/apitests/compiler/pseh.c +++ b/modules/rostests/apitests/compiler/pseh.c @@ -2966,10 +2966,10 @@ void Test_collided_unwind(void) _SEH2_END; } - todo_ros ok(Flags == (1 | 2 | 8), "Flags = %x\n", Flags); - todo_ros ok(Count == 2, "Count = %d\n", Count); + ok(Flags == (1 | 2 | 8), "Flags = %x\n", Flags); + ok(Count == 2, "Count = %d\n", Count); #ifdef _M_IX86 - todo_ros ok(__readfsdword(0) == Registration, "SEH registration corrupted!\n"); + ok(__readfsdword(0) == Registration, "SEH registration corrupted!\n"); *(unsigned int*)NtCurrentTeb() = Registration; #endif diff --git a/ntoskrnl/CMakeLists.txt b/ntoskrnl/CMakeLists.txt index bbd6dda003c..d4c5b21a00f 100644 --- a/ntoskrnl/CMakeLists.txt +++ b/ntoskrnl/CMakeLists.txt @@ -46,7 +46,7 @@ set_module_type(ntoskrnl kernel) source_group(TREE ${REACTOS_SOURCE_DIR}/ntoskrnl PREFIX "Source Files" FILES ${NTOSKRNL_SOURCE}) -target_link_libraries(ntoskrnl cportlib csq ${PSEH_LIB} arbiter cmlib ntlsalib rtl ${ROSSYM_LIB} libcntpr wdmguid poguid ioevent) +target_link_libraries(ntoskrnl cportlib csq ${PSEH_LIB} arbiter cmlib ntlsalib rtl ${ROSSYM_LIB} libcntpr setjmp wdmguid poguid ioevent) if(STACK_PROTECTOR) target_sources(ntoskrnl PRIVATE $) diff --git a/ntoskrnl/ntkrnlmp/CMakeLists.txt b/ntoskrnl/ntkrnlmp/CMakeLists.txt index ef768d31e7c..1f58fb274d6 100644 --- a/ntoskrnl/ntkrnlmp/CMakeLists.txt +++ b/ntoskrnl/ntkrnlmp/CMakeLists.txt @@ -37,7 +37,7 @@ if(STACK_PROTECTOR) target_sources(ntkrnlmp PRIVATE $) endif() -target_link_libraries(ntkrnlmp cportlib csq ${PSEH_LIB} arbiter cmlib ntlsalib rtl ${ROSSYM_LIB} libcntpr wdmguid poguid ioevent) +target_link_libraries(ntkrnlmp cportlib csq ${PSEH_LIB} arbiter cmlib ntlsalib rtl ${ROSSYM_LIB} libcntpr setjmp wdmguid poguid ioevent) add_importlibs(ntkrnlmp hal kdcom bootvid) add_pch(ntkrnlmp ${REACTOS_SOURCE_DIR}/ntoskrnl/include/ntoskrnl.h "${NTKRNLMP_PCH_SKIP_SOURCE}") add_dependencies(ntkrnlmp psdk asm) diff --git a/sdk/lib/crt/CMakeLists.txt b/sdk/lib/crt/CMakeLists.txt index baa0ce32094..62fe3ee7a9b 100644 --- a/sdk/lib/crt/CMakeLists.txt +++ b/sdk/lib/crt/CMakeLists.txt @@ -15,7 +15,6 @@ include(misc/misc.cmake) include(printf/printf.cmake) include(process/process.cmake) include(search/search.cmake) -include(setjmp/setjmp.cmake) include(startup/startup.cmake) include(stdio/stdio.cmake) include(stdlib/stdlib.cmake) diff --git a/sdk/lib/crt/ucrtsupport.cmake b/sdk/lib/crt/ucrtsupport.cmake index 20d3ce6474a..94b78da7409 100644 --- a/sdk/lib/crt/ucrtsupport.cmake +++ b/sdk/lib/crt/ucrtsupport.cmake @@ -9,7 +9,6 @@ list(APPEND UCRTSUPP_SOURCE ) list(APPEND UCRTSUPP_ASM_SOURCE - ${CRT_SETJMP_ASM_SOURCE} ${CRT_WINE_ASM_SOURCE} ) diff --git a/win32ss/drivers/font/ftfd/CMakeLists.txt b/win32ss/drivers/font/ftfd/CMakeLists.txt index 47ecd2c8475..821aba0bc59 100644 --- a/win32ss/drivers/font/ftfd/CMakeLists.txt +++ b/win32ss/drivers/font/ftfd/CMakeLists.txt @@ -18,7 +18,7 @@ add_library(ftfd MODULE ${CMAKE_CURRENT_BINARY_DIR}/ftfd.def) set_module_type(ftfd kerneldll ENTRYPOINT FtfdEnableDriver 12) -target_link_libraries(ftfd freetype libcntpr ${PSEH_LIB}) +target_link_libraries(ftfd freetype libcntpr setjmp ${PSEH_LIB}) add_pch(ftfd ftfd.h "${PCH_SKIP_SOURCE}") add_importlibs(ftfd win32k) add_dependencies(ftfd psdk)