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

Wolfgang Denk wd at denx.de
Mon Aug 10 10:35:08 CEST 2009


Dear Trent Piepho,

In message <1234999325-13456-1-git-send-email-tpiepho at 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.

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
Men will always be men -- no matter where they are.
	-- Harry Mudd, "Mudd's Women", stardate 1329.8


More information about the U-Boot mailing list