cmake: Add function for adding snippets to the linker file
Allows snippets to be placed in different locations: - The noinit, rwdata and rodata output sections - Two different locations for placing custom output sections, one location for RAM and another for all other sections. Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
This commit is contained in:
parent
f888f9ab27
commit
f2a1572ac2
8 changed files with 237 additions and 0 deletions
|
@ -110,6 +110,10 @@ SECTIONS
|
|||
*(".rodata.*")
|
||||
*(.gnu.linkonce.r.*)
|
||||
|
||||
/* Located in generated directory. This file is populated by the
|
||||
* zephyr_linker_sources() Cmake function.
|
||||
*/
|
||||
#include <snippets-rodata.ld>
|
||||
#ifdef CONFIG_SOC_RODATA_LD
|
||||
#include <soc-rodata.ld>
|
||||
#endif
|
||||
|
@ -135,6 +139,10 @@ SECTIONS
|
|||
*(.sdata .sdata.* .gnu.linkonce.s.*)
|
||||
*(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
|
||||
|
||||
/* Located in generated directory. This file is populated by the
|
||||
* zephyr_linker_sources() Cmake function.
|
||||
*/
|
||||
#include <snippets-rwdata.ld>
|
||||
#ifdef CONFIG_SOC_RWDATA_LD
|
||||
#include <soc-rwdata.ld>
|
||||
#endif
|
||||
|
@ -143,6 +151,10 @@ SECTIONS
|
|||
|
||||
#include <linker/common-ram.ld>
|
||||
|
||||
/* Located in generated directory. This file is populated by the
|
||||
* zephyr_linker_sources() Cmake function.
|
||||
*/
|
||||
#include <snippets-ram-sections.ld>
|
||||
__data_ram_end = .;
|
||||
|
||||
SECTION_DATA_PROLOGUE(_BSS_SECTION_NAME,(NOLOAD),)
|
||||
|
@ -174,6 +186,10 @@ SECTIONS
|
|||
*(.noinit)
|
||||
*(".noinit.*")
|
||||
|
||||
/* Located in generated directory. This file is populated by the
|
||||
* zephyr_linker_sources() Cmake function.
|
||||
*/
|
||||
#include <snippets-noinit.ld>
|
||||
#ifdef CONFIG_SOC_NOINIT_LD
|
||||
#include <soc-noinit.ld>
|
||||
#endif
|
||||
|
@ -183,6 +199,11 @@ SECTIONS
|
|||
_image_ram_end = .;
|
||||
_end = .; /* end of image */
|
||||
|
||||
/* Located in generated directory. This file is populated by the
|
||||
* zephyr_linker_sources() Cmake function.
|
||||
*/
|
||||
#include <snippets-sections.ld>
|
||||
|
||||
#ifdef CONFIG_GEN_ISR_TABLES
|
||||
#include <linker/intlist.ld>
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue