https://git.reactos.org/?p=reactos.git;a=commitdiff;h=457b83f76aa224f6b85cb12d2867d394fe7a1088

commit 457b83f76aa224f6b85cb12d2867d394fe7a1088
Author:     Hervé Poussineau <[email protected]>
AuthorDate: Sat Jan 9 20:32:14 2021 +0100
Commit:     Hervé Poussineau <[email protected]>
CommitDate: Thu Jan 28 20:44:21 2021 +0100

    [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()

Reply via email to