[U-Boot] [PATCH 7/7] add gc-sections to TPL boot
Scott Wood
scottwood at freescale.com
Fri Jan 28 19:30:01 CET 2011
On Fri, 28 Jan 2011 13:08:30 -0500
Haiying Wang <Haiying.Wang at freescale.com> wrote:
> On Fri, 2011-01-28 at 11:36 -0600, Scott Wood wrote:
> > On Thu, 27 Jan 2011 23:58:10 -0500
> > <Haiying.Wang at freescale.com> wrote:
> >
> > > From: Haiying Wang <Haiying.Wang at freescale.com>
> > >
> > > Signed-off-by: Haiying Wang <Haiying.Wang at freescale.com>
> > > ---
> > > arch/powerpc/config.mk | 4 ++++
> > > config.mk | 7 ++++++-
> > > 2 files changed, 10 insertions(+), 1 deletions(-)
> >
> > I see patch 3/8, 4/8, 5/8, and 7/7. Where are the rest?
> Sorry, patch 7/7 is a wrong number here. I kept the patch # as 3/8/,
> 4/8, 5/8, 8/8 to be consistent with the order in the patchset(v2) I
> submitted in last December. I thought it would be clearer to compare
> them with v2 version and review. Patch 1/8,2/8 have been applied by
> Kumar, patch 6/8, 7/8 remain the same as v2 version. This patch, is a
> new patch because that TPL still needs --gc-sections in linker option to
> do partial link.
>
> If it is preferable to have new whole set of patch, I can reorder them
> from 3/8-8/8 plus this one to submit.
Just produce a new complete patchset of what still needs to be
applied. Don't preserve the numbering.
> > > diff --git a/config.mk b/config.mk
> > > index 5147c35..d7bb07f 100644
> > > --- a/config.mk
> > > +++ b/config.mk
> > > @@ -260,8 +260,13 @@ $(obj)%.s: %.c
> > > #########################################################################
> > >
> > > # If the list of objects to link is empty, just create an empty built-in.o
> > > +ifdef CONFIG_HAS_TPL
> > > +cmd_link_o_target = $(if $(strip $1),\
> > > + $(LD) -r -o $@ $1,\
> > > + rm -f $@; $(AR) rcs $@ )
> > > +else
> > > cmd_link_o_target = $(if $(strip $1),\
> > > $(LD) $(LDFLAGS) -r -o $@ $1,\
> > > rm -f $@; $(AR) rcs $@ )
> > > -
> > > +endif
> >
> > What's going on here?
> >
> For CONFIG_HAS_TPL, LDFLAGS has --gc-sections now, passing it to
> cmd_link_o_target here will fail in linking stage:
> "
> powerpc-none-linux-gnuspe-ld: gc-sections requires either an entry or an
> undefined symbol
> "
I think --gc-sections should go in LDFLAGS_u-boot instead.
In any case, I don't think we want different behavior here based on
whether we have TPL. Either LDFLAGS is used in partial linking, or
it's not.
-Scott
More information about the U-Boot
mailing list