[dpdk-dev] [PATCH] mk: fix link with gcc
Neil Horman
nhorman at tuxdriver.com
Thu May 29 13:07:18 CEST 2014
On Thu, May 29, 2014 at 08:24:56AM +0200, Thomas Monjalon wrote:
> Hi Neil,
>
> 2014-05-28 10:17, Neil Horman:
> > On Tue, May 27, 2014 at 02:55:16PM +0200, Thomas Monjalon wrote:
> > > Some linker options were not prefixed by -Wl, when using gcc:
> > > -z muldefs
> > > -melf_i386 (32-bit config)
> > >
> > > Using macro linkerprefix is fixing it.
> > >
> > > Signed-off-by: Thomas Monjalon <thomas.monjalon at 6wind.com>
> [...]
> > > ifeq ($(LINK_USING_CC),1)
> > > # Override the definition of LD here, since we're linking with CC
> > > LD := $(CC)
> > >
> > > +LD_MULDEFS := $(call linkerprefix,-z$(comma)muldefs)
> > > +CPU_LDFLAGS := $(call linkerprefix,$(CPU_LDFLAGS))
> >
> > Agree with Olivier, what exactly is the problem here?
>
> When using CC as LD, linker options should be prefixed with -Wl.
>
> > Also, I don't think
> > this is correct, as CPU_LD_FLAGS and -z muldefs below is used in
> > conjunction with $LD. It would make sense to prefix -Wl to these options
> > if we were passing them through $CC, but not $LD
>
> Yes, but options are prefixed only in the case LD = CC.
>
ah, sorry, was looking at the wrong clause in rte.lib.mk
> Neil, this situation is funny as you're the author of the patch making LD as
> CC and you submitted this kind of fix to prefix CPU_LDFLAGS :)
> This patch is a translation of yours with use of macro linkerprefix.
>
Yeah, my fault, I was only looking at the lines changed, rather than the context
surrounding them. This makes sense.
Neil
> --
> Thomas
>
More information about the dev
mailing list