[PSEH] When using GCC x64, use native SEH support instead of PSEH
[reactos.git] / sdk / lib / pseh / CMakeLists.txt
index f740584..0f64bf0 100644 (file)
@@ -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()