
Hi Mike,
On Mon, Feb 6, 2012 at 3:27 PM, Mike Frysinger vapier@gentoo.org wrote:
On Sunday 05 February 2012 22:43:33 Graeme Russ wrote:
On Mon, Feb 6, 2012 at 2:24 PM, Mike Frysinger wrote:
it isn't just that. i don't think a single u-boot.lds for every arch is feasible. the kernel method allows all the common pieces to be in a common header, and then the arches to expand the specific pieces in the specific order.
I can't say I'm a fan of the 'common bits' approach - It really does reduce the readability of the linker script IMHO. It took me long enough to deal with the fact that the lds file is pre-processed for TEXT_BASE ;)
yes, it does make the linker scripts a bit more opaque, but since each arch is doing something unique, it's fairly hard to merge them into a single file. the Linux approach represents what we can do in the real world -- get beyond board-specific linker scripts and to one linker script per arch. then the vmlinux.lds.h merges a lot of the stuff that can be shared between arches.
i've unified all the board/SoC linker scripts for Blackfin and now there is just one -- arch/blackfin/cpu/u-boot.lds.
Ditto for x86
Maybe we should wait until all the arches have unified linker scripts before looking at a global script (parallels with 'skip relocation')?
Regards,
Graeme