[build] Allow for the existence of small-data sections

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown
2025-06-24 14:40:18 +01:00
parent d3e10ebd35
commit 8df3b96402
5 changed files with 30 additions and 0 deletions

View File

@@ -88,6 +88,8 @@ SECTIONS {
__rodata16 = .;
*(.rodata16)
*(.rodata16.*)
*(.srodata)
*(.srodata.*)
*(.rodata)
*(.rodata.*)
}
@@ -95,6 +97,8 @@ SECTIONS {
__data16 = .;
*(.data16)
*(.data16.*)
*(.sdata)
*(.sdata.*)
*(.data)
*(.data.*)
KEEP(*(SORT(.tbl.*))) /* Various tables. See include/tables.h */
@@ -107,6 +111,8 @@ SECTIONS {
_bss16 = .;
*(.bss16)
*(.bss16.*)
*(.sbss)
*(.sbss.*)
*(.bss)
*(.bss.*)
*(COMMON)

View File

@@ -38,6 +38,8 @@ SECTIONS {
/* Read-only data */
.rodata : {
_rodata = .;
*(.srodata)
*(.srodata.*)
*(.rodata)
*(.rodata.*)
_erodata = .;
@@ -46,6 +48,8 @@ SECTIONS {
/* Writable data */
.data : {
_data = .;
*(.sdata)
*(.sdata.*)
*(.data)
*(.data.*)
KEEP(*(SORT(.tbl.*))) /* Various tables. See include/tables.h */
@@ -78,6 +82,8 @@ SECTIONS {
/* Uninitialised data */
.bss {
_bss = .;
*(.sbss)
*(.sbss.*)
*(.bss)
*(.bss.*)
*(COMMON)

View File

@@ -130,8 +130,12 @@ SECTIONS {
. += 1; /* Prevent NULL being valid */
*(.text)
*(.text.*)
*(.srodata)
*(.srodata.*)
*(.rodata)
*(.rodata.*)
*(.sdata)
*(.sdata.*)
*(.data)
*(.data.*)
KEEP(*(SORT(.tbl.*))) /* Various tables. See include/tables.h */
@@ -139,6 +143,8 @@ SECTIONS {
KEEP(*(.provided.*))
_mtextdata = .;
} .bss.textdata (NOLOAD) : AT ( _bss_textdata_lma ) {
*(.sbss)
*(.sbss.*)
*(.bss)
*(.bss.*)
*(COMMON)

View File

@@ -39,6 +39,8 @@ SECTIONS {
. = ALIGN ( _page_align );
.rodata : {
_rodata = .;
*(.srodata)
*(.srodata.*)
*(.rodata)
*(.rodata.*)
_erodata = .;
@@ -52,6 +54,8 @@ SECTIONS {
. = ALIGN ( _page_align );
.data : {
_data = .;
*(.sdata)
*(.sdata.*)
*(.data)
*(.data.*)
KEEP(*(SORT(.tbl.*))) /* Various tables. See include/tables.h */
@@ -68,6 +72,8 @@ SECTIONS {
. = ALIGN ( _page_align );
.bss : {
_bss = .;
*(.sbss)
*(.sbss.*)
*(.bss)
*(.bss.*)
*(COMMON)

View File

@@ -29,6 +29,8 @@ SECTIONS {
. = ALIGN ( _max_align );
.rodata : {
_rodata = .;
*(.srodata)
*(.srodata.*)
*(.rodata)
*(.rodata.*)
_erodata = .;
@@ -45,6 +47,8 @@ SECTIONS {
. = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE));
.data : {
_data = .;
*(.sdata)
*(.sdata.*)
*(.data)
*(.data.*)
KEEP(*(SORT(.tbl.*)))
@@ -61,6 +65,8 @@ SECTIONS {
. = ALIGN ( _max_align );
.bss : {
_bss = .;
*(.sbss)
*(.sbss.*)
*(.bss)
*(.bss.*)
*(COMMON)