summaryrefslogtreecommitdiffstats
path: root/c
diff options
context:
space:
mode:
authorJoel Sherrill <joel@rtems.org>2017-11-22 09:35:04 -0600
committerJoel Sherrill <joel@rtems.org>2017-11-27 09:51:47 -0600
commitd9769c96cf8370a5231fe8590c36d3706f828565 (patch)
treec195307e382d64cfb7b005d6a46d5cdfde6aac17 /c
parentaclocal/check-bsps.m4: Do not rely on bsp_specs to find BSP families (diff)
downloadrtems-d9769c96cf8370a5231fe8590c36d3706f828565.tar.bz2
*/*/bsp_specs: Increase similarity to ease future analysis
Done: arm bfin epiphany i386 lm32 m32c mips moxie nios2 or1k powerpc riscv sh sparc sparc64 v850 To do: m68k Differences noted: + endfile was sometimes before startfile + endfile sometimes was hard-coded and did not have -qrtems version + Should -e XXX (e.g. entry point) be in linkcmds? + Should -u XXX (e.g. undefined symbols) be in linkcmds? + Typos: Odd spacing, "old_endfiles" typo, and *(old_endfiles) (not %) + nios2: Referenced crtnn.o not crtn.o (error) Need to revisit: + m32c, moxie, sparc64 includes !nostdlib which is not used elsewhere + sh has -EL/-EB mapping. Why needed? + sparc64 didn't include crti.o/crtn.o but it is part of toolset + v850 uses something like this for link and end_file: "%{qrtems: %(old_link)}" This means that these are unnecessary. Try this on all. + mips uses old_link all the time also. + arm/tms750 adds -EB. + powerpc: Why do we have rtems_crt* and not use something from GCC? Updates #3520.
Diffstat (limited to 'c')
-rw-r--r--c/src/lib/libbsp/bfin/TLL6527M/bsp_specs2
-rw-r--r--c/src/lib/libbsp/bfin/bf537Stamp/bsp_specs2
-rw-r--r--c/src/lib/libbsp/bfin/eZKit533/bsp_specs2
-rw-r--r--c/src/lib/libbsp/epiphany/epiphany_sim/bsp_specs2
-rw-r--r--c/src/lib/libbsp/i386/pc386/bsp_specs6
-rw-r--r--c/src/lib/libbsp/m32c/m32cbsp/bsp_specs8
-rw-r--r--c/src/lib/libbsp/mips/hurricane/bsp_specs6
-rw-r--r--c/src/lib/libbsp/moxie/moxiesim/bsp_specs4
-rw-r--r--c/src/lib/libbsp/nios2/nios2_iss/bsp_specs2
-rw-r--r--c/src/lib/libbsp/or1k/generic_or1k/bsp_specs2
-rw-r--r--c/src/lib/libbsp/powerpc/beatnik/bsp_specs6
-rw-r--r--c/src/lib/libbsp/powerpc/gen83xx/bsp_specs4
-rw-r--r--c/src/lib/libbsp/powerpc/haleakala/bsp_specs4
-rw-r--r--c/src/lib/libbsp/powerpc/motorola_powerpc/bsp_specs6
-rw-r--r--c/src/lib/libbsp/powerpc/mvme3100/bsp_specs6
-rw-r--r--c/src/lib/libbsp/powerpc/mvme5500/bsp_specs6
-rw-r--r--c/src/lib/libbsp/powerpc/psim/bsp_specs6
-rw-r--r--c/src/lib/libbsp/powerpc/qemuppc/bsp_specs6
-rw-r--r--c/src/lib/libbsp/powerpc/qoriq/bsp_specs5
-rw-r--r--c/src/lib/libbsp/powerpc/virtex/bsp_specs3
-rw-r--r--c/src/lib/libbsp/riscv/riscv_generic/bsp_specs2
-rw-r--r--c/src/lib/libbsp/sparc/erc32/bsp_specs6
-rw-r--r--c/src/lib/libbsp/sparc/leon2/bsp_specs6
-rw-r--r--c/src/lib/libbsp/sparc/leon3/bsp_specs6
-rw-r--r--c/src/lib/libbsp/sparc64/niagara/bsp_specs10
-rw-r--r--c/src/lib/libbsp/sparc64/usiii/bsp_specs10
-rw-r--r--c/src/lib/libbsp/v850/gdbv850sim/bsp_specs8
27 files changed, 64 insertions, 72 deletions
diff --git a/c/src/lib/libbsp/bfin/TLL6527M/bsp_specs b/c/src/lib/libbsp/bfin/TLL6527M/bsp_specs
index 32c5f572cc..c2f80ebf2b 100644
--- a/c/src/lib/libbsp/bfin/TLL6527M/bsp_specs
+++ b/c/src/lib/libbsp/bfin/TLL6527M/bsp_specs
@@ -10,4 +10,4 @@
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: %(old_endfiles)} %{qrtems: crtend.o%s crtn.o%s }
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/bfin/bf537Stamp/bsp_specs b/c/src/lib/libbsp/bfin/bf537Stamp/bsp_specs
index 32c5f572cc..c2f80ebf2b 100644
--- a/c/src/lib/libbsp/bfin/bf537Stamp/bsp_specs
+++ b/c/src/lib/libbsp/bfin/bf537Stamp/bsp_specs
@@ -10,4 +10,4 @@
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: %(old_endfiles)} %{qrtems: crtend.o%s crtn.o%s }
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/bfin/eZKit533/bsp_specs b/c/src/lib/libbsp/bfin/eZKit533/bsp_specs
index 32c5f572cc..c2f80ebf2b 100644
--- a/c/src/lib/libbsp/bfin/eZKit533/bsp_specs
+++ b/c/src/lib/libbsp/bfin/eZKit533/bsp_specs
@@ -10,4 +10,4 @@
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: %(old_endfiles)} %{qrtems: crtend.o%s crtn.o%s }
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/epiphany/epiphany_sim/bsp_specs b/c/src/lib/libbsp/epiphany/epiphany_sim/bsp_specs
index 082653ad22..975c0b2b51 100644
--- a/c/src/lib/libbsp/epiphany/epiphany_sim/bsp_specs
+++ b/c/src/lib/libbsp/epiphany/epiphany_sim/bsp_specs
@@ -10,4 +10,4 @@
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: *(old_endfiles)} %{qrtems: crtend.o%s crtn.o%s }
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/i386/pc386/bsp_specs b/c/src/lib/libbsp/i386/pc386/bsp_specs
index 0b334ed140..5154de8c55 100644
--- a/c/src/lib/libbsp/i386/pc386/bsp_specs
+++ b/c/src/lib/libbsp/i386/pc386/bsp_specs
@@ -2,12 +2,12 @@
%rename startfile old_startfile
%rename link old_link
-*endfile:
-crtend.o%s crtn.o%s
-
*startfile:
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s -e start}}
*link:
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+
+*endfile:
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/m32c/m32cbsp/bsp_specs b/c/src/lib/libbsp/m32c/m32cbsp/bsp_specs
index 640e73a53d..bd44bf8af9 100644
--- a/c/src/lib/libbsp/m32c/m32cbsp/bsp_specs
+++ b/c/src/lib/libbsp/m32c/m32cbsp/bsp_specs
@@ -6,10 +6,8 @@
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s crtbegin.o%s -e _start}}
-*endfile:
-%{!qrtems: %(old_endfile)} \
-%{!nostdlib: %{qrtems: crtend.o%s}}
-
*link:
-%(old_link) %{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+*endfile:
+%{!qrtems: %(old_endfile)} %{!nostdlib: %{qrtems: crtend.o%s}}
diff --git a/c/src/lib/libbsp/mips/hurricane/bsp_specs b/c/src/lib/libbsp/mips/hurricane/bsp_specs
index 1105851c41..17cdbf8dfd 100644
--- a/c/src/lib/libbsp/mips/hurricane/bsp_specs
+++ b/c/src/lib/libbsp/mips/hurricane/bsp_specs
@@ -3,11 +3,11 @@
%rename link old_link
*startfile:
-%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: \
-start.o%s crti.o%s crtbegin.o%s -e start}}
+%{!qrtems: %(old_startfile)} \
+%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s -e start}}
*link:
%(old_link) %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s }
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/moxie/moxiesim/bsp_specs b/c/src/lib/libbsp/moxie/moxiesim/bsp_specs
index 0bcb1f9ac5..d3e0ec0085 100644
--- a/c/src/lib/libbsp/moxie/moxiesim/bsp_specs
+++ b/c/src/lib/libbsp/moxie/moxiesim/bsp_specs
@@ -7,5 +7,7 @@
%{!nostdlib: %{qrtems: start.o%s -e _start crtbegin.o%s}}
*link:
-%(old_link) %{!qrtems: %(old_link)} %{qrtems: crtend.o%s -dc -dp -N}
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+*endfile:
+%{!qrtems: %(old_endfile)} %{!nostdlib: %{qrtems: crtend.o%s}}
diff --git a/c/src/lib/libbsp/nios2/nios2_iss/bsp_specs b/c/src/lib/libbsp/nios2/nios2_iss/bsp_specs
index b2145b11fa..5154de8c55 100644
--- a/c/src/lib/libbsp/nios2/nios2_iss/bsp_specs
+++ b/c/src/lib/libbsp/nios2/nios2_iss/bsp_specs
@@ -10,4 +10,4 @@
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtnn.o%s}
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/or1k/generic_or1k/bsp_specs b/c/src/lib/libbsp/or1k/generic_or1k/bsp_specs
index 082653ad22..975c0b2b51 100644
--- a/c/src/lib/libbsp/or1k/generic_or1k/bsp_specs
+++ b/c/src/lib/libbsp/or1k/generic_or1k/bsp_specs
@@ -10,4 +10,4 @@
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: *(old_endfiles)} %{qrtems: crtend.o%s crtn.o%s }
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/powerpc/beatnik/bsp_specs b/c/src/lib/libbsp/powerpc/beatnik/bsp_specs
index 3c859d1d66..c6647045a9 100644
--- a/c/src/lib/libbsp/powerpc/beatnik/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/beatnik/bsp_specs
@@ -6,8 +6,8 @@
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s -e __rtems_entry_point -u __vectors motld_start.o%s}}
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
-
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
+
+*link:
+%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
diff --git a/c/src/lib/libbsp/powerpc/gen83xx/bsp_specs b/c/src/lib/libbsp/powerpc/gen83xx/bsp_specs
index 92f6c582e8..a105a01260 100644
--- a/c/src/lib/libbsp/powerpc/gen83xx/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/gen83xx/bsp_specs
@@ -4,11 +4,11 @@
*startfile:
%{!qrtems: %(old_startfile)} \
-%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s start.o%s}}
+%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s start.o%s}}
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
*link:
-%{!qrtems: %(old_link)} %{qrtems: -dc -dp -u __vectors -N}
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -u __vectors}
diff --git a/c/src/lib/libbsp/powerpc/haleakala/bsp_specs b/c/src/lib/libbsp/powerpc/haleakala/bsp_specs
index 9102ad7442..23b58cd4e0 100644
--- a/c/src/lib/libbsp/powerpc/haleakala/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/haleakala/bsp_specs
@@ -3,11 +3,11 @@
%rename link old_link
*startfile:
-%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s}}
+%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s}}
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
*link:
-%{!qrtems: %(old_link)} %{qrtems: -dc -dp -u __vectors -u download_entry -N }
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -u __vectors -u download_entry}
diff --git a/c/src/lib/libbsp/powerpc/motorola_powerpc/bsp_specs b/c/src/lib/libbsp/powerpc/motorola_powerpc/bsp_specs
index 5df5bd5f88..2a245e9a66 100644
--- a/c/src/lib/libbsp/powerpc/motorola_powerpc/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/motorola_powerpc/bsp_specs
@@ -7,8 +7,8 @@
%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s \
vectors_entry%O%s start.o%s -e __rtems_entry_point -u __vectors}}
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
-
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
+
+*link:
+%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
diff --git a/c/src/lib/libbsp/powerpc/mvme3100/bsp_specs b/c/src/lib/libbsp/powerpc/mvme3100/bsp_specs
index 3c859d1d66..c6647045a9 100644
--- a/c/src/lib/libbsp/powerpc/mvme3100/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/mvme3100/bsp_specs
@@ -6,8 +6,8 @@
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s -e __rtems_entry_point -u __vectors motld_start.o%s}}
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
-
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
+
+*link:
+%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
diff --git a/c/src/lib/libbsp/powerpc/mvme5500/bsp_specs b/c/src/lib/libbsp/powerpc/mvme5500/bsp_specs
index 8dbdcf230d..9528d878e6 100644
--- a/c/src/lib/libbsp/powerpc/mvme5500/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/mvme5500/bsp_specs
@@ -6,8 +6,8 @@
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s -e __rtems_entry_point -u __vectors mvme5500start.o%s}}
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
-
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
+
+*link:
+%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
diff --git a/c/src/lib/libbsp/powerpc/psim/bsp_specs b/c/src/lib/libbsp/powerpc/psim/bsp_specs
index 7a636bbb07..c8762610a3 100644
--- a/c/src/lib/libbsp/powerpc/psim/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/psim/bsp_specs
@@ -7,8 +7,8 @@
%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s \
start.o%s -e _start -u __vectors}}
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
-
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
+
+*link:
+%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
diff --git a/c/src/lib/libbsp/powerpc/qemuppc/bsp_specs b/c/src/lib/libbsp/powerpc/qemuppc/bsp_specs
index 7a636bbb07..c8762610a3 100644
--- a/c/src/lib/libbsp/powerpc/qemuppc/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/qemuppc/bsp_specs
@@ -7,8 +7,8 @@
%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s \
start.o%s -e _start -u __vectors}}
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
-
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
+
+*link:
+%{!qrtems: %(old_link)} %{qrtems: -dp -Bstatic}
diff --git a/c/src/lib/libbsp/powerpc/qoriq/bsp_specs b/c/src/lib/libbsp/powerpc/qoriq/bsp_specs
index 8b4545f621..6e5bb08844 100644
--- a/c/src/lib/libbsp/powerpc/qoriq/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/qoriq/bsp_specs
@@ -4,11 +4,10 @@
*startfile:
%{!qrtems: %(old_startfile)} \
-%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s start.o%s}}
+%{!nostdlib: %{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s start.o%s}}
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s rtems_crtn.o%s ecrtn.o%s}
*link:
-%{!qrtems: %(old_link)} %{qrtems: -dc -dp -u __vectors -N %(link_os)}
-
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -u __vectors %(link_os)}
diff --git a/c/src/lib/libbsp/powerpc/virtex/bsp_specs b/c/src/lib/libbsp/powerpc/virtex/bsp_specs
index 92f6c582e8..bfa43f384d 100644
--- a/c/src/lib/libbsp/powerpc/virtex/bsp_specs
+++ b/c/src/lib/libbsp/powerpc/virtex/bsp_specs
@@ -10,5 +10,4 @@
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s ecrtn.o%s}
*link:
-%{!qrtems: %(old_link)} %{qrtems: -dc -dp -u __vectors -N}
-
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -u __vectors}
diff --git a/c/src/lib/libbsp/riscv/riscv_generic/bsp_specs b/c/src/lib/libbsp/riscv/riscv_generic/bsp_specs
index 32c105fd0f..975c0b2b51 100644
--- a/c/src/lib/libbsp/riscv/riscv_generic/bsp_specs
+++ b/c/src/lib/libbsp/riscv/riscv_generic/bsp_specs
@@ -10,4 +10,4 @@
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
*endfile:
-%{!qrtems: %(old_endfiles)} %{qrtems: crtend.o%s crtn.o%s }
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/sparc/erc32/bsp_specs b/c/src/lib/libbsp/sparc/erc32/bsp_specs
index 66bb283902..7cff0f369c 100644
--- a/c/src/lib/libbsp/sparc/erc32/bsp_specs
+++ b/c/src/lib/libbsp/sparc/erc32/bsp_specs
@@ -2,12 +2,12 @@
%rename startfile old_startfile
%rename link old_link
-*endfile:
-%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
-
*startfile:
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s}}
*link:
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+
+*endfile:
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/sparc/leon2/bsp_specs b/c/src/lib/libbsp/sparc/leon2/bsp_specs
index d79b2b4ccc..7cff0f369c 100644
--- a/c/src/lib/libbsp/sparc/leon2/bsp_specs
+++ b/c/src/lib/libbsp/sparc/leon2/bsp_specs
@@ -2,12 +2,12 @@
%rename startfile old_startfile
%rename link old_link
-*endfile:
-crtend.o%s crtn.o%s
-
*startfile:
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s}}
*link:
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+
+*endfile:
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/sparc/leon3/bsp_specs b/c/src/lib/libbsp/sparc/leon3/bsp_specs
index d79b2b4ccc..7cff0f369c 100644
--- a/c/src/lib/libbsp/sparc/leon3/bsp_specs
+++ b/c/src/lib/libbsp/sparc/leon3/bsp_specs
@@ -2,12 +2,12 @@
%rename startfile old_startfile
%rename link old_link
-*endfile:
-crtend.o%s crtn.o%s
-
*startfile:
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s}}
*link:
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+
+*endfile:
+%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
diff --git a/c/src/lib/libbsp/sparc64/niagara/bsp_specs b/c/src/lib/libbsp/sparc64/niagara/bsp_specs
index 640e73a53d..c2f4ae1164 100644
--- a/c/src/lib/libbsp/sparc64/niagara/bsp_specs
+++ b/c/src/lib/libbsp/sparc64/niagara/bsp_specs
@@ -4,12 +4,10 @@
*startfile:
%{!qrtems: %(old_startfile)} \
-%{!nostdlib: %{qrtems: start.o%s crtbegin.o%s -e _start}}
-
-*endfile:
-%{!qrtems: %(old_endfile)} \
-%{!nostdlib: %{qrtems: crtend.o%s}}
+%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s -e _start}}
*link:
-%(old_link) %{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+*endfile:
+%{!qrtems: %(old_endfile)} %{!nostdlib: %{qrtems: crtend.o%s crtn.o%s}}
diff --git a/c/src/lib/libbsp/sparc64/usiii/bsp_specs b/c/src/lib/libbsp/sparc64/usiii/bsp_specs
index 640e73a53d..c2f4ae1164 100644
--- a/c/src/lib/libbsp/sparc64/usiii/bsp_specs
+++ b/c/src/lib/libbsp/sparc64/usiii/bsp_specs
@@ -4,12 +4,10 @@
*startfile:
%{!qrtems: %(old_startfile)} \
-%{!nostdlib: %{qrtems: start.o%s crtbegin.o%s -e _start}}
-
-*endfile:
-%{!qrtems: %(old_endfile)} \
-%{!nostdlib: %{qrtems: crtend.o%s}}
+%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s -e _start}}
*link:
-%(old_link) %{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N}
+*endfile:
+%{!qrtems: %(old_endfile)} %{!nostdlib: %{qrtems: crtend.o%s crtn.o%s}}
diff --git a/c/src/lib/libbsp/v850/gdbv850sim/bsp_specs b/c/src/lib/libbsp/v850/gdbv850sim/bsp_specs
index bb7833b2ad..0f4bd0adfa 100644
--- a/c/src/lib/libbsp/v850/gdbv850sim/bsp_specs
+++ b/c/src/lib/libbsp/v850/gdbv850sim/bsp_specs
@@ -6,10 +6,8 @@
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s -e _start}}
-*endfile:
-%{!qrtems: %(old_endfile)} %{qrtems: %(old_endfile)} \
-%{!nostdlib: %{qrtems:}}
-
*link:
-%(old_link) %{!qrtems: %(old_link)} %{qrtems: %(old_link)}
+%{!qrtems: %(old_link)} %{qrtems: %(old_link)}
+*endfile:
+%{!qrtems: %(old_endfile)} %{qrtems: %(old_link)}