This commit is contained in:
parent
b59de9af5c
commit
2d5702d8d7
@ -76,10 +76,18 @@ endfunction()
|
||||
function(CommandConvertToObjcopy file_in)
|
||||
cmake_path(GET file_in FILENAME filename)
|
||||
cmake_path(GET file_in PARENT_PATH filepath)
|
||||
|
||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64" OR CMAKE_SYSTEM_PROCESSOR MATCHES "amd64")
|
||||
set(OBJCOPY_ARCH "elf64-x86-64")
|
||||
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64" OR CMAKE_SYSTEM_PROCESSOR MATCHES "arm64")
|
||||
set(OBJCOPY_ARCH "elf64-littleaarch64")
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported architecture: ${CMAKE_SYSTEM_PROCESSOR}")
|
||||
endif()
|
||||
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${filename}.o
|
||||
WORKING_DIRECTORY ${filepath}
|
||||
COMMAND ${CMAKE_OBJCOPY}
|
||||
ARGS --input binary --output elf64-x86-64 --binary-architecture i386 ${filename} ${CMAKE_CURRENT_BINARY_DIR}/${filename}.o
|
||||
ARGS --input-target binary --output-target "${OBJCOPY_ARCH}" "${filename}" "${CMAKE_CURRENT_BINARY_DIR}/${filename}.o"
|
||||
DEPENDS ${file_in}
|
||||
POST_BUILD)
|
||||
set(FUNC_RET ${CMAKE_CURRENT_BINARY_DIR}/${filename}.o PARENT_SCOPE)
|
||||
|
Loading…
x
Reference in New Issue
Block a user