diff --git a/bare-metal-bsp b/bare-metal-bsp index 7d55172..db3a2d6 160000 --- a/bare-metal-bsp +++ b/bare-metal-bsp @@ -1 +1 @@ -Subproject commit 7d55172d51290ab1e9d36d40c600da0d7a386b69 +Subproject commit db3a2d68d6c7c73e32d4e2e0aae3a10e7de86576 diff --git a/hello-world/CMakeLists.txt b/hello-world/CMakeLists.txt index 51e1a58..da4b83b 100644 --- a/hello-world/CMakeLists.txt +++ b/hello-world/CMakeLists.txt @@ -1,11 +1,24 @@ cmake_minimum_required(VERSION 3.21) project(hello-world C) set(TARGET hello) +option(HAVE_NO_INIT_FINI "Enable NO_INIT_FINI" OFF) + +if(HAVE_NO_INIT_FINI) + #if HAVE_NO_INIT_FINI is ON + add_definitions(-DHAVE_NO_INIT_FINI) +endif() + + add_executable(${TARGET} hello.c) +target_compile_options(${TARGET} PRIVATE -mcmodel=medany) +#target_compile_options(${TARGET} PRIVATE -mcmodel=medany -fPIC) + set(BOARD "iss" CACHE STRING "Target board") +message(STATUS, " board ${BOARD}") add_subdirectory(../bare-metal-bsp bsp) target_link_libraries(${TARGET} PRIVATE bsp) +target_link_options(${TARGET} PRIVATE -Wl,-Map=${TARGET}.map) add_custom_command(TARGET ${TARGET} POST_BUILD COMMAND ${CMAKE_OBJDUMP} -S ${TARGET}.elf > ${TARGET}.dis