2 if(ARCH STREQUAL "i386")
3 list(APPEND LIBCNTPR_EXCEPT_ASM_SOURCE
4 except/i386/chkstk_asm.s
6 list(APPEND CRT_EXCEPT_ASM_SOURCE
7 except/i386/__CxxFrameHandler3.s
11 list(APPEND CRT_EXCEPT_SOURCE
12 except/i386/CxxHandleV8Frame.c
15 list(APPEND CRT_EXCEPT_ASM_SOURCE
18 elseif(ARCH STREQUAL "amd64")
19 list(APPEND LIBCNTPR_EXCEPT_SOURCE
20 except/amd64/ehandler.c
22 list(APPEND LIBCNTPR_EXCEPT_ASM_SOURCE
23 except/amd64/chkstk_ms.s
26 list(APPEND CRT_EXCEPT_ASM_SOURCE
30 list(APPEND CRT_EXCEPT_ASM_SOURCE
33 elseif(ARCH STREQUAL "arm")
34 list(APPEND LIBCNTPR_EXCEPT_SOURCE
37 list(APPEND LIBCNTPR_EXCEPT_ASM_SOURCE
38 except/arm/__jump_unwind.s
39 except/arm/_abnormal_termination.s
40 except/arm/_except_handler2.s
41 except/arm/_except_handler3.s
42 except/arm/_global_unwind2.s
43 except/arm/_local_unwind2.s
44 except/arm/chkstk_asm.s
46 list(APPEND CRT_EXCEPT_ASM_SOURCE
47 except/arm/_abnormal_termination.s
48 except/arm/_except_handler2.s
49 except/arm/_except_handler3.s
50 except/arm/_global_unwind2.s
51 except/arm/_local_unwind2.s
52 except/arm/chkstk_asm.s
55 list(APPEND CRT_EXCEPT_ASM_SOURCE
60 list(APPEND CRT_EXCEPT_SOURCE
61 ${LIBCNTPR_EXCEPT_SOURCE}
65 if(ARCH STREQUAL "i386")
66 list(APPEND CHKSTK_ASM_SOURCE except/i386/chkstk_asm.s)
67 elseif(ARCH STREQUAL "amd64")
68 list(APPEND CHKSTK_ASM_SOURCE except/amd64/chkstk_ms.s)
69 elseif(ARCH STREQUAL "arm")
70 list(APPEND CHKSTK_ASM_SOURCE except/arm/chkstk_asm.s)
71 elseif(ARCH STREQUAL "arm64")
72 list(APPEND CHKSTK_ASM_SOURCE except/arm64/chkstk_asm.s)
75 add_asm_files(chkstk_lib_asm ${CHKSTK_ASM_SOURCE})
76 add_library(chkstk ${CHKSTK_SOURCE} ${chkstk_lib_asm})
77 set_target_properties(chkstk PROPERTIES LINKER_LANGUAGE "C")
78 add_dependencies(chkstk asm)