@@ -183,40 +183,38 @@ set(ESP_SOC_LD_DIR ${ESP_HAL_3RDPARTY_REPO}/components/soc/${CHIP_SERIES}/ld)
183183set (ESP_RISCV_LD_DIR ${ESP_HAL_3RDPARTY_REPO} /components/riscv/ld)
184184
185185if (CONFIG_ESP32P4_REV_MIN_300)
186- target_link_options (
187- nuttx
188- PRIVATE
189- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.eco5.ld
190- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.eco5.libc.ld
191- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.eco5.libgcc.ld
192- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.eco5.newlib.ld )
186+ set (_esp32p4_rom_ld_files
187+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.eco5.ld
188+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.eco5.libc.ld
189+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.eco5.libgcc.ld
190+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.eco5.newlib.ld)
193191else ()
194- target_link_options (
195- nuttx
196- PRIVATE
197- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.ld
198- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.libc.ld
199- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.libgcc.ld
200- -T${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.newlib.ld )
192+ set (_esp32p4_rom_ld_files
193+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.ld
194+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.libc.ld
195+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.libgcc.ld
196+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.newlib.ld)
201197endif ()
202198
203- target_link_options (
204- nuttx
205- PRIVATE
206- -T ${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.api.ld
207- -T ${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.version.ld
208- -T ${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.libc-suboptimal_for_misaligned_mem.ld
209- -T ${ESP_ROM_LD_DIR}/${CHIP_SERIES}.rom.systimer.ld
210- -T ${ESP_SOC_LD_DIR}/${CHIP_SERIES}.peripherals.ld
211- -T ${ESP_RISCV_LD_DIR}/rom.api.ld )
199+ list (
200+ APPEND
201+ _esp32p4_rom_ld_files
202+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.api.ld
203+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.version.ld
204+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.libc-suboptimal_for_misaligned_mem.ld
205+ ${ESP_ROM_LD_DIR} /${CHIP_SERIES} .rom.systimer.ld
206+ ${ESP_SOC_LD_DIR} /${CHIP_SERIES} .peripherals.ld
207+ ${ESP_RISCV_LD_DIR} /rom.api.ld)
212208
213209# Review the path below when ULP core is implemented on CMake
214210if (CONFIG_ESPRESSIF_USE_LP_CORE)
215- target_link_options (
216- nuttx PRIVATE
217- -T${TOPDIR}/arch/${CONFIG_ARCH}/src/board/scripts/ulp_aliases.ld )
211+ list (APPEND _esp32p4_rom_ld_files
212+ ${TOPDIR} /arch/${CONFIG_ARCH} /src/board/scripts/ulp_aliases.ld)
218213endif ()
219214
215+ # Add these files to the GLOBAL PROPERTY LD_SCRIPT
216+ set_property (GLOBAL APPEND PROPERTY LD_SCRIPT ${_esp32p4_rom_ld_files} )
217+
220218# ##############################################################################
221219# HAL Source Files (from hal_esp32p4.mk CHIP_CSRCS)
222220# ##############################################################################
@@ -505,6 +503,7 @@ function(nuttx_generate_preprocess_target)
505503 COMMAND
506504 ${PREPROCESS} -I${CMAKE_BINARY_DIR}/include -I${NUTTX_DIR}/include
507505 -I${NUTTX_CHIP_ABS_DIR} ${LD_SCRIPT_HAL_INCLUDE}
508- ${LD_SCRIPT_ADDITIONAL_INCLUDE} ${SOURCE_FILE} > ${TARGET_FILE}
506+ ${LD_SCRIPT_ADDITIONAL_INCLUDE} -D__NuttX__ ${SOURCE_FILE} >
507+ ${TARGET_FILE}
509508 DEPENDS ${SOURCE_FILE} ${DEPENDS} )
510509endfunction ()
0 commit comments