[U-Boot] [PATCH] Fix all linker script to handle all rodata sections

Wolfgang Denk
2009-08-15T22:02:44Z

Dear Trent Piepho,

on Mon, 10 Aug 2009 10:35:08 +0200 I wrote:

> Dear Trent Piepho,
>
> In message <1234999325-13456-1-git-send-email-tpiepho@freescale.com> you wrote:
> >
> > A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
> > which needs to be added the the linker script. Instead of just adding this
> > one section, we use a wildcard ".rodata*" to get all rodata linker section
> > gcc has now and might add in the future.
> ...
> > I change this to:
> >
> > *(.text)
> > . = ALIGN(16);
> > *(.eh_frame)
> > *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
>
> Unfortunately it turns out that this breaks some older tool chains.
> For example, using ELDK 3.1 (binutils 2.14-5) we get:
>
> arm-linux-ld:/home/wd/git/u-boot/work/cpu/s3c44b0/u-boot.lds:39: parse error
>
> It seems this old version of ld does not understand the
>
> *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
>
> line yet.
>
> Do you see any want to make this backward compatible with older
> versions of ld?
>
> Thanks in advance.

Any comments on this? Or anybody else?

Best regards,

Wolfgang Denk

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Each honest calling, each walk of life, has its own elite, its own
aristocracy based on excellence of performance. - James Bryant Conant