c2f9d95de5
'three-stage' bootstrap. There are a number of caveats with the code in its current state: - The i386 bootstrap only supports booting from a floppy. - The kernel and kld do not yet know how to deal with the extended information and module summary passed in. - PnP-based autodetection and demand loading of modules is not implemented. - i386 ELF kernel loading is not ready yet. - The i386 bootstrap is loaded via an ugly blockmap. On the alpha, both net- and disk-booting (SRM console machines only) is supported. No blockmaps are used by this code. Obtained from: Parts from the NetBSD/i386 standalone bootstrap.
37 lines
896 B
Makefile
37 lines
896 B
Makefile
# $Id$
|
|
# from $NetBSD: Makefile,v 1.12 1998/02/19 14:18:36 drochner Exp $
|
|
|
|
BASE= loader
|
|
PROG= ${BASE}.sym
|
|
NOMAN=
|
|
NEWVERSWHAT= "bootstrap loader"
|
|
|
|
# architecture-specific loader code
|
|
SRCS+= main.c conf.c
|
|
|
|
# Always add MI sources
|
|
.PATH: ${.CURDIR}/../../common
|
|
.include <${.CURDIR}/../../common/Makefile.inc>
|
|
CFLAGS+= -I${.CURDIR}/../../common
|
|
# Verbose ls causes extra heap usage
|
|
CFLAGS+= -DVERBOSE_LS
|
|
|
|
CLEANFILES+= vers.c vers.o ${BASE}.list
|
|
|
|
CFLAGS+= -Wall
|
|
|
|
# i386 standalone support library
|
|
LIBI386= ${.OBJDIR}/../libi386/libi386.a
|
|
CFLAGS+= -I${.CURDIR}/..
|
|
CRT= ${.OBJDIR}/../libi386/crt/bootsect/bscrt.o
|
|
|
|
vers.o:
|
|
sh ${.CURDIR}/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
|
|
${CC} -c vers.c
|
|
|
|
${BASE}.sym: ${OBJS} ${LIBI386} ${CRT} vers.o
|
|
${LD} -o ${BASE}.sym -M -e _start -N -Ttext 0 ${CRT} ${OBJS} \
|
|
vers.o -lstand ${LIBI386} -lstand >${.OBJDIR}/${BASE}.list
|
|
|
|
.include <bsd.prog.mk>
|