xmrig/cmake/asm.cmake

34 lines
1.1 KiB
CMake
Raw Normal View History

2018-09-24 11:57:30 +00:00
if (WITH_ASM AND NOT XMRIG_ARM AND CMAKE_SIZEOF_VOID_P EQUAL 8)
2018-09-23 17:16:33 +00:00
set(XMRIG_ASM_LIBRARY "xmrig-asm")
if (CMAKE_C_COMPILER_ID MATCHES MSVC)
2018-09-23 17:16:33 +00:00
enable_language(ASM_MASM)
if (MSVC_TOOLSET_VERSION GREATER_EQUAL 141)
set(XMRIG_ASM_FILE "src/crypto/asm/cnv2_main_loop.asm")
else()
set(XMRIG_ASM_FILE "src/crypto/asm/win64/cnv2_main_loop.asm")
endif()
set_property(SOURCE ${XMRIG_ASM_FILE} PROPERTY ASM_MASM)
2018-09-23 17:16:33 +00:00
else()
enable_language(ASM)
if (WIN32 AND CMAKE_C_COMPILER_ID MATCHES GNU)
set(XMRIG_ASM_FILE "src/crypto/asm/win64/cnv2_main_loop.S")
else()
set(XMRIG_ASM_FILE "src/crypto/asm/cnv2_main_loop.S")
endif()
set_property(SOURCE ${XMRIG_ASM_FILE} PROPERTY C)
2018-09-23 17:16:33 +00:00
endif()
add_library(${XMRIG_ASM_LIBRARY} STATIC ${XMRIG_ASM_FILE})
2018-09-24 11:19:26 +00:00
set(XMRIG_ASM_SOURCES src/crypto/Asm.h src/crypto/Asm.cpp)
2018-09-23 17:16:33 +00:00
set_property(TARGET ${XMRIG_ASM_LIBRARY} PROPERTY LINKER_LANGUAGE C)
else()
2018-09-24 11:19:26 +00:00
set(XMRIG_ASM_SOURCES "")
2018-09-23 17:16:33 +00:00
set(XMRIG_ASM_LIBRARY "")
add_definitions(/DXMRIG_NO_ASM)
endif()