boards/xtensa: fix the issue of undefined symbol reference errors occurring during compilation and linking phase when the configuration (CONFIG_ESP32S3_APP_FORMAT_LEGACY=y) is enabled.
Some checks failed
Build / Fetch-Source (push) Has been cancelled
Build / Linux-Arch (push) Has been cancelled
Build / Linux (push) Has been cancelled
Build / macOS-Arch (push) Has been cancelled
Build / macOS (push) Has been cancelled
Build / msys2-Arch (push) Has been cancelled
Build / msys2 (push) Has been cancelled
Build / msvc-Arch (push) Has been cancelled
Build / msvc (push) Has been cancelled

This commit is contained in:
nuttxs
2025-09-10 19:14:08 +08:00
committed by Xiang Xiao
parent 9d01d17188
commit 9bedf16be9
2 changed files with 18 additions and 0 deletions

View File

@@ -308,16 +308,25 @@ SECTIONS
/* C++ constructor and destructor tables, properly ordered: */
_sinit = ABSOLUTE(.);
__init_array_start = ABSOLUTE(.);
KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
_einit = ABSOLUTE(.);
__init_array_end = ABSOLUTE(.);
KEEP (*crtbegin.o(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
/* System init functions registered via ESP_SYSTEM_INIT_FN */
. = ALIGN(4);
_esp_system_init_fn_array_start = ABSOLUTE(.);
KEEP (*(SORT_BY_INIT_PRIORITY(.esp_system_init_fn.*)))
_esp_system_init_fn_array_end = ABSOLUTE(.);
/* C++ exception handlers table: */
__XT_EXCEPTION_DESCS_ = ABSOLUTE(.);

View File

@@ -331,16 +331,25 @@ SECTIONS
/* C++ constructor and destructor tables, properly ordered: */
_sinit = ABSOLUTE(.);
__init_array_start = ABSOLUTE(.);
KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
__init_array_end = ABSOLUTE(.);
_einit = ABSOLUTE(.);
KEEP (*crtbegin.o(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
/* System init functions registered via ESP_SYSTEM_INIT_FN */
. = ALIGN(4);
_esp_system_init_fn_array_start = ABSOLUTE(.);
KEEP (*(SORT_BY_INIT_PRIORITY(.esp_system_init_fn.*)))
_esp_system_init_fn_array_end = ABSOLUTE(.);
/* C++ exception handlers table: */
__XT_EXCEPTION_DESCS_ = ABSOLUTE(.);