1 1.35 rin # $NetBSD: Makefile,v 1.35 2023/11/06 07:02:17 rin Exp $ 2 1.1 perry 3 1.25 tsutsui S= ${.CURDIR}/../../../.. 4 1.1 perry 5 1.9 drochner BASE= dosboot 6 1.9 drochner PROG= ${BASE}.com 7 1.6 thorpej NEWVERSWHAT= "DOS Boot" 8 1.20 thorpej STARTFILE= ${DOSSTART} 9 1.20 thorpej RELOC= 0x100 10 1.1 perry 11 1.32 manu SRCS= main.c devopen.c exec.c exec_multiboot1.c exec_multiboot2.c 12 1.1 perry 13 1.23 mycroft CPPFLAGS+= -DSLOW # for libz 14 1.18 jdolecek CPPFLAGS+= -DCOMPAT_386BSD_MBRPART 15 1.30 christos CPPFLAGS+= -DXMS 16 1.27 tsutsui CPPFLAGS+= -DLIBSA_ENABLE_LS_OP 17 1.32 manu CPPFLAGS+= -DNO_MULTIBOOT2 # keep the binary small 18 1.8 drochner #uncomment if there are problems with memory detection 19 1.8 drochner #CPPFLAGS+= -DCONSERVATIVE_MEMDETECT 20 1.1 perry 21 1.1 perry #CFLAGS= -O2 -fomit-frame-pointer -fno-defer-pop 22 1.13 drochner CFLAGS+= -Wall -Wmissing-prototypes -Wstrict-prototypes -Wno-main 23 1.1 perry 24 1.1 perry # XXX should go into library 25 1.13 drochner SRCS+= getopt.c 26 1.1 perry .PATH: ${.CURDIR}/../libsa 27 1.1 perry 28 1.22 dsl # XXX these should depend on the size of the image 29 1.22 dsl CPPFLAGS+= -DSTACK_START=0x10000 30 1.22 dsl SAMISCCPPFLAGS+= -DHEAP_START=0x20000 -DHEAP_LIMIT=0x50000 31 1.27 tsutsui SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_INCLUDE_NET=no SA_ENABLE_LS_OP=yes 32 1.1 perry I386MISCMAKEFLAGS= I386_INCLUDE_DOS=yes 33 1.12 drochner 34 1.34 rin # DOS command line arguments are located at 0x0000. 35 1.34 rin COPTS.doscommain.c+= -fno-delete-null-pointer-checks 36 1.34 rin 37 1.35 rin # Do not page-align data segment. 38 1.35 rin LDFLAGS+= -Wl,-N 39 1.35 rin 40 1.12 drochner VERSIONFILE= ${.CURDIR}/version 41 1.17 wiz 42 1.31 christos .include <bsd.init.mk> 43 1.15 jhawk 44 1.21 lukem release: check_RELEASEDIR 45 1.21 lukem ${HOST_INSTALL_FILE} -m ${BINMODE} dosboot.com \ 46 1.33 christos ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/misc 47 1.1 perry 48 1.1 perry .include "../Makefile.booters" 49