add_subdirectory(lib)
add_subdirectory(crossgen)
+if (CLR_CMAKE_PLATFORM_ARCH_I386)
+ # On x86, build RyuJIT/ARM32 cross-compiling altjit.
+ add_subdirectory(gcinfo_arm)
+endif ()
+
+if (CLR_CMAKE_PLATFORM_ARCH_AMD64)
+ # On amd64, build RyuJIT/ARM64 cross-compiling altjit.
+ add_subdirectory(gcinfo_arm64)
+endif ()
+
_install (FILES gcinfoencoder.cpp
DESTINATION gcinfo)
--- /dev/null
+remove_definitions(-D_TARGET_X86_=1)
+add_definitions(-D_TARGET_ARM_)
+
+add_library_clr(gcinfo_arm
+ STATIC
+ ${GCINFO_SOURCES}
+)
--- /dev/null
+remove_definitions(-D_TARGET_AMD64_=1)
+add_definitions(-D_TARGET_ARM64_)
+
+add_library_clr(gcinfo_arm64
+ STATIC
+ ${GCINFO_SOURCES}
+)
remove_definitions(-D_TARGET_X86_=1)
add_definitions(-D_TARGET_ARM_)
set(JIT_ARCH_ALTJIT_SOURCES ${JIT_ARM_SOURCES})
+ set(JIT_ARCH_LINK_LIBRARIES gcinfo_arm)
elseif(CLR_CMAKE_PLATFORM_ARCH_AMD64)
remove_definitions(-D_TARGET_AMD64_=1)
add_definitions(-D_TARGET_ARM64_)
set(JIT_ARCH_ALTJIT_SOURCES ${JIT_ARM64_SOURCES})
+ set(JIT_ARCH_LINK_LIBRARIES gcinfo_arm64)
else()
clr_unknown_arch()
endif()
set(RYUJIT_LINK_LIBRARIES
utilcodestaticnohost
- gcinfo
+ ${JIT_ARCH_LINK_LIBRARIES}
)
if(CLR_CMAKE_PLATFORM_UNIX)