Changeset View
Changeset View
Standalone View
Standalone View
stand/mips/uboot/Makefile
Show All 38 Lines | |||||
.include "${BOOTSRC}/uboot.mk" | .include "${BOOTSRC}/uboot.mk" | ||||
DPADD= ${LDR_INTERP} ${LIBUBOOT} ${LIBFDT} ${LIBUBOOT_FDT} ${LIBSA} | DPADD= ${LDR_INTERP} ${LIBUBOOT} ${LIBFDT} ${LIBUBOOT_FDT} ${LIBSA} | ||||
LDADD= ${LDR_INTERP} ${LIBUBOOT} ${LIBFDT} ${LIBUBOOT_FDT} ${LIBSA} | LDADD= ${LDR_INTERP} ${LIBUBOOT} ${LIBFDT} ${LIBUBOOT_FDT} ${LIBSA} | ||||
OBJS+= ${SRCS:N*.h:R:S/$/.o/g} | OBJS+= ${SRCS:N*.h:R:S/$/.o/g} | ||||
# ubldr on MIPS is built with '-mno-abicalls' flag, | |||||
emaste: I think a comment here would be useful (a short version of the review description above… | |||||
# which is incompatible with PIE | |||||
MK_PIE= no | |||||
ldscript.abs: | ldscript.abs: | ||||
echo "UBLDR_LOADADDR = ${UBLDR_LOADADDR};" >${.TARGET} | echo "UBLDR_LOADADDR = ${UBLDR_LOADADDR};" >${.TARGET} | ||||
ldscript.pie: | ldscript.pie: | ||||
echo "UBLDR_LOADADDR = 0;" >${.TARGET} | echo "UBLDR_LOADADDR = 0;" >${.TARGET} | ||||
ubldr: ${OBJS} ldscript.abs ${.CURDIR}/ldscript.${MACHINE_CPUARCH} ${DPADD} | ubldr: ${OBJS} ldscript.abs ${.CURDIR}/ldscript.${MACHINE_CPUARCH} ${DPADD} | ||||
${CC} ${CFLAGS} -T ldscript.abs ${LDFLAGS} \ | ${CC} ${CFLAGS} -T ldscript.abs ${LDFLAGS} \ | ||||
-o ${.TARGET} ${OBJS} ${LDADD} | -o ${.TARGET} ${OBJS} ${LDADD} | ||||
${OBJCOPY} -S -O binary ubldr ubldr.bin | ${OBJCOPY} -S -O binary ubldr ubldr.bin | ||||
CLEANFILES+= ldscript.abs ldscript.pie ubldr ubldr.pie ubldr.bin | CLEANFILES+= ldscript.abs ldscript.pie ubldr ubldr.pie ubldr.bin | ||||
.include <bsd.prog.mk> | .include <bsd.prog.mk> |
I think a comment here would be useful (a short version of the review description above indicating that PIE is incompatible with`-mno-abicalls`)