summaryrefslogtreecommitdiffstats
path: root/c/src
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-09-16 07:13:58 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-12-08 09:25:22 +0100
commitb618d8cfc54f84d4ed03dc7b7fa510c872e6128a (patch)
tree324b769a7866c0ac2ce8f5208861e5207834d9a4 /c/src
parentscore: Statically initialize system state (diff)
downloadrtems-b618d8cfc54f84d4ed03dc7b7fa510c872e6128a.tar.bz2
Add RTEMS linker sets
Update #2408.
Diffstat (limited to 'c/src')
-rw-r--r--c/src/lib/libbsp/arm/gba/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/avr/avrtest/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/h8300/h8sim/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/lm32/milkymist/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/m68k/av5282/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash2
-rw-r--r--c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram2
-rw-r--r--c/src/lib/libbsp/m68k/csb360/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/gen68302/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/gen68340/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp2
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom2
-rw-r--r--c/src/lib/libbsp/m68k/idp/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash2
-rw-r--r--c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash2
-rw-r--r--c/src/lib/libbsp/m68k/mrm332/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mvme136/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mvme147/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mvme162/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/mvme167/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/ods68302/startup/debugger2
-rw-r--r--c/src/lib/libbsp/m68k/ods68302/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/m68k/ods68302/startup/rom2
-rw-r--r--c/src/lib/libbsp/m68k/uC5282/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/mips/csb350/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/mips/hurricane/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base2
-rw-r--r--c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/score603e/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/shared/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/ss555/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base3
-rw-r--r--c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/sh/gensh1/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/sh/gensh2/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram3
-rw-r--r--c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom3
-rw-r--r--c/src/lib/libbsp/sh/gensh4/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2
-rw-r--r--c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram2
-rw-r--r--c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim3
-rw-r--r--c/src/lib/libbsp/sparc64/shared/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds3
69 files changed, 138 insertions, 20 deletions
diff --git a/c/src/lib/libbsp/arm/gba/startup/linkcmds b/c/src/lib/libbsp/arm/gba/startup/linkcmds
index 174964a9d6..4c9fee2270 100644
--- a/c/src/lib/libbsp/arm/gba/startup/linkcmds
+++ b/c/src/lib/libbsp/arm/gba/startup/linkcmds
@@ -135,6 +135,7 @@ SECTIONS
*(.rodata1)
*(EXCLUDE_FILE(*.rodata.* *.ewram.o *.iwram.o) .rodata)
*(.rodata.* .gnu.linkonce.r*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.roda) /* deprecated: for compatibility with objcopyroda */
SORT(CONSTRUCTORS)
. = ALIGN(4);
@@ -302,6 +303,7 @@ SECTIONS
*(EXCLUDE_FILE(*.rodata.* *.ewram.o *.iwram.o) .data)
*(.data.* .gnu.linkonce.d.*)
*(.data1)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.sdata .sdata.* .gnu.linkonce.s.*)
. = ALIGN(4);
} =0xFF
diff --git a/c/src/lib/libbsp/avr/avrtest/startup/linkcmds b/c/src/lib/libbsp/avr/avrtest/startup/linkcmds
index 7ba15875b5..46548bffd3 100644
--- a/c/src/lib/libbsp/avr/avrtest/startup/linkcmds
+++ b/c/src/lib/libbsp/avr/avrtest/startup/linkcmds
@@ -172,8 +172,10 @@ SECTIONS
{
*(.data)
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.rodata) /* We need to include .rodata here if gcc is used */
*(.rodata*) /* with -fdata-sections. */
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.d*)
. = ALIGN(2);
_edata = . ;
diff --git a/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds b/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds
index 7e37798d87..982757c6df 100644
--- a/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds
+++ b/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds
@@ -93,6 +93,7 @@ SECTIONS
.data :
{
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.jcr)
*(.gnu.linkonce.d*)
CONSTRUCTORS
@@ -108,6 +109,7 @@ SECTIONS
{
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
} > sdram
diff --git a/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds b/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds
index 7c1e5e4d06..795e4de611 100644
--- a/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds
+++ b/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds
@@ -101,6 +101,7 @@ SECTIONS
.data :
{
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.jcr)
*(.gnu.linkonce.d*)
CONSTRUCTORS
@@ -116,6 +117,7 @@ SECTIONS
{
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
} > sdram
diff --git a/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds b/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds
index a8f39fb8d5..3315f37e61 100644
--- a/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds
+++ b/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds
@@ -90,6 +90,7 @@ SECTIONS
.data :
{
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.jcr)
*(.gnu.linkonce.d*)
CONSTRUCTORS
@@ -105,6 +106,7 @@ SECTIONS
{
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
} > sdram
diff --git a/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds b/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds
index 53ed639550..0534e05977 100644
--- a/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds
+++ b/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds
@@ -56,6 +56,7 @@ SECTIONS
. = ALIGN (16);
PROVIDE(_rodata_start = . );
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
PROVIDE(_erodata = . );
@@ -88,6 +89,7 @@ SECTIONS
.data SIZEOF(.tors) + ADDR(.tors):
{
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gcc_exc*)
CONSTRUCTORS
_edata = .;
diff --git a/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds b/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds
index e9c0009e1e..aea7cbf329 100644
--- a/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds
+++ b/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds
@@ -77,7 +77,7 @@ SECTIONS
.fini : { _fini = .; KEEP(*(.fini)) } > sdram
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > sdram
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > sdram
.rodata1 : { *(.rodata1) } > sdram
.tdata : {
_TLS_Data_begin = .;
@@ -154,6 +154,7 @@ SECTIONS
*/
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data .data.* .gnu.linkonce.d*)
+ KEEP (*(SORT(.rtemsrwset.*)))
SORT(CONSTRUCTORS)
} > sdram
.data1 : { *(.data1) } > sdram
diff --git a/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds b/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds
index d774e6662f..72466b9633 100644
--- a/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds
+++ b/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds
@@ -76,7 +76,7 @@ SECTIONS
.fini : { _fini = .; KEEP(*(.fini)) } > sdram
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > sdram
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > sdram
.rodata1 : { *(.rodata1) } > sdram
.tdata : {
_TLS_Data_begin = .;
@@ -153,6 +153,7 @@ SECTIONS
*/
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data .data.* .gnu.linkonce.d*)
+ KEEP (*(SORT(.rtemsrwset.*)))
SORT(CONSTRUCTORS)
} > sdram
.data1 : { *(.data1) } > sdram
diff --git a/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds b/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds
index f3721ad617..5f838bc31b 100644
--- a/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds
+++ b/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds
@@ -52,7 +52,7 @@ SECTIONS
*(.plt)
KEEP (*(.init))
KEEP (*(.fini))
- *(.rodata .rodata.* .gnu.linkonce.r.*)
+ *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*)
*(.rodata1)
*(.eh_frame_hdr)
KEEP (*(.eh_frame))
@@ -119,6 +119,7 @@ SECTIONS
*(.dynamic)
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
*(.data1)
diff --git a/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds b/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds
index bca3946b95..018d405a3c 100644
--- a/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds
+++ b/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds
@@ -78,7 +78,7 @@ SECTIONS
PROVIDE (__etext = .);
PROVIDE (_etext = .);
PROVIDE (etext = .);
- .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
+ .rodata : { *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*) }
.rodata1 : { *(.rodata1) }
.tdata : {
_TLS_Data_begin = .;
@@ -168,6 +168,7 @@ SECTIONS
.data :
{
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
SORT(CONSTRUCTORS)
}
.data1 : { *(.data1) }
diff --git a/c/src/lib/libbsp/m68k/av5282/startup/linkcmds b/c/src/lib/libbsp/m68k/av5282/startup/linkcmds
index c72601d63f..01ba1c5098 100644
--- a/c/src/lib/libbsp/m68k/av5282/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/av5282/startup/linkcmds
@@ -123,6 +123,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -157,6 +158,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash
index 3d361df509..45841ff909 100644
--- a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash
+++ b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash
@@ -122,6 +122,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -157,6 +158,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram
index 4c11cc7110..c93ba85ea8 100644
--- a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram
+++ b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram
@@ -122,6 +122,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -156,6 +157,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/csb360/startup/linkcmds b/c/src/lib/libbsp/m68k/csb360/startup/linkcmds
index 9b1c2d5e77..e06ccc3068 100644
--- a/c/src/lib/libbsp/m68k/csb360/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/csb360/startup/linkcmds
@@ -95,6 +95,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -128,6 +129,7 @@ SECTIONS
*(.shdata)
. = ALIGN (0x10);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
. = ALIGN (0x10);
*(.gcc_exc)
*(.gcc_except_table*)
diff --git a/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds b/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds
index d831f7a7fa..34f42b9dbf 100644
--- a/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds
@@ -109,6 +109,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -137,6 +138,7 @@ SECTIONS
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds b/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds
index bde2809811..5f95ed32c1 100644
--- a/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds
@@ -137,6 +137,7 @@ SECTIONS {
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -165,6 +166,7 @@ SECTIONS {
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds
index 7957b043be..fbdf14be6a 100644
--- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds
@@ -101,6 +101,7 @@ SECTIONS {
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -129,6 +130,7 @@ SECTIONS {
.data : {
_copy_start = .;
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp
index d14ed8faac..ccd08a14a2 100644
--- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp
+++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp
@@ -106,6 +106,7 @@ SECTIONS {
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -134,6 +135,7 @@ SECTIONS {
.data : AT(SIZEOF(.text)) {
_copy_start = .;
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.jcr)
*(.gcc_except_table*)
diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom
index 22637bf1d9..777700e6a1 100644
--- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom
+++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom
@@ -105,6 +105,7 @@ SECTIONS {
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -133,6 +134,7 @@ SECTIONS {
.data : AT(SIZEOF(.text)) {
_copy_start = .;
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.jcr)
*(.gcc_except_table*)
diff --git a/c/src/lib/libbsp/m68k/idp/startup/linkcmds b/c/src/lib/libbsp/m68k/idp/startup/linkcmds
index a8efe63648..8f4b037a78 100644
--- a/c/src/lib/libbsp/m68k/idp/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/idp/startup/linkcmds
@@ -106,6 +106,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -134,6 +135,7 @@ SECTIONS
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds
index d7ceb201b1..22b526885a 100644
--- a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds
@@ -130,6 +130,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -161,6 +162,7 @@ SECTIONS
*(.shdata)
. = ALIGN (0x10);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
. = ALIGN (0x10);
*(.gcc_exc)
*(.gcc_except_table*)
diff --git a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash
index 12db0e2902..57c1dafa3f 100644
--- a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash
+++ b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash
@@ -130,6 +130,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -162,6 +163,7 @@ SECTIONS
*(.shdata)
. = ALIGN (0x10);
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
. = ALIGN (0x10);
*(.gcc_exc)
*(.gcc_except_table*)
diff --git a/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds
index e10a57fad2..8b0981ba73 100644
--- a/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds
@@ -110,6 +110,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -146,6 +147,7 @@ SECTIONS
PROVIDE( _copy_start = .);
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds
index b0a48b70a3..42f085706d 100644
--- a/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds
@@ -110,6 +110,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -145,6 +146,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds
index 1fa3bef1c7..0aa079a938 100644
--- a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds
@@ -130,6 +130,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -164,6 +165,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash
index 8082860fd6..6a724a9067 100644
--- a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash
+++ b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash
@@ -134,6 +134,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -169,6 +170,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram
index d96036494b..06a62e1765 100644
--- a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram
+++ b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram
@@ -130,6 +130,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -164,6 +165,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds
index b5a228e161..3426f213ef 100644
--- a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds
@@ -121,6 +121,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -156,6 +157,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash
index 30f46877f3..c1e081dbab 100644
--- a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash
+++ b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash
@@ -117,6 +117,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -152,6 +153,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds b/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds
index aeed9a3844..3640c514a4 100644
--- a/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds
@@ -137,6 +137,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -169,6 +170,7 @@ SECTIONS
{
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds
index ad4cba6cb5..85d614d943 100644
--- a/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds
@@ -106,6 +106,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -134,6 +135,7 @@ SECTIONS
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds
index bc75072daf..fcbd073a71 100644
--- a/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds
@@ -110,6 +110,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -138,6 +139,7 @@ SECTIONS
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds
index e8ac4c5c70..fbc85271a2 100644
--- a/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds
@@ -110,6 +110,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -138,6 +139,7 @@ SECTIONS
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds
index 10a5c1deb4..1368d05831 100644
--- a/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds
@@ -113,6 +113,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -141,6 +142,7 @@ SECTIONS
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds
index d585bf9e36..b10b29d13b 100644
--- a/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds
@@ -119,6 +119,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
PROVIDE(_erodata = . );
@@ -148,6 +149,7 @@ SECTIONS
.data : {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/debugger b/c/src/lib/libbsp/m68k/ods68302/startup/debugger
index 8d156bd3c8..62fd5bc07d 100644
--- a/c/src/lib/libbsp/m68k/ods68302/startup/debugger
+++ b/c/src/lib/libbsp/m68k/ods68302/startup/debugger
@@ -50,6 +50,8 @@ SECTIONS
{
data_start = .;
*(.data)
+ KEEP (*(SORT(.rtemsroset.*)))
+ KEEP (*(SORT(.rtemsrwset.*)))
edata = .;
}
.bss (ADDR(.data) + SIZEOF(.data)) :
diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds b/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds
index c153825d39..39bdee0cbc 100644
--- a/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds
@@ -122,6 +122,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = .;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -152,6 +153,7 @@ SECTIONS
AT (ADDR(.tdata) + SIZEOF(.tdata)) {
PROVIDE (_copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/rom b/c/src/lib/libbsp/m68k/ods68302/startup/rom
index 352ae6a89a..4b0e81050f 100644
--- a/c/src/lib/libbsp/m68k/ods68302/startup/rom
+++ b/c/src/lib/libbsp/m68k/ods68302/startup/rom
@@ -52,6 +52,8 @@ SECTIONS
{
data_start = .;
*(.data)
+ KEEP (*(SORT(.rtemsroset.*)))
+ KEEP (*(SORT(.rtemsrwset.*)))
edata = .;
}
.bss (ADDR(.data) + SIZEOF(.data)) :
diff --git a/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds b/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds
index dbf90815ea..56905fc0ec 100644
--- a/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds
@@ -138,6 +138,7 @@ SECTIONS
. = ALIGN (16);
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN (16);
@@ -172,6 +173,7 @@ SECTIONS
PROVIDE( _data_dest_start = . );
PROVIDE( _copy_start = .);
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
*(.gcc_except_table*)
*(.jcr)
diff --git a/c/src/lib/libbsp/mips/csb350/startup/linkcmds b/c/src/lib/libbsp/mips/csb350/startup/linkcmds
index 47234fe8c9..384cd5b49d 100644
--- a/c/src/lib/libbsp/mips/csb350/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/csb350/startup/linkcmds
@@ -111,6 +111,7 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
} >ram
@@ -139,6 +140,7 @@ SECTIONS
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
} >ram
diff --git a/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds b/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds
index c0da8b774f..e396379a1f 100644
--- a/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds
@@ -108,6 +108,7 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
} >ram
@@ -136,6 +137,7 @@ SECTIONS
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
} >ram
diff --git a/c/src/lib/libbsp/mips/hurricane/startup/linkcmds b/c/src/lib/libbsp/mips/hurricane/startup/linkcmds
index f2612488cc..2706d8103f 100644
--- a/c/src/lib/libbsp/mips/hurricane/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/hurricane/startup/linkcmds
@@ -97,6 +97,7 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
}
@@ -124,6 +125,7 @@ SECTIONS
.data : {
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
SORT(CONSTRUCTORS)
}
diff --git a/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds b/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds
index 3c08ce4075..d7039ab354 100644
--- a/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds
@@ -97,6 +97,7 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
}
@@ -124,6 +125,7 @@ SECTIONS
.data : {
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
SORT(CONSTRUCTORS)
}
diff --git a/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds b/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds
index af99da5220..a0f4c412ae 100644
--- a/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds
@@ -97,6 +97,7 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
}
@@ -124,6 +125,7 @@ SECTIONS
.data : {
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
SORT(CONSTRUCTORS)
}
diff --git a/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds b/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds
index 15be77d76a..e1e489c1fc 100644
--- a/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds
+++ b/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds
@@ -130,7 +130,7 @@ SECTIONS
{
KEEP (*(.fini))
} =0
- .rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) }
+ .rodata : { *(.rodata) *(.rodata.*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) }
.rodata1 : { *(.rodata1) }
.tdata : {
_TLS_Data_begin = .;
@@ -156,6 +156,7 @@ SECTIONS
{
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
SORT(CONSTRUCTORS)
}
diff --git a/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds b/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds
index 74e5485395..662d097619 100644
--- a/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds
+++ b/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds
@@ -193,7 +193,7 @@ SECTIONS
{
PROVIDE (__ram_rodata_start = ABSOLUTE(.));
. = ALIGN(32 / 8);
- *(.rodata .rodata.* .gnu.linkonce.r.*)
+ *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*)
*(.rodata1)
} > onchip_memory_0
@@ -227,6 +227,7 @@ SECTIONS
*(.got.plt) *(.got)
*(.data1)
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
_gp = ABSOLUTE(. + 0x8000);
PROVIDE(gp = _gp);
diff --git a/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds b/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds
index ae3fe06700..84cbc97fdf 100644
--- a/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds
@@ -93,7 +93,7 @@ SECTIONS
} > CODE
.fini : { _fini = .; *(.fini) } >CODE
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > CODE
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > CODE
.rodata1 : { *(.rodata1) } > CODE
.tdata : {
_TLS_Data_begin = .;
@@ -142,6 +142,7 @@ SECTIONS
{
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
CONSTRUCTORS
} > CODE
diff --git a/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds b/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds
index 775374cf72..69644e37d8 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds
@@ -62,7 +62,7 @@ SECTIONS
} =0
.init : { _init = .; *(.init) }
.fini : { _fini = .; *(.fini) }
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) }
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) }
.rodata1 : { *(.rodata1) }
.tdata : {
_TLS_Data_begin = .;
@@ -109,6 +109,7 @@ SECTIONS
{
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d.*)
CONSTRUCTORS
}
diff --git a/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base b/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base
index 4c186efae6..4ded9082d4 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base
+++ b/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base
@@ -87,6 +87,7 @@ SECTIONS {
* BSP: Moved into .text from .*
*/
*(.rodata .rodata.* .gnu.linkonce.r.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.rodata1)
*(.interp)
*(.note.gnu.build-id)
@@ -223,6 +224,7 @@ SECTIONS {
PROVIDE_HIDDEN (__fini_array_end = .);
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
diff --git a/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds b/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds
index fc8f68e8ed..bed8580827 100644
--- a/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds
@@ -37,6 +37,7 @@ SECTIONS
*(.text*)
*(.rodata*)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
/*
* Special FreeBSD sysctl sections.
@@ -208,6 +209,7 @@ SECTIONS
data.start = .;
*(.data)
*(.data1)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.data.* .gnu.linkonce.d.*)
data.end = .;
} > RAM
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds b/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds
index 45332bceaa..537e4db664 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds
@@ -125,6 +125,7 @@ SECTIONS
*(.shdata)
*(.rodata*)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.descriptors)
*(rom_ver)
_erodata = .;
@@ -207,6 +208,7 @@ SECTIONS
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.data1)
PROVIDE (__EXCEPT_START__ = .);
diff --git a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds
index fc14155805..de52e4664a 100644
--- a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds
@@ -125,6 +125,7 @@ SECTIONS
*(.shdata)
*(.rodata)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.descriptors)
*(rom_ver)
_erodata = .;
@@ -269,6 +270,7 @@ SECTIONS
*(.data)
*(.data1)
*(.data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
PROVIDE (__SDATA_START__ = .);
*(.sdata .sdata.* .gnu.linkonce.s.*)
data.end = .;
diff --git a/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds b/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds
index 4af6976cb1..6e1e877f09 100644
--- a/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds
@@ -95,7 +95,7 @@ SECTIONS
.rodata :
{
- *(.rodata .rodata.* .gnu.linkonce.r.*)
+ *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*)
*(.rodata1)
. = ALIGN (bsp_section_align);
__rodata_end = .;
@@ -127,6 +127,7 @@ SECTIONS
{
__data_start = .;
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
*(.data1)
diff --git a/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds b/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds
index 46b5e381de..70065572fc 100644
--- a/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds
@@ -101,7 +101,7 @@ SECTIONS
} >RAM
.init : { _init = .; __init = .; *(.init) } >RAM
.fini : { _fini = .; __fini = .; *(.fini) } >RAM
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } >RAM
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } >RAM
.rodata1 : { *(.rodata1) } >RAM
.tdata : {
_TLS_Data_begin = .;
@@ -146,6 +146,7 @@ SECTIONS
{
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d.*)
CONSTRUCTORS
} >RAM
diff --git a/c/src/lib/libbsp/powerpc/shared/startup/linkcmds b/c/src/lib/libbsp/powerpc/shared/startup/linkcmds
index 34969e1cf6..d0d22a774e 100644
--- a/c/src/lib/libbsp/powerpc/shared/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/shared/startup/linkcmds
@@ -77,7 +77,7 @@ SECTIONS
.fini : { _fini = .; KEEP(*(.fini)) } > CODE
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > CODE
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > CODE
.rodata1 : { *(.rodata1) } > CODE
.tdata : {
@@ -157,6 +157,7 @@ SECTIONS
*/
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data .data.* .gnu.linkonce.d*)
+ KEEP (*(SORT(.rtemsrwset.*)))
SORT(CONSTRUCTORS)
} > CODE
.data1 : { *(.data1) } > CODE
diff --git a/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds b/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds
index 809b9a33bb..ebc9e816a4 100644
--- a/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds
@@ -121,6 +121,7 @@ SECTIONS
*(.shdata)
*(.rodata*)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.descriptors)
*(rom_ver)
_erodata = .;
@@ -171,6 +172,7 @@ SECTIONS
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.data1)
PROVIDE (__SDATA_START__ = .);
diff --git a/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base b/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base
index 979989fe07..fd1ba71d52 100644
--- a/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base
+++ b/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base
@@ -78,7 +78,7 @@ SECTIONS {
/*
* BSP: Moved into .text from .*
*/
- *(.rodata .rodata.* .gnu.linkonce.r.*)
+ *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*)
*(.rodata1)
*(.interp)
*(.note.gnu.build-id)
@@ -218,6 +218,7 @@ SECTIONS {
PROVIDE_HIDDEN (__fini_array_end = .);
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
diff --git a/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds b/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds
index 55b8f887cd..a22ee3f7c9 100644
--- a/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds
@@ -91,7 +91,7 @@ SECTIONS
} > RAM
/* Miscellaneous read-only data */
- .rodata : { *(.rodata.* .gnu.linkonce.r*) } > RAM
+ .rodata : { *(.rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r*) } > RAM
.rodata1 : { *(.rodata1) } > RAM
.tdata : {
@@ -139,6 +139,7 @@ SECTIONS
.data : { PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
} > RAM
diff --git a/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds b/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
index 63d187cacb..ce88a43035 100644
--- a/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
@@ -91,7 +91,7 @@ SECTIONS
} > RAM
/* Miscellaneous read-only data */
- .rodata : { *(.rodata.* .gnu.linkonce.r*) } > RAM
+ .rodata : { *(.rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r*) } > RAM
.rodata1 : { *(.rodata1) } > RAM
.tdata : {
@@ -139,6 +139,7 @@ SECTIONS
.data : { PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
} > RAM
diff --git a/c/src/lib/libbsp/sh/gensh1/startup/linkcmds b/c/src/lib/libbsp/sh/gensh1/startup/linkcmds
index 80a241c896..d5945b37de 100644
--- a/c/src/lib/libbsp/sh/gensh1/startup/linkcmds
+++ b/c/src/lib/libbsp/sh/gensh1/startup/linkcmds
@@ -131,7 +131,7 @@ SECTIONS
.fini . : { KEEP(*(.fini)) } > ram =0
.ctors . : { KEEP(*(.ctors)) } > ram =0
.dtors . : { KEEP(*(.dtors)) } > ram =0
- .rodata . : { *(.rodata*) *(.gnu.linkonce.r*) } > ram
+ .rodata . : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram
.rodata1 . : { *(.rodata1) } > ram
.tdata : {
__TLS_Data_begin = .;
@@ -155,6 +155,7 @@ SECTIONS
.data . :
{
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gcc_exc*)
___EH_FRAME_BEGIN__ = .;
*(.eh_fram*)
diff --git a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds
index e9f73f9397..d58f25e48f 100644
--- a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds
+++ b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds
@@ -142,7 +142,7 @@ SECTIONS
.fini . : { KEEP(*(.fini)) } > ram =0
.ctors . : { KEEP(*(.ctors)) } > ram =0
.dtors . : { KEEP(*(.dtors)) } > ram =0
- .rodata . : { *(.rodata*) *(.gnu.linkonce.r*) } > ram
+ .rodata . : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram
.rodata1 . : { *(.rodata1) } > ram
.tdata : {
__TLS_Data_begin = .;
@@ -166,6 +166,7 @@ SECTIONS
.data . :
{
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gcc_exc*)
___EH_FRAME_BEGIN__ = .;
*(.eh_fram*)
diff --git a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram
index c962e8f9a0..d7449077da 100644
--- a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram
+++ b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram
@@ -139,7 +139,7 @@ SECTIONS
_etext = .;
PROVIDE (etext = .);
.fini . : { *(.fini) } > ram =0
- .rodata . : { *(.rodata) *(.gnu.linkonce.r*) } > ram
+ .rodata . : { *(.rodata) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram
.rodata1 . : { *(.rodata1) } > ram
.tdata : {
__TLS_Data_begin = .;
@@ -163,6 +163,7 @@ SECTIONS
.data . :
{
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
CONSTRUCTORS
} > ram
diff --git a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom
index 321760aa6f..c59613b3f2 100644
--- a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom
+++ b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom
@@ -140,7 +140,7 @@ SECTIONS
_etext = .;
PROVIDE (etext = .);
.fini . : { *(.fini) } > ram =0
- .rodata . : { *(.rodata) *(.gnu.linkonce.r*) } > ram
+ .rodata . : { *(.rodata) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram
.rodata1 . : { *(.rodata1) } > ram
.tdata : {
__TLS_Data_begin = .;
@@ -164,6 +164,7 @@ SECTIONS
.data . :
{
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
CONSTRUCTORS
} > ram
diff --git a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds
index 7ddb95d9db..40b764e9ff 100644
--- a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds
+++ b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds
@@ -87,6 +87,7 @@ SECTIONS
{
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
} > ram
.tdata : {
@@ -113,6 +114,7 @@ SECTIONS
{
copy_start = .;
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gcc_exc*)
___EH_FRAME_BEGIN__ = .;
*(.eh_fram*)
diff --git a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom
index a84b502717..ee61498ad3 100644
--- a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom
+++ b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom
@@ -102,6 +102,7 @@ SECTIONS
{
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN(32);
} > rom
@@ -162,6 +163,7 @@ SECTIONS
copy_start = .;
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
SORT(CONSTRUCTORS)
copy_end = .;
diff --git a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram
index 30c315e0d4..65656247be 100644
--- a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram
+++ b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram
@@ -89,6 +89,7 @@ SECTIONS
{
*(.rodata)
*(.rodata.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
. = ALIGN(32);
} > ram
@@ -147,6 +148,7 @@ SECTIONS
{
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
SORT(CONSTRUCTORS)
copy_end = .;
diff --git a/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim b/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim
index 5b0d4d7ff7..c9f9ad567a 100644
--- a/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim
+++ b/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim
@@ -121,7 +121,7 @@ SECTIONS
} =0
_etext = .;
PROVIDE (etext = .);
- .rodata . : { *(.rodata*) .rodata.* *(.gnu.linkonce.r*) } > ram
+ .rodata . : { *(.rodata*) .rodata.* KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram
.rodata1 . : { *(.rodata1) } > ram
.tdata : {
__TLS_Data_begin = .;
@@ -145,6 +145,7 @@ SECTIONS
.data . :
{
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gcc_exc*)
___EH_FRAME_BEGIN__ = .;
*(.eh_fram*)
diff --git a/c/src/lib/libbsp/sparc64/shared/startup/linkcmds b/c/src/lib/libbsp/sparc64/shared/startup/linkcmds
index 95c8913f3b..24e0a0147d 100644
--- a/c/src/lib/libbsp/sparc64/shared/startup/linkcmds
+++ b/c/src/lib/libbsp/sparc64/shared/startup/linkcmds
@@ -138,6 +138,7 @@ SECTIONS
_rodata_start = . ;
*(.rodata*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.gnu.linkonce.r*)
_erodata = ALIGN( 0x10 ) ;
@@ -173,6 +174,7 @@ SECTIONS
_data_start = . ;
*(.data)
*(.data*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.rodata) /* We need to include .rodata here if gcc is used */
*(.rodata*) /* with -fdata-sections. */
*(.gnu.linkonce.d*)
diff --git a/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds b/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds
index fe0f22b942..ff7bb85211 100644
--- a/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds
+++ b/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds
@@ -89,7 +89,7 @@ SECTIONS
*(.call_table_text)
}
.fini : { KEEP (*(.fini)) } =0
- .rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) }
+ .rodata : { *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*) }
.rodata1 : { *(.rodata1) }
.tdata : {
__TLS_Data_begin = .;
@@ -111,6 +111,7 @@ SECTIONS
{
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
CONSTRUCTORS
}