mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-18 06:14:27 +00:00
MFi386: Factor out -nostdlib and use PROG.
This commit is contained in:
parent
e024a09064
commit
5e0eb6243d
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=125625
|
@ -6,6 +6,7 @@ BINDIR?= /boot
|
||||||
|
|
||||||
LOADER_ADDRESS?=0x100000
|
LOADER_ADDRESS?=0x100000
|
||||||
CFLAGS+= -ffreestanding -mpreferred-stack-boundary=2
|
CFLAGS+= -ffreestanding -mpreferred-stack-boundary=2
|
||||||
|
LDFLAGS+= -nostdlib
|
||||||
|
|
||||||
# BTX components
|
# BTX components
|
||||||
.if exists(${.OBJDIR}/../btx)
|
.if exists(${.OBJDIR}/../btx)
|
||||||
|
|
|
@ -1,17 +1,20 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PROG= ${BOOT}.out
|
||||||
|
INTERNALPROG=
|
||||||
FILES= ${BOOT}
|
FILES= ${BOOT}
|
||||||
CLEANFILES= ${BOOT} ${BOOT}.bin ${BOOT}.out ${OBJS}
|
NOMAN=
|
||||||
|
SRCS= start.s boot.s boot0.5.s disk.s selector.s support.s syscons.s
|
||||||
|
CLEANFILES= ${BOOT} ${BOOT}.bin
|
||||||
|
|
||||||
BOOT= boot0.5
|
BOOT= boot0.5
|
||||||
|
|
||||||
SRCS= start.s boot.s boot0.5.s disk.s selector.s support.s syscons.s
|
|
||||||
OBJS= ${SRCS:N*.h:R:S/$/.o/g}
|
|
||||||
|
|
||||||
# The base address that we the boot0 code to to run it. Don't change this
|
# The base address that we the boot0 code to to run it. Don't change this
|
||||||
# unless you are glutton for punishment.
|
# unless you are glutton for punishment.
|
||||||
BOOT_BOOT0_ORG?= 0x0000
|
BOOT_BOOT0_ORG?= 0x0000
|
||||||
|
|
||||||
|
LDFLAGS=-N -e start -Ttext ${BOOT_BOOT0_ORG}
|
||||||
|
|
||||||
# The size of boot0.5 must be 7168 bytes
|
# The size of boot0.5 must be 7168 bytes
|
||||||
${BOOT}: ${BOOT}.bin
|
${BOOT}: ${BOOT}.bin
|
||||||
cat ${BOOT}.bin /dev/zero | dd of=${BOOT} bs=1 count=7168
|
cat ${BOOT}.bin /dev/zero | dd of=${BOOT} bs=1 count=7168
|
||||||
|
@ -19,7 +22,4 @@ ${BOOT}: ${BOOT}.bin
|
||||||
${BOOT}.bin: ${BOOT}.out
|
${BOOT}.bin: ${BOOT}.out
|
||||||
objcopy -S -O binary ${BOOT}.out ${.TARGET}
|
objcopy -S -O binary ${BOOT}.out ${.TARGET}
|
||||||
|
|
||||||
${BOOT}.out: ${OBJS}
|
|
||||||
${LD} -N -e start -Ttext ${BOOT_BOOT0_ORG} -o ${.TARGET} ${.ALLSRC}
|
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PROG= ${BOOT}.out
|
||||||
|
INTERNALPROG=
|
||||||
FILES= ${BOOT}
|
FILES= ${BOOT}
|
||||||
CLEANFILES= ${BOOT} ${BOOT}.out ${BOOT}.o
|
NOMAN=
|
||||||
|
SRCS= ${BOOT}.s
|
||||||
|
CLEANFILES= ${BOOT}
|
||||||
|
|
||||||
BOOT= boot0
|
BOOT= boot0
|
||||||
|
|
||||||
|
@ -9,10 +13,9 @@ BOOT= boot0
|
||||||
# unless you are glutton for punishment.
|
# unless you are glutton for punishment.
|
||||||
BOOT_BOOT0_ORG?= 0x0000
|
BOOT_BOOT0_ORG?= 0x0000
|
||||||
|
|
||||||
|
LDFLAGS=-N -e start -Ttext ${BOOT_BOOT0_ORG}
|
||||||
|
|
||||||
${BOOT}: ${BOOT}.out
|
${BOOT}: ${BOOT}.out
|
||||||
objcopy -S -O binary ${BOOT}.out ${.TARGET}
|
objcopy -S -O binary ${BOOT}.out ${.TARGET}
|
||||||
|
|
||||||
${BOOT}.out: ${BOOT}.o
|
|
||||||
${LD} -N -e start -Ttext ${BOOT_BOOT0_ORG} -o ${.TARGET} ${BOOT}.o
|
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
|
|
@ -47,7 +47,7 @@ CFLAGS+= -DCOMSPEED=${BOOT_COMCONSOLE_SPEED}
|
||||||
# BOOT_HD_BIAS=1 makes da(0,a) correspond to 1:da(0,a) instead of 0:da(0,a).
|
# BOOT_HD_BIAS=1 makes da(0,a) correspond to 1:da(0,a) instead of 0:da(0,a).
|
||||||
|
|
||||||
CLEANFILES+= boot.nohdr boot.strip boot.ldr boot1 boot2 sizetest
|
CLEANFILES+= boot.nohdr boot.strip boot.ldr boot1 boot2 sizetest
|
||||||
LDFLAGS+= -N -Ttext 0 -nostdlib -e start
|
LDFLAGS+= -N -Ttext 0 -e start
|
||||||
NOSHARED= YES
|
NOSHARED= YES
|
||||||
NOMAN=
|
NOMAN=
|
||||||
STRIP=
|
STRIP=
|
||||||
|
|
|
@ -1,5 +1,11 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PROG= btx.out
|
||||||
|
INTERNALPROG=
|
||||||
|
NOMAN=
|
||||||
|
SRCS= btx.s
|
||||||
|
CLEANFILES= btx
|
||||||
|
|
||||||
M4?= m4
|
M4?= m4
|
||||||
|
|
||||||
.if defined(PAGING)
|
.if defined(PAGING)
|
||||||
|
@ -28,14 +34,13 @@ ORG= 0x9000
|
||||||
|
|
||||||
all: btx
|
all: btx
|
||||||
|
|
||||||
btx: btx.o
|
LDFLAGS=-N -e start -Ttext ${ORG}
|
||||||
${LD} -N -e start -Ttext ${ORG} -o btx.out btx.o
|
|
||||||
|
btx: btx.out
|
||||||
objcopy -S -O binary btx.out ${.TARGET}
|
objcopy -S -O binary btx.out ${.TARGET}
|
||||||
|
|
||||||
btx.o: btx.s
|
btx.o: btx.s
|
||||||
(cd ${.CURDIR}; ${M4} ${M4FLAGS} btx.s) | \
|
(cd ${.CURDIR}; ${M4} ${M4FLAGS} btx.s) | \
|
||||||
${AS} ${AFLAGS} -o ${.TARGET}
|
${AS} ${AFLAGS} -o ${.TARGET}
|
||||||
|
|
||||||
CLEANFILES+= btx btx.out btx.o
|
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
|
|
@ -1,5 +1,11 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PROG= btxldr.out
|
||||||
|
INTERNALPROG=
|
||||||
|
NOMAN=
|
||||||
|
SRCS= btxldr.s
|
||||||
|
CLEANFILES= btxldr
|
||||||
|
|
||||||
M4?= m4
|
M4?= m4
|
||||||
M4FLAGS+= -DLOADER_ADDRESS=${LOADER_ADDRESS} -DPC98
|
M4FLAGS+= -DLOADER_ADDRESS=${LOADER_ADDRESS} -DPC98
|
||||||
|
|
||||||
|
@ -9,14 +15,13 @@ M4FLAGS+= -DBTXLDR_VERBOSE
|
||||||
|
|
||||||
all: btxldr
|
all: btxldr
|
||||||
|
|
||||||
btxldr: btxldr.o
|
LDFLAGS=-N -e start -Ttext ${LOADER_ADDRESS}
|
||||||
${LD} -N -e start -Ttext ${LOADER_ADDRESS} -o btxldr.out btxldr.o
|
|
||||||
|
btxldr: btxldr.out
|
||||||
objcopy -S -O binary btxldr.out ${.TARGET}
|
objcopy -S -O binary btxldr.out ${.TARGET}
|
||||||
|
|
||||||
btxldr.o: btxldr.s
|
btxldr.o: btxldr.s
|
||||||
(cd ${.CURDIR}; ${M4} ${M4FLAGS} btxldr.s ) | \
|
(cd ${.CURDIR}; ${M4} ${M4FLAGS} btxldr.s ) | \
|
||||||
${AS} ${AFLAGS} -o ${.TARGET}
|
${AS} ${AFLAGS} -o ${.TARGET}
|
||||||
|
|
||||||
CLEANFILES+= btxldr btxldr.out btxldr.o
|
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
|
|
@ -1,11 +1,9 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
OBJS= btxcsu.o btxsys.o btxv86.o
|
PROG= crt0.o
|
||||||
CLEANFILES= crt0.o
|
INTERNALPROG=
|
||||||
|
NOMAN=
|
||||||
all: crt0.o
|
SRCS= btxcsu.s btxsys.s btxv86.s
|
||||||
|
LDFLAGS=-Wl,-r
|
||||||
crt0.o: ${OBJS}
|
|
||||||
${LD} ${LDFLAGS} -i -o ${.TARGET} ${OBJS}
|
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
|
|
@ -1,26 +1,21 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
FILES= kgzldr.o
|
PROG= kgzldr.o
|
||||||
FILESOWN= ${LIBOWN}
|
BINMODE=${LIBMODE}
|
||||||
FILESGRP= ${LIBGRP}
|
BINDIR= ${LIBDIR}
|
||||||
FILESMODE= ${LIBMODE}
|
NOMAN=
|
||||||
FILESDIR= ${LIBDIR}
|
|
||||||
CLEANFILES= kgzldr.o
|
|
||||||
|
|
||||||
SRCS= start.s boot.c inflate.c lib.c crt.s sio.s
|
SRCS= start.s boot.c inflate.c lib.c crt.s sio.s
|
||||||
OBJS= ${SRCS:N*.h:R:S/$/.o/g}
|
|
||||||
CFLAGS= -Os
|
CFLAGS= -Os
|
||||||
CFLAGS+=-DKZIP
|
CFLAGS+=-DKZIP
|
||||||
LDFLAGS=-nostdlib -static -Wl,-r
|
NOSHARED=
|
||||||
|
LDFLAGS=-Wl,-r
|
||||||
.PATH: ${.CURDIR}/../../../kern
|
.PATH: ${.CURDIR}/../../../kern
|
||||||
|
|
||||||
.PATH: ${.CURDIR}/../../i386/kgzldr
|
.PATH: ${.CURDIR}/../../i386/kgzldr
|
||||||
AFLAGS+=--defsym PC98=1
|
|
||||||
|
|
||||||
BOOT_COMCONSOLE_PORT?= 0x238
|
BOOT_COMCONSOLE_PORT?= 0x238
|
||||||
|
|
||||||
|
AFLAGS+=--defsym PC98=1
|
||||||
AFLAGS+=--defsym SIO_PRT=${BOOT_COMCONSOLE_PORT}
|
AFLAGS+=--defsym SIO_PRT=${BOOT_COMCONSOLE_PORT}
|
||||||
|
|
||||||
kgzldr.o: ${OBJS}
|
|
||||||
${CC} ${LDFLAGS} -o ${.TARGET} ${OBJS}
|
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PROG= loader.sym
|
||||||
|
INTERNALPROG=
|
||||||
NEWVERSWHAT= "bootstrap loader" pc98
|
NEWVERSWHAT= "bootstrap loader" pc98
|
||||||
|
|
||||||
CFLAGS+= -DPC98
|
|
||||||
|
|
||||||
# architecture-specific loader code
|
# architecture-specific loader code
|
||||||
SRCS= main.c conf.c vers.c
|
SRCS= main.c conf.c vers.c
|
||||||
|
CFLAGS+= -DPC98
|
||||||
.PATH: ${.CURDIR}/../../i386/loader
|
.PATH: ${.CURDIR}/../../i386/loader
|
||||||
|
|
||||||
# Enable PXE TFTP or NFS support, not both.
|
# Enable PXE TFTP or NFS support, not both.
|
||||||
|
@ -23,11 +24,7 @@ HAVE_ISABUS= yes
|
||||||
# Enable BootForth
|
# Enable BootForth
|
||||||
BOOT_FORTH= yes
|
BOOT_FORTH= yes
|
||||||
CFLAGS+= -DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/i386
|
CFLAGS+= -DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/i386
|
||||||
.if exists(${.OBJDIR}/../../ficl/libficl.a)
|
|
||||||
LIBFICL= ${.OBJDIR}/../../ficl/libficl.a
|
LIBFICL= ${.OBJDIR}/../../ficl/libficl.a
|
||||||
.else
|
|
||||||
LIBFICL= ${.CURDIR}/../../ficl/libficl.a
|
|
||||||
.endif
|
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.if defined(LOADER_BZIP2_SUPPORT)
|
.if defined(LOADER_BZIP2_SUPPORT)
|
||||||
|
@ -44,10 +41,10 @@ CFLAGS+= -I${.CURDIR}/../../common
|
||||||
CFLAGS+= -I${.CURDIR}/../../i386
|
CFLAGS+= -I${.CURDIR}/../../i386
|
||||||
CFLAGS+= -I.
|
CFLAGS+= -I.
|
||||||
|
|
||||||
CLEANFILES= vers.c loader loader.list loader.bin loader.sym loader.help
|
CLEANFILES= vers.c loader loader.list loader.bin loader.help
|
||||||
|
|
||||||
CFLAGS+= -Wall
|
CFLAGS+= -Wall
|
||||||
LDFLAGS= -nostdlib -static -Ttext 0x0
|
LDFLAGS= -static -Ttext 0x0
|
||||||
|
|
||||||
# pc98 standalone support library
|
# pc98 standalone support library
|
||||||
LIBPC98= ${.OBJDIR}/../libpc98/libpc98.a
|
LIBPC98= ${.OBJDIR}/../libpc98/libpc98.a
|
||||||
|
@ -66,7 +63,7 @@ CFLAGS+= -I${.CURDIR}/../btx/lib
|
||||||
vers.c: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/../../i386/loader/version
|
vers.c: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/../../i386/loader/version
|
||||||
sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/../../i386/loader/version ${NEWVERSWHAT}
|
sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/../../i386/loader/version ${NEWVERSWHAT}
|
||||||
|
|
||||||
loader: loader.bin ${BTXLDR} ${BTXKERN} ${BTXCRT}
|
loader: loader.bin ${BTXLDR} ${BTXKERN}
|
||||||
btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \
|
btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \
|
||||||
-b ${BTXKERN} loader.bin
|
-b ${BTXKERN} loader.bin
|
||||||
# /usr/bin/kzip ${.TARGET}
|
# /usr/bin/kzip ${.TARGET}
|
||||||
|
@ -90,10 +87,7 @@ FILESDIR_loader.conf= /boot/defaults
|
||||||
FILES+= ${.CURDIR}/../../i386/loader/loader.rc
|
FILES+= ${.CURDIR}/../../i386/loader/loader.rc
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
OBJS= ${SRCS:N*.h:R:S/$/.o/g}
|
DPADD= ${BTXCRT} ${LIBFICL} ${LIBPC98} ${LIBSTAND}
|
||||||
|
LDADD= ${BTXCRT} ${LIBFICL} ${LIBPC98} -lstand
|
||||||
loader.sym: ${OBJS} ${LIBFICL} ${LIBPC98} ${LIBSTAND}
|
|
||||||
${CC} ${LDFLAGS} -o ${.TARGET} ${BTXCRT} ${OBJS} \
|
|
||||||
${LIBFICL} ${LIBPC98} ${LIBSTAND}
|
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
|
Loading…
Reference in a new issue