Message ID | 1343924374-17404-1-git-send-email-otavio@ossystems.com.br |
---|---|
State | Accepted |
Commit | 7cb714a57837f1352d737ae07b56a5ce47c40431 |
Headers | show |
On Thursday 02 August 2012 12:19:34 Otavio Salvador wrote: > This patch makes sure that we always use the GNU ld. U-Boot uses certain > construct e.g. OVERLAY which are not implemented in gold therefore it > always needs GNU ld for linking. > > It works well if default linker in toolchain is GNU ld but in some > cases we can have gold to be the default linker and also ship GNU ld > but not as default in such cases its called $(PREFIX)ld.bfd, with this > patch we make sure that if $(PREFIX)ld.bfd exists than we use that for > our ld. > > This way it does not matter what the default ld is. Acked-by: Mike Frysinger <vapier@gentoo.org> -mike
On Thu, Aug 2, 2012 at 2:49 PM, Mike Frysinger <vapier@gentoo.org> wrote: > On Thursday 02 August 2012 12:19:34 Otavio Salvador wrote: >> This patch makes sure that we always use the GNU ld. U-Boot uses certain >> construct e.g. OVERLAY which are not implemented in gold therefore it >> always needs GNU ld for linking. >> >> It works well if default linker in toolchain is GNU ld but in some >> cases we can have gold to be the default linker and also ship GNU ld >> but not as default in such cases its called $(PREFIX)ld.bfd, with this >> patch we make sure that if $(PREFIX)ld.bfd exists than we use that for >> our ld. >> >> This way it does not matter what the default ld is. > > Acked-by: Mike Frysinger <vapier@gentoo.org> > -mike Wolfgang, I ended not putting you on CC but I think you're the one who would take this patch, aren't you?
On Sat, Aug 4, 2012 at 7:31 PM, Otavio Salvador <otavio@ossystems.com.br> wrote: > On Thu, Aug 2, 2012 at 2:49 PM, Mike Frysinger <vapier@gentoo.org> wrote: >> On Thursday 02 August 2012 12:19:34 Otavio Salvador wrote: >>> This patch makes sure that we always use the GNU ld. U-Boot uses certain >>> construct e.g. OVERLAY which are not implemented in gold therefore it >>> always needs GNU ld for linking. >>> >>> It works well if default linker in toolchain is GNU ld but in some >>> cases we can have gold to be the default linker and also ship GNU ld >>> but not as default in such cases its called $(PREFIX)ld.bfd, with this >>> patch we make sure that if $(PREFIX)ld.bfd exists than we use that for >>> our ld. >>> >>> This way it does not matter what the default ld is. >> >> Acked-by: Mike Frysinger <vapier@gentoo.org> >> -mike > > Wolfgang, I ended not putting you on CC but I think you're the one who > would take this patch, aren't you? Ping?
Hi, On Thu, 2 Aug 2012 13:19:34 -0300 Otavio Salvador <otavio@ossystems.com.br> wrote: > From: Khem Raj <raj.khem@gmail.com> > > This patch makes sure that we always use the GNU ld. U-Boot uses certain > construct e.g. OVERLAY which are not implemented in gold therefore it > always needs GNU ld for linking. > > It works well if default linker in toolchain is GNU ld but in some > cases we can have gold to be the default linker and also ship GNU ld > but not as default in such cases its called $(PREFIX)ld.bfd, with this > patch we make sure that if $(PREFIX)ld.bfd exists than we use that for > our ld. > > This way it does not matter what the default ld is. > > Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> > Signed-off-by: Khem Raj <raj.khem@gmail.com> > --- > config.mk | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) applied to my staging branch, thanks! Anatolij
diff --git a/config.mk b/config.mk index 3dcea6a..c3822a2 100644 --- a/config.mk +++ b/config.mk @@ -133,7 +133,11 @@ cc-version = $(shell $(SHELL) $(SRCTREE)/tools/gcc-version.sh $(CC)) # Include the make variables (CC, etc...) # AS = $(CROSS_COMPILE)as -LD = $(CROSS_COMPILE)ld + +# Always use GNU ld +LD = $(shell if $(CROSS_COMPILE)ld.bfd -v > /dev/null 2>&1; \ + then echo "$(CROSS_COMPILE)ld.bfd"; else echo "$(CROSS_COMPILE)ld"; fi;) + CC = $(CROSS_COMPILE)gcc CPP = $(CC) -E AR = $(CROSS_COMPILE)ar