From 53e80b3769c636d07f16bd665e1b734acafbaf4c Mon Sep 17 00:00:00 2001 From: Rebekah Date: Sun, 14 Jul 2024 06:12:42 -0400 Subject: [PATCH] Update CMakeLists.txt --- CMakeLists.txt | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8422593..8e9d468 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,3 @@ - # VulkZample! Your example in Vulkan! # Copyright (C) 2024 Rebekah Rowe # @@ -114,10 +113,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)