Simplify the building of our i386 'binary' boot components by directly
producing them using 'ld' options rather than post-processing with 'objcopy'. Idea by: Ryan Sommers <ryans@gamersimpact.com>
This commit is contained in:
parent
a8abffed54
commit
a50d1c0876
@ -1,11 +1,10 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PROG= ${BOOT}.out
|
||||
PROG= ${BOOT}
|
||||
INTERNALPROG=
|
||||
FILES= ${BOOT}
|
||||
NOMAN=
|
||||
SRCS= ${BOOT}.s
|
||||
CLEANFILES= ${BOOT}
|
||||
|
||||
BOOT?= boot0
|
||||
|
||||
@ -34,9 +33,6 @@ AFLAGS+=--defsym FLAGS=${BOOT_BOOT0_FLAGS} \
|
||||
--defsym TICKS=${BOOT_BOOT0_TICKS} \
|
||||
--defsym COMSPEED=${BOOT_BOOT0_COMCONSOLE_SPEED}
|
||||
|
||||
LDFLAGS=-N -e start -Ttext ${BOOT_BOOT0_ORG}
|
||||
|
||||
${BOOT}: ${BOOT}.out
|
||||
objcopy -S -O binary ${BOOT}.out ${.TARGET}
|
||||
LDFLAGS=-N -e start -Ttext ${BOOT_BOOT0_ORG} -Wl,-S -Wl,--oformat -Wl,binary
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
@ -1,6 +1,6 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PROG= btx.out
|
||||
PROG= btx
|
||||
INTERNALPROG=
|
||||
NOMAN=
|
||||
SRCS= btx.S
|
||||
@ -29,11 +29,6 @@ CFLAGS+=-DBTX_SERIAL -DSIOPRT=${BOOT_COMCONSOLE_PORT} \
|
||||
|
||||
ORG= 0x9000
|
||||
|
||||
all: btx
|
||||
|
||||
LDFLAGS=-N -e start -Ttext ${ORG}
|
||||
|
||||
btx: btx.out
|
||||
objcopy -S -O binary btx.out ${.TARGET}
|
||||
LDFLAGS=-N -e start -Ttext ${ORG} -Wl,-S -Wl,--oformat -Wl,binary
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
@ -1,6 +1,6 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PROG= btxldr.out
|
||||
PROG= btxldr
|
||||
INTERNALPROG=
|
||||
NOMAN=
|
||||
SRCS= btxldr.S
|
||||
@ -12,11 +12,6 @@ CFLAGS+=-DLOADER_ADDRESS=${LOADER_ADDRESS}
|
||||
CFLAGS+=-DBTXLDR_VERBOSE
|
||||
.endif
|
||||
|
||||
all: btxldr
|
||||
|
||||
LDFLAGS=-N -e start -Ttext ${LOADER_ADDRESS}
|
||||
|
||||
btxldr: btxldr.out
|
||||
objcopy -S -O binary btxldr.out ${.TARGET}
|
||||
LDFLAGS=-N -e start -Ttext ${LOADER_ADDRESS} -Wl,-S -Wl,--oformat -Wl,binary
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
@ -1,6 +1,6 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PROG= ${BOOT}.out
|
||||
PROG= ${BOOT}
|
||||
INTERNALPROG=
|
||||
FILES= ${BOOT}
|
||||
NOMAN=
|
||||
@ -10,9 +10,6 @@ CLEANFILES= ${BOOT}
|
||||
BOOT= cdboot
|
||||
ORG= 0x7c00
|
||||
|
||||
${BOOT}: ${BOOT}.out
|
||||
objcopy -S -O binary ${BOOT}.out ${.TARGET}
|
||||
|
||||
LDFLAGS=-N -e start -Ttext ${ORG}
|
||||
LDFLAGS=-N -e start -Ttext ${ORG} -Wl,-S -Wl,--oformat -Wl,binary
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
@ -1,6 +1,6 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PROG= ${BOOT}.out
|
||||
PROG= ${BOOT}
|
||||
INTERNALPROG=
|
||||
FILES= ${BOOT}
|
||||
NOMAN=
|
||||
@ -10,9 +10,6 @@ CLEANFILES= ${BOOT}
|
||||
BOOT= mbr
|
||||
ORG= 0x600
|
||||
|
||||
${BOOT}: ${BOOT}.out
|
||||
objcopy -S -O binary ${BOOT}.out ${.TARGET}
|
||||
|
||||
LDFLAGS=-N -e start -Ttext ${ORG}
|
||||
LDFLAGS=-N -e start -Ttext ${ORG} -Wl,-S -Wl,--oformat -Wl,binary
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
@ -3,7 +3,7 @@
|
||||
# Pick up ../Makefile.inc early.
|
||||
.include <bsd.init.mk>
|
||||
|
||||
PROG= ${LDR}.out
|
||||
PROG= ${LDR}
|
||||
INTERNALPROG=
|
||||
FILES= ${BOOT}
|
||||
MAN= ${BOOT}.8
|
||||
@ -34,10 +34,7 @@ ${BOOT}: ${LDR} ${LOADER}
|
||||
|
||||
CLEANFILES+= ${LDR}
|
||||
|
||||
${LDR}: ${LDR}.out
|
||||
objcopy -S -O binary ${LDR}.out ${.TARGET}
|
||||
|
||||
LDFLAGS+= -N -e start -Ttext ${ORG}
|
||||
LDFLAGS+= -N -e start -Ttext ${ORG} -Wl,-S -Wl,--oformat -Wl,binary
|
||||
|
||||
CLEANFILES+= ${LOADER}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user