summaryrefslogtreecommitdiffstats
path: root/sys/boot/i386/boot0/Makefile
blob: 9de7dcf4641412745ba516cd2f8118db53a9c73f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# $FreeBSD$

PROG=		boot0
NOMAN=
STRIP=
BINDIR?=	/boot
BINMODE=	444

M4?=	m4

# The default set of flags compiled into boot0.  This enables update (writing
# the modified boot0 back to disk after running so that the selection made is
# saved), packet mode (detect and use the BIOS EDD extensions if we try to
# boot past the 1024 cylinder liimt), and booting from all valid slices.
BOOT_BOOT0_FLAGS?=	0xf

# The number of timer ticks to wait for a keypress before assuming the default
# selection.  Since there are 18.2 ticks per second, the default value of
# 0xb6 (182d) corresponds to 10 seconds.
BOOT_BOOT0_TICKS?=	0xb6

# The base address that we the boot0 code to to run it.  Don't change this
# unless you are glutton for punishment.
BOOT_BOOT0_ORG?=	0x600

boot0: boot0.o
.if ${OBJFORMAT} == aout
	${LD} -N -s -T ${BOOT_BOOT0_ORG} -o boot0.out boot0.o
	dd if=boot0.out of=${.TARGET} ibs=32 skip=1
.else
	${LD} -N -e start -Ttext ${BOOT_BOOT0_ORG} -o boot0.out boot0.o
	objcopy -S -O binary boot0.out ${.TARGET}
.endif

boot0.o: boot0.s
	${AS} ${AFLAGS} --defsym FLAGS=${BOOT_BOOT0_FLAGS} \
		--defsym TICKS=${BOOT_BOOT0_TICKS} ${.IMPSRC} -o ${.TARGET}

CLEANFILES+= boot0.out boot0.o

.include <bsd.prog.mk>
OpenPOWER on IntegriCloud