svn commit: r311458 - in head/sys/boot/mips/beri: boot2 common loader
Alexander Kabaev
kan at FreeBSD.org
Thu Jan 5 19:17:15 UTC 2017
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
More information about the svn-src-all
mailing list