From 76e2c537bc4dfec23159f4f7a20cdc6621f41414 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Thu, 2 Apr 2015 06:58:17 +0000 Subject: [PATCH] Ensure the cross assembler, linker and objcopy are used for the build32 stage, just like for the regular world stage. Reviewed by: rodrigc, imp, bapt, emaste MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D2187 --- Makefile.inc1 | 8 +++++--- lib/csu/i386-elf/Makefile | 4 ++-- sys/boot/i386/boot2/Makefile | 4 ++-- sys/boot/i386/gptboot/Makefile | 4 ++-- sys/boot/i386/gptzfsboot/Makefile | 4 ++-- sys/boot/i386/zfsboot/Makefile | 4 ++-- sys/boot/mips/beri/boot2/Makefile | 2 +- sys/boot/pc98/boot0.5/Makefile | 2 +- sys/boot/pc98/boot0/Makefile | 2 +- sys/boot/pc98/boot2/Makefile | 4 ++-- 10 files changed, 20 insertions(+), 18 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index ada97bc48e51..0d806c27249d 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -411,8 +411,9 @@ LIB32CPUFLAGS= -march=${TARGET_CPUTYPE} LIB32WMAKEENV= MACHINE=i386 MACHINE_ARCH=i386 \ MACHINE_CPU="i686 mmx sse sse2" LIB32WMAKEFLAGS= \ - AS="${AS} --32" \ - LD="${LD} -m elf_i386_fbsd -Y P,${LIB32TMP}/usr/lib32" + AS="${XAS} --32" \ + LD="${XLD} -m elf_i386_fbsd -Y P,${LIB32TMP}/usr/lib32" \ + OBJCOPY="${XOBJCOPY}" .elif ${TARGET_ARCH} == "powerpc64" .if empty(TARGET_CPUTYPE) @@ -422,7 +423,8 @@ LIB32CPUFLAGS= -mcpu=${TARGET_CPUTYPE} .endif LIB32WMAKEENV= MACHINE=powerpc MACHINE_ARCH=powerpc LIB32WMAKEFLAGS= \ - LD="${LD} -m elf32ppc_fbsd" + LD="${XLD} -m elf32ppc_fbsd" \ + OBJCOPY="${XOBJCOPY}" .endif diff --git a/lib/csu/i386-elf/Makefile b/lib/csu/i386-elf/Makefile index 57f4f0557318..d5ca4799ba80 100644 --- a/lib/csu/i386-elf/Makefile +++ b/lib/csu/i386-elf/Makefile @@ -35,7 +35,7 @@ crt1_c.o: crt1_c.s crt1.o: crt1_c.o crt1_s.o ${LD} ${_LDFLAGS} -o crt1.o -r crt1_s.o crt1_c.o - objcopy --localize-symbol _start1 crt1.o + ${OBJCOPY} --localize-symbol _start1 crt1.o Scrt1_c.s: crt1_c.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1_c.c @@ -46,7 +46,7 @@ Scrt1_c.o: Scrt1_c.s Scrt1.o: Scrt1_c.o crt1_s.o ${LD} ${_LDFLAGS} -o Scrt1.o -r crt1_s.o Scrt1_c.o - objcopy --localize-symbol _start1 Scrt1.o + ${OBJCOPY} --localize-symbol _start1 Scrt1.o realinstall: ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ diff --git a/sys/boot/i386/boot2/Makefile b/sys/boot/i386/boot2/Makefile index d5091eaf306f..56f74c198f85 100644 --- a/sys/boot/i386/boot2/Makefile +++ b/sys/boot/i386/boot2/Makefile @@ -61,7 +61,7 @@ boot: boot1 boot2 CLEANFILES+= boot1 boot1.out boot1.o boot1: boot1.out - objcopy -S -O binary boot1.out ${.TARGET} + ${OBJCOPY} -S -O binary boot1.out ${.TARGET} boot1.out: boot1.o ${LD} ${LD_FLAGS} -e start -Ttext ${ORG1} -o ${.TARGET} boot1.o @@ -82,7 +82,7 @@ boot2.ldr: dd if=/dev/zero of=${.TARGET} bs=512 count=1 boot2.bin: boot2.out - objcopy -S -O binary boot2.out ${.TARGET} + ${OBJCOPY} -S -O binary boot2.out ${.TARGET} boot2.out: ${BTXCRT} boot2.o sio.o ${LD} ${LD_FLAGS} -Ttext ${ORG2} -o ${.TARGET} ${.ALLSRC} diff --git a/sys/boot/i386/gptboot/Makefile b/sys/boot/i386/gptboot/Makefile index f96616cca182..71814c14e1d7 100644 --- a/sys/boot/i386/gptboot/Makefile +++ b/sys/boot/i386/gptboot/Makefile @@ -55,7 +55,7 @@ gptboot: gptldr.bin gptboot.bin ${BTXKERN} CLEANFILES+= gptldr.bin gptldr.out gptldr.o gptldr.bin: gptldr.out - objcopy -S -O binary gptldr.out ${.TARGET} + ${OBJCOPY} -S -O binary gptldr.out ${.TARGET} gptldr.out: gptldr.o ${LD} ${LD_FLAGS} -e start -Ttext ${ORG1} -o ${.TARGET} gptldr.o @@ -64,7 +64,7 @@ CLEANFILES+= gptboot.bin gptboot.out gptboot.o sio.o gpt.o crc32.o drv.o \ cons.o util.o gptboot.bin: gptboot.out - objcopy -S -O binary gptboot.out ${.TARGET} + ${OBJCOPY} -S -O binary gptboot.out ${.TARGET} gptboot.out: ${BTXCRT} gptboot.o sio.o gpt.o crc32.o drv.o cons.o util.o ${LD} ${LD_FLAGS} -Ttext ${ORG2} -o ${.TARGET} ${.ALLSRC} ${LIBSTAND} diff --git a/sys/boot/i386/gptzfsboot/Makefile b/sys/boot/i386/gptzfsboot/Makefile index 6fdf014a2184..91a637f12755 100644 --- a/sys/boot/i386/gptzfsboot/Makefile +++ b/sys/boot/i386/gptzfsboot/Makefile @@ -53,7 +53,7 @@ gptzfsboot: gptldr.bin gptzfsboot.bin ${BTXKERN} CLEANFILES+= gptldr.bin gptldr.out gptldr.o gptldr.bin: gptldr.out - objcopy -S -O binary gptldr.out ${.TARGET} + ${OBJCOPY} -S -O binary gptldr.out ${.TARGET} gptldr.out: gptldr.o ${LD} ${LD_FLAGS} -e start -Ttext ${ORG1} -o ${.TARGET} gptldr.o @@ -62,7 +62,7 @@ CLEANFILES+= gptzfsboot.bin gptzfsboot.out zfsboot.o sio.o cons.o \ drv.o gpt.o util.o gptzfsboot.bin: gptzfsboot.out - objcopy -S -O binary gptzfsboot.out ${.TARGET} + ${OBJCOPY} -S -O binary gptzfsboot.out ${.TARGET} gptzfsboot.out: ${BTXCRT} zfsboot.o sio.o gpt.o drv.o cons.o util.o ${LD} ${LD_FLAGS} -Ttext ${ORG2} -o ${.TARGET} ${.ALLSRC} ${LIBSTAND} diff --git a/sys/boot/i386/zfsboot/Makefile b/sys/boot/i386/zfsboot/Makefile index 0c24c40fed86..8c94996c569a 100644 --- a/sys/boot/i386/zfsboot/Makefile +++ b/sys/boot/i386/zfsboot/Makefile @@ -49,7 +49,7 @@ zfsboot: zfsboot1 zfsboot2 CLEANFILES+= zfsboot1 zfsldr.out zfsldr.o zfsboot1: zfsldr.out - objcopy -S -O binary zfsldr.out ${.TARGET} + ${OBJCOPY} -S -O binary zfsldr.out ${.TARGET} zfsldr.out: zfsldr.o ${LD} ${LD_FLAGS} -e start -Ttext ${ORG1} -o ${.TARGET} zfsldr.o @@ -75,7 +75,7 @@ zfsboot.ldr: cp /dev/null ${.TARGET} zfsboot.bin: zfsboot.out - objcopy -S -O binary zfsboot.out ${.TARGET} + ${OBJCOPY} -S -O binary zfsboot.out ${.TARGET} zfsboot.out: ${BTXCRT} zfsboot.o sio.o drv.o cons.o util.o ${LD} ${LD_FLAGS} -Ttext ${ORG2} -o ${.TARGET} ${.ALLSRC} ${LIBSTAND} diff --git a/sys/boot/mips/beri/boot2/Makefile b/sys/boot/mips/beri/boot2/Makefile index 104a3999b704..f9950a96b875 100644 --- a/sys/boot/mips/beri/boot2/Makefile +++ b/sys/boot/mips/beri/boot2/Makefile @@ -74,7 +74,7 @@ flashboot.elf: relocate.o start.o boot2.o altera_jtag_uart.o cfi.o sdcard.o ${LD} ${_LDFLAGS} -T ${.CURDIR}/flashboot.ldscript -o ${.TARGET} \ ${.ALLSRC} ${LIBSTAND} flashboot: flashboot.elf - objcopy -S -O binary ${.TARGET}.elf ${.TARGET} + ${OBJCOPY} -S -O binary ${.TARGET}.elf ${.TARGET} flashboot.md5: flashboot md5 flashboot > flashboot.md5 diff --git a/sys/boot/pc98/boot0.5/Makefile b/sys/boot/pc98/boot0.5/Makefile index 4ce3e0705003..9a9d94f4564c 100644 --- a/sys/boot/pc98/boot0.5/Makefile +++ b/sys/boot/pc98/boot0.5/Makefile @@ -21,6 +21,6 @@ ${BOOT}: ${BOOT}.bin cat ${BOOT}.bin /dev/zero | dd of=${BOOT} bs=1 count=7168 ${BOOT}.bin: ${BOOT}.out - objcopy -S -O binary ${BOOT}.out ${.TARGET} + ${OBJCOPY} -S -O binary ${BOOT}.out ${.TARGET} .include diff --git a/sys/boot/pc98/boot0/Makefile b/sys/boot/pc98/boot0/Makefile index 8c903e8359da..fd92a5d9cd62 100644 --- a/sys/boot/pc98/boot0/Makefile +++ b/sys/boot/pc98/boot0/Makefile @@ -16,6 +16,6 @@ BOOT_BOOT0_ORG?= 0x0000 LDFLAGS=-e start -Ttext ${BOOT_BOOT0_ORG} -Wl,-N ${BOOT}: ${BOOT}.out - objcopy -S -O binary ${BOOT}.out ${.TARGET} + ${OBJCOPY} -S -O binary ${BOOT}.out ${.TARGET} .include diff --git a/sys/boot/pc98/boot2/Makefile b/sys/boot/pc98/boot2/Makefile index 7e7d31c7edf8..6af4f901c0af 100644 --- a/sys/boot/pc98/boot2/Makefile +++ b/sys/boot/pc98/boot2/Makefile @@ -67,7 +67,7 @@ boot: boot1 boot2 CLEANFILES+= boot1 boot1.out boot1.o boot1: boot1.out - objcopy -S -O binary boot1.out ${.TARGET} + ${OBJCOPY} -S -O binary boot1.out ${.TARGET} boot1.out: boot1.o ${LD} ${LD_FLAGS} -e start -Ttext ${ORG1} -o ${.TARGET} boot1.o @@ -88,7 +88,7 @@ boot2.ldr: dd if=/dev/zero of=${.TARGET} bs=276 count=1 boot2.bin: boot2.out - objcopy -S -O binary boot2.out ${.TARGET} + ${OBJCOPY} -S -O binary boot2.out ${.TARGET} boot2.out: ${BTXCRT} boot2.o sio.o ${LD} ${LD_FLAGS} -Ttext ${ORG2} -o ${.TARGET} ${.ALLSRC}