1#	$NetBSD: Makefile,v 1.38 2024/06/29 13:46:40 rin Exp $
2
3S=	${.CURDIR}/../../../..
4
5BASE= dosboot
6PROG= ${BASE}.com
7NEWVERSWHAT=	"DOS Boot"
8STARTFILE=	start_dos.o doscommain.o
9RELOC=		0x100
10
11SRCS=	main.c devopen.c exec.c
12SRCS+=	dosfile.c dos_file.S
13SRCS+=	exec_multiboot1.c exec_multiboot2.c
14
15#CPPFLAGS+= -DSLOW	# for libz; no longer available
16CPPFLAGS+= -DCOMPAT_386BSD_MBRPART
17CPPFLAGS+= -DXMS
18CPPFLAGS+= -DLIBSA_ENABLE_LS_OP
19CPPFLAGS+= -DNO_MULTIBOOT2 # keep the binary small
20#uncomment if there are problems with memory detection
21#CPPFLAGS+= -DCONSERVATIVE_MEMDETECT
22
23#CFLAGS= -O2 -fomit-frame-pointer -fno-defer-pop
24CFLAGS+= -Wall -Wmissing-prototypes -Wstrict-prototypes -Wno-main
25
26.PATH: ${.CURDIR}/../libsa
27
28# XXX these should depend on the size of the image
29CPPFLAGS+= -DSTACK_START=0x10000
30SAMISCCPPFLAGS+= -DHEAP_START=0x20000 -DHEAP_LIMIT=0x50000
31SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_INCLUDE_NET=no SA_ENABLE_LS_OP=yes
32
33# DOS command line arguments are located at 0x0000.
34COPTS.doscommain.c+= -fno-delete-null-pointer-checks
35
36# Do not page-align data segment.
37LDFLAGS+= -Wl,-N
38
39VERSIONFILE= ${.CURDIR}/version
40
41.include <bsd.init.mk>
42
43release: check_RELEASEDIR
44	${HOST_INSTALL_FILE} -m ${BINMODE} dosboot.com \
45	    ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/misc
46
47.include "../Makefile.booters"
48