Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Jan 2017 19:17:14 +0000 (UTC)
From:      Alexander Kabaev <kan@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r311458 - in head/sys/boot/mips/beri: boot2 common loader
Message-ID:  <201701051917.v05JHE1P043260@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kan
Date: Thu Jan  5 19:17:14 2017
New Revision: 311458
URL: https://svnweb.freebsd.org/changeset/base/311458

Log:
  Use compiler driver to link BERI boot loaders
  
  Do not hardcode elf64-tradbigmips as output format in BERI linker scrips.
  Unfortunately, in-tree toolchain and external newer versions of binutils
  mean two different things under that. When creating elf binaries using
  external toolchain, gcc uses elf64-tradbigmips-freebsd and so linker
  script file has to match in order for ld to be able to create the final loader
  binary.
  
  Rather than trying to guess, remove hardcoded output format directive from
  the linker directive files and use CC to invoke the linker instead.
  
  Reviewed by:	brooks
  Differential Revision:	https://reviews.freebsd.org/D9050

Modified:
  head/sys/boot/mips/beri/boot2/Makefile
  head/sys/boot/mips/beri/common/common.ldscript
  head/sys/boot/mips/beri/loader/loader.ldscript

Modified: head/sys/boot/mips/beri/boot2/Makefile
==============================================================================
--- head/sys/boot/mips/beri/boot2/Makefile	Thu Jan  5 18:32:53 2017	(r311457)
+++ head/sys/boot/mips/beri/boot2/Makefile	Thu Jan  5 19:17:14 2017	(r311458)
@@ -71,7 +71,7 @@ LDFLAGS=	-nostdlib			\
 CFLAGS+=	-I${.CURDIR}/../common
 
 flashboot.elf: relocate.o start.o boot2.o altera_jtag_uart.o cfi.o sdcard.o
-	${LD} ${_LDFLAGS} -T ${.CURDIR}/flashboot.ldscript -o ${.TARGET}	\
+	${CC} ${_LDFLAGS} -T ${.CURDIR}/flashboot.ldscript -o ${.TARGET}	\
 	    ${.ALLSRC} ${LIBSTAND}
 flashboot: flashboot.elf
 	${OBJCOPY} -S -O binary ${.TARGET}.elf ${.TARGET}
@@ -79,7 +79,7 @@ flashboot.md5: flashboot
 	md5 flashboot > flashboot.md5
 
 jtagboot: start.o boot2.o altera_jtag_uart.o cfi.o sdcard.o
-	${LD} ${_LDFLAGS} -T ${.CURDIR}/jtagboot.ldscript -o ${.TARGET}	\
+	${CC} ${_LDFLAGS} -T ${.CURDIR}/jtagboot.ldscript -o ${.TARGET}	\
 	    ${.ALLSRC} ${LIBSTAND}
 jtagboot.md5: jtagboot
 	md5 jtagboot > jtagboot.md5

Modified: head/sys/boot/mips/beri/common/common.ldscript
==============================================================================
--- head/sys/boot/mips/beri/common/common.ldscript	Thu Jan  5 18:32:53 2017	(r311457)
+++ head/sys/boot/mips/beri/common/common.ldscript	Thu Jan  5 19:17:14 2017	(r311458)
@@ -73,5 +73,4 @@ __cheri_sdcard_vaddr__ = __mips64_xkphys
 __kernel_base__ = 0x100000;
 __kernel_vaddr__ = __mips64_xkphys_cached__ + __kernel_base__;
 
-OUTPUT_FORMAT("elf64-tradbigmips");
 OUTPUT_ARCH(mips)

Modified: head/sys/boot/mips/beri/loader/loader.ldscript
==============================================================================
--- head/sys/boot/mips/beri/loader/loader.ldscript	Thu Jan  5 18:32:53 2017	(r311457)
+++ head/sys/boot/mips/beri/loader/loader.ldscript	Thu Jan  5 19:17:14 2017	(r311458)
@@ -44,7 +44,6 @@ __loader_base_vaddr__ = __mips64_xkphys_
 __loader_end__ = 0x100000;
 __loader_end_vaddr__ = __mips64_xkphys_cached__ + __loader_end__;
 
-OUTPUT_FORMAT("elf64-tradbigmips");
 OUTPUT_ARCH(mips)
 ENTRY(start)
 SECTIONS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201701051917.v05JHE1P043260>