mirror of
https://github.com/apache/nuttx.git
synced 2026-05-31 05:55:46 +08:00
arch/x64:Fix the abnormal backtrace display issue
Need to wait until nuttx and allsymbols linking is completed before generating nuttx.mb1. Signed-off-by: liwenxiang1 <liwenxiang1@xiaomi.com>
This commit is contained in:
@@ -84,3 +84,34 @@ endif()
|
|||||||
nuttx_add_extra_library(${EXTRA_LIB})
|
nuttx_add_extra_library(${EXTRA_LIB})
|
||||||
|
|
||||||
set(PREPROCESS ${CMAKE_C_COMPILER} ${CMAKE_C_FLAG_ARGS} -E -P -x c)
|
set(PREPROCESS ${CMAKE_C_COMPILER} ${CMAKE_C_FLAG_ARGS} -E -P -x c)
|
||||||
|
|
||||||
|
if(CONFIG_ARCH_MULTIBOOT1)
|
||||||
|
message(STATUS "Generating: nuttx.mb1 in ELF32/multiboot1")
|
||||||
|
if(CONFIG_ALLSYMS)
|
||||||
|
set(FINAL_NUTTX_ELF "${CMAKE_BINARY_DIR}/final_nuttx")
|
||||||
|
else()
|
||||||
|
set(FINAL_NUTTX_ELF "${CMAKE_BINARY_DIR}/nuttx")
|
||||||
|
endif()
|
||||||
|
set(NUTTX_ELF "${CMAKE_BINARY_DIR}/nuttx")
|
||||||
|
set(NUTTX_BIN "${NUTTX_ELF}.bin")
|
||||||
|
set(NUTTX_REALMODE_BIN "${NUTTX_ELF}_realmode.bin")
|
||||||
|
set(NUTTX_MB1 "${NUTTX_ELF}.mb1")
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT ${NUTTX_BIN} ${NUTTX_REALMODE_BIN}
|
||||||
|
COMMAND ${CMAKE_OBJCOPY} -R .realmode -R .note.* -O binary
|
||||||
|
${FINAL_NUTTX_ELF} ${NUTTX_BIN}
|
||||||
|
COMMAND ${CMAKE_OBJCOPY} -j .realmode -O binary ${FINAL_NUTTX_ELF}
|
||||||
|
${NUTTX_REALMODE_BIN}
|
||||||
|
DEPENDS ${FINAL_NUTTX_ELF}
|
||||||
|
COMMENT "Generating binary and realmode segments from nuttx ELF")
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT ${NUTTX_MB1}
|
||||||
|
COMMAND
|
||||||
|
${CMAKE_C_COMPILER} -m32 -no-pie -nostdlib -DNUTTX_BIN='"${NUTTX_BIN}"'
|
||||||
|
-DNUTTX_REALMODE_BIN='"${NUTTX_REALMODE_BIN}"'
|
||||||
|
${CMAKE_SOURCE_DIR}/arch/x86_64/src/common/multiboot1.S -T
|
||||||
|
${CMAKE_SOURCE_DIR}/arch/x86_64/src/common/multiboot1.ld -o ${NUTTX_MB1}
|
||||||
|
DEPENDS ${NUTTX_BIN} ${NUTTX_REALMODE_BIN}
|
||||||
|
COMMENT "Building nuttx.mb1 multiboot1 image")
|
||||||
|
add_custom_target(multiboot1 ALL DEPENDS ${NUTTX_MB1})
|
||||||
|
endif()
|
||||||
|
|||||||
Reference in New Issue
Block a user