summaryrefslogtreecommitdiff
path: root/src/vm/wks/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/vm/wks/CMakeLists.txt')
-rw-r--r--src/vm/wks/CMakeLists.txt12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/vm/wks/CMakeLists.txt b/src/vm/wks/CMakeLists.txt
index 1b232b7b19..b0af9a6b34 100644
--- a/src/vm/wks/CMakeLists.txt
+++ b/src/vm/wks/CMakeLists.txt
@@ -4,6 +4,18 @@ if (WIN32)
set_source_files_properties(../mscorlib.cpp PROPERTIES COMPILE_FLAGS "/Y-")
# .c file cannot use cpp precompiled header
set_source_files_properties(../microsoft.comservices_i.c PROPERTIES COMPILE_FLAGS "/Y-")
+
+ # asm files require preprocessing using cl.exe on arm64
+ if(CLR_CMAKE_PLATFORM_ARCH_ARM64)
+ foreach(ASM_FILE ${VM_SOURCES_WKS_ARCH_ASM})
+ get_filename_component(name ${ASM_FILE} NAME_WE)
+ set(ASM_PREPROCESSED_FILE ${CMAKE_CURRENT_BINARY_DIR}/${name}.asm)
+ preprocess_def_file(${ASM_FILE} ${ASM_PREPROCESSED_FILE})
+ set(VM_SOURCES_WKS_ARM64_PREPROCESSED_ASM ${VM_SOURCES_WKS_ARM64_PREPROCESSED_ASM} ${ASM_PREPROCESSED_FILE})
+ endforeach()
+
+ set(VM_SOURCES_WKS_ARCH_ASM ${VM_SOURCES_WKS_ARM64_PREPROCESSED_ASM})
+ endif(CLR_CMAKE_PLATFORM_ARCH_ARM64)
endif (WIN32)
add_library(cee_wks ${VM_SOURCES_WKS} ${VM_SOURCES_WKS_ARCH_ASM})