Merge pull request #6394 from adityamandaleeka/ymm_save_restore
[platform/upstream/coreclr.git] / src / debug / di / CMakeLists.txt
1 add_definitions(-DFEATURE_METADATA_CUSTOM_DATA_SOURCE -DFEATURE_METADATA_DEBUGGEE_DATA_SOURCE -DFEATURE_NO_HOST -DFEATURE_METADATA_LOAD_TRUSTED_IMAGES)
2
3 set(CORDBDI_SOURCES
4   shimprocess.cpp
5   shimcallback.cpp
6   shimevents.cpp
7   shimdatatarget.cpp
8   shimstackwalk.cpp
9   breakpoint.cpp
10   cordb.cpp
11   divalue.cpp
12   dbgtransportmanager.cpp
13   hash.cpp
14   module.cpp
15   nativepipeline.cpp
16   platformspecific.cpp
17   process.cpp
18   rsappdomain.cpp
19   rsassembly.cpp
20   rsclass.cpp
21   rsfunction.cpp
22   rsmain.cpp
23   rsmda.cpp
24   rsregsetcommon.cpp
25   rsstackwalk.cpp
26   rsthread.cpp
27   rstype.cpp
28   shared.cpp
29   symbolinfo.cpp
30   valuehome.cpp
31 )
32
33 if(WIN32)
34     #use static crt
35     add_definitions(-MT) 
36
37     if (CLR_CMAKE_TARGET_ARCH_AMD64 OR CLR_CMAKE_TARGET_ARCH_ARM64)
38         set(CORDBDI_SOURCES_ASM_FILE ${ARCH_SOURCES_DIR}/floatconversion.asm)
39     endif()
40     if (CLR_CMAKE_TARGET_ARCH_AMD64)
41         set(CORDBDI_SOURCES
42           ${CORDBDI_SOURCES}
43           ${CORDBDI_SOURCES_ASM_FILE}
44         )
45     elseif (CLR_CMAKE_TARGET_ARCH_ARM64 AND NOT DEFINED CLR_CROSS_COMPONENTS_BUILD)
46         convert_to_absolute_path(CORDBDI_SOURCES_ASM_FILE ${CORDBDI_SOURCES_ASM_FILE})
47         get_compile_definitions(ASM_DEFINITIONS)
48         set(ASM_OPTIONS /c /Zi /W3 /errorReport:prompt)
49         # asm files require preprocessing using cl.exe on arm64
50         get_filename_component(name ${CORDBDI_SOURCES_ASM_FILE} NAME_WE)
51         set(ASM_PREPROCESSED_FILE ${CMAKE_CURRENT_BINARY_DIR}/${name}.asm)
52         preprocess_def_file(${CORDBDI_SOURCES_ASM_FILE} ${ASM_PREPROCESSED_FILE})
53         set(CORDBDI_SOURCES_WKS_PREPROCESSED_ASM  ${ASM_PREPROCESSED_FILE})
54
55         set_property(SOURCE ${CORDBDI_SOURCES_WKS_PREPROCESSED_ASM} PROPERTY COMPILE_DEFINITIONS ${ASM_DEFINITIONS})
56         set_property(SOURCE ${CORDBDI_SOURCES_WKS_PREPROCESSED_ASM} PROPERTY COMPILE_DEFINITIONS ${ASM_OPTIONS})
57         set(CORDBDI_SOURCES
58               ${CORDBDI_SOURCES}
59               ${CORDBDI_SOURCES_WKS_PREPROCESSED_ASM}
60             )
61     endif()
62 elseif(CLR_CMAKE_PLATFORM_UNIX)
63     add_compile_options(-fPIC)
64
65     if(CLR_CMAKE_TARGET_ARCH_AMD64)
66       set(CORDBDI_SOURCES
67         ${CORDBDI_SOURCES}
68         ${ARCH_SOURCES_DIR}/floatconversion.S
69       )
70     endif()
71
72 endif(WIN32)
73
74 add_precompiled_header(stdafx.h stdafx.cpp CORDBDI_SOURCES)
75
76
77 add_library_clr(cordbdi STATIC ${CORDBDI_SOURCES})