From 457b83f76aa224f6b85cb12d2867d394fe7a1088 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Sat, 9 Jan 2021 20:32:14 +0100 Subject: [PATCH] [PSEH] When using GCC x64, use native SEH support instead of PSEH --- sdk/lib/pseh/CMakeLists.txt | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/sdk/lib/pseh/CMakeLists.txt b/sdk/lib/pseh/CMakeLists.txt index f7405848014..0f64bf0cf95 100644 --- a/sdk/lib/pseh/CMakeLists.txt +++ b/sdk/lib/pseh/CMakeLists.txt @@ -3,9 +3,23 @@ if(ARCH STREQUAL "i386") list(APPEND ASM_SOURCE i386/seh.s i386/seh_prolog.s) +elseif(ARCH STREQUAL "amd64") + list(APPEND ASM_SOURCE + amd64/seh.s + amd64/seh_prolog.s) +elseif(ARCH STREQUAL "arm") + list(APPEND ASM_SOURCE + arm/seh_prolog.s) endif() -if(NOT MSVC) +if(MSVC OR (GCC AND ARCH STREQUAL "amd64")) + + list(APPEND SOURCE dummy.c) + add_asm_files(pseh_asm ${ASM_SOURCE}) + add_library(pseh ${SOURCE} ${pseh_asm}) + add_dependencies(pseh asm) + +else() if(USE_PSEH3) include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/pseh) @@ -29,20 +43,4 @@ if(NOT MSVC) target_link_libraries(pseh chkstk) add_dependencies(pseh psdk) -else() - - if(ARCH STREQUAL "amd64") - list(APPEND ASM_SOURCE - amd64/seh.s - amd64/seh_prolog.s) - elseif(ARCH STREQUAL "arm") - list(APPEND ASM_SOURCE - arm/seh_prolog.s) - endif() - - list(APPEND SOURCE dummy.c) - add_asm_files(pseh_asm ${ASM_SOURCE}) - add_library(pseh ${SOURCE} ${pseh_asm}) - add_dependencies(pseh asm) - endif()