On 30/11/17 19:11, Joel Sherrill wrote:
Hi
I have been experimenting with the LEON3 bsp_specs and linker script.
I have reduced it to this:
================================
%rename endfile old_endfile
%rename startfile old_startfile
*startfile:
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: crti.o%s crtbegin.o%s}}
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
================================
I can't figure out how to deal with the need for crt[in[ and crtbegin/end
without modifying gcc. I was hoping to address them in the linkcmds.
Any ideas?
If we look at the current linker invocation (collect2) with and without
-specs bsp_specs on erc32 for ticker we get:
sparc-rtems5-gcc -B../../../../../erc32/lib/ -specs bsp_specs -qrtems -o
ticker.exe init.o tasks.o -wrapper echo
/opt/rtems/5/lib/gcc/sparc-rtems5/7.2.1/collect2
-dc
-dp
-N
-o
ticker.exe
../../../../../erc32/lib/start.o
/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/crti.o
/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/crtbegin.o
-L../../../../../erc32/lib -L/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1
-L/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/../../../../sparc-rtems5/lib
init.o
tasks.o
-lgcc
--start-group
-lrtemsbsp
-lrtemscpu
-latomic
-lc
-lgcc
--end-group
-T
../../../../../erc32/lib/linkcmds
-lgcc
/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/crtend.o
/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/crtn.o
sparc-rtems5-gcc -B../../../../../erc32/lib/ -qrtems -o ticker.exe
init.o tasks.o -wrapper echo
/opt/rtems/5/lib/gcc/sparc-rtems5/7.2.1/collect2
-o
ticker.exe
/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/../../../../sparc-rtems5/lib/crt0.o
-L../../../../../erc32/lib
-L/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1
-L/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/../../../../sparc-rtems5/lib
init.o
tasks.o
-lgcc
--start-group
-lrtemsbsp
-lrtemscpu
-latomic
-lc
-lgcc
--end-group
-T
../../../../../erc32/lib/linkcmds
-lgcc
Maybe we can use
/DISCARD/ : { crt0.o(*) }
to get rid of the
"/opt/rtems/5/lib64/gcc/sparc-rtems5/7.2.1/../../../../sparc-rtems5/lib/crt0.o"
in the linker command file.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.hu...@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel