1 1.26 tsutsui # $NetBSD: Makefile.buildboot,v 1.26 2009/11/27 11:11:22 tsutsui Exp $ 2 1.18 mrg # 3 1.18 mrg # This file is for the sparc `boot' and `bootxx' only; it does not 4 1.18 mrg # currently play well on a 64-bit system. 5 1.1 mrg 6 1.1 mrg S= ${.CURDIR}/../../../.. 7 1.1 mrg 8 1.4 pk .PATH: ${.CURDIR}/../common ${.CURDIR}/../../sparc 9 1.1 mrg 10 1.4 pk COMMONSOURCE= srt0.S promdev.c dvma.c promlib.c 11 1.1 mrg 12 1.1 mrg SRCS= ${COMMONSOURCE} ${PROGSOURCE} 13 1.17 tv NOMAN= # defined 14 1.1 mrg BINMODE= 444 15 1.1 mrg 16 1.15 pk # 17 1.15 pk # The relocation address for `boot' must leave enough free memory below 18 1.15 pk # it to load a kernel at address 0x4000. On the other hand, on some 19 1.15 pk # machines, the PROM uses memory in the upper portion of the first 4MB 20 1.15 pk # segment, depending on the actual memory bank configuration probably. 21 1.15 pk # Our boot program must stear clear of that as well. 22 1.15 pk # 23 1.15 pk # Relocating `boot' at 0x388000 seems to provide a working compromise 24 1.15 pk # on the machines tested so far. 25 1.15 pk # 26 1.15 pk RELOC_DEFAULT?= 388000 27 1.14 pk RELOCS= $(RELOC_DEFAULT) 28 1.14 pk #RELOCS+= 200000 400000 700000 # additional link addresses 29 1.14 pk 30 1.11 pk # `bootxx' is linked at a different address to circumvent i-cache 31 1.11 pk # flushing issues on Hypersparcs 32 1.14 pk RELOC_BOOTXX= 300000 33 1.1 mrg 34 1.19 pk CPPFLAGS+= -D_STANDALONE -DSUN4 -DSUN4C -DSUN4M -DSUN4D -DHEAP_VARIABLE 35 1.1 mrg 36 1.5 pk CPPFLAGS+= -I. -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. 37 1.26 tsutsui CPPFLAGS+= -I${.CURDIR}/../../../../../common/include 38 1.24 tsutsui CFLAGS= -Os 39 1.21 mrg CFLAGS+= -Wall -Wstrict-prototypes -Wmissing-prototypes -ffreestanding 40 1.1 mrg 41 1.1 mrg ### find out what to use for libkern 42 1.1 mrg KERN_AS= library 43 1.1 mrg .include "${S}/lib/libkern/Makefile.inc" 44 1.1 mrg LIBKERN= ${KERNLIB} 45 1.1 mrg 46 1.1 mrg .ifdef INCLUDE_LIBZ 47 1.1 mrg ### find out what to use for libz 48 1.1 mrg Z_AS= library 49 1.1 mrg .include "${S}/lib/libz/Makefile.inc" 50 1.1 mrg LIBZ= ${ZLIB} 51 1.1 mrg .endif 52 1.1 mrg 53 1.1 mrg ### find out what to use for libsa 54 1.1 mrg SA_AS= library 55 1.6 christos SAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes" 56 1.1 mrg .include "${S}/lib/libsa/Makefile.inc" 57 1.1 mrg LIBSA= ${SALIB} 58 1.5 pk 59 1.25 tsutsui .include <bsd.klinks.mk> 60 1.20 nakayama 61 1.20 nakayama cleandir distclean: cleanlibdir 62 1.20 nakayama 63 1.20 nakayama cleanlibdir: 64 1.22 jmc -rm -rf lib 65