1 1.16 jmc # $NetBSD: Makefile.buildboot,v 1.16 2001/11/22 00:14:20 jmc Exp $ 2 1.1 mrg 3 1.1 mrg S= ${.CURDIR}/../../../.. 4 1.1 mrg 5 1.4 pk .PATH: ${.CURDIR}/../common ${.CURDIR}/../../sparc 6 1.1 mrg 7 1.4 pk COMMONSOURCE= srt0.S promdev.c dvma.c promlib.c 8 1.1 mrg 9 1.1 mrg SRCS= ${COMMONSOURCE} ${PROGSOURCE} 10 1.3 lukem MKMAN= no 11 1.1 mrg BINMODE= 444 12 1.1 mrg 13 1.15 pk # 14 1.15 pk # The relocation address for `boot' must leave enough free memory below 15 1.15 pk # it to load a kernel at address 0x4000. On the other hand, on some 16 1.15 pk # machines, the PROM uses memory in the upper portion of the first 4MB 17 1.15 pk # segment, depending on the actual memory bank configuration probably. 18 1.15 pk # Our boot program must stear clear of that as well. 19 1.15 pk # 20 1.15 pk # Relocating `boot' at 0x388000 seems to provide a working compromise 21 1.15 pk # on the machines tested so far. 22 1.15 pk # 23 1.15 pk RELOC_DEFAULT?= 388000 24 1.14 pk RELOCS= $(RELOC_DEFAULT) 25 1.14 pk #RELOCS+= 200000 400000 700000 # additional link addresses 26 1.14 pk 27 1.11 pk # `bootxx' is linked at a different address to circumvent i-cache 28 1.11 pk # flushing issues on Hypersparcs 29 1.14 pk RELOC_BOOTXX= 300000 30 1.1 mrg 31 1.12 pk CPPFLAGS+= -D_STANDALONE -DSUN4 -DSUN4C -DHEAP_VARIABLE 32 1.1 mrg 33 1.5 pk CPPFLAGS+= -I. -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. 34 1.1 mrg CFLAGS= -O2 35 1.4 pk CFLAGS+= -Wall -Wstrict-prototypes -Wmissing-prototypes 36 1.1 mrg 37 1.1 mrg ### find out what to use for libkern 38 1.1 mrg KERN_AS= library 39 1.1 mrg .include "${S}/lib/libkern/Makefile.inc" 40 1.1 mrg LIBKERN= ${KERNLIB} 41 1.1 mrg 42 1.1 mrg .ifdef INCLUDE_LIBZ 43 1.1 mrg ### find out what to use for libz 44 1.1 mrg Z_AS= library 45 1.1 mrg .include "${S}/lib/libz/Makefile.inc" 46 1.1 mrg LIBZ= ${ZLIB} 47 1.1 mrg .endif 48 1.1 mrg 49 1.1 mrg ### find out what to use for libsa 50 1.1 mrg SA_AS= library 51 1.6 christos SAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes" 52 1.1 mrg .include "${S}/lib/libsa/Makefile.inc" 53 1.1 mrg LIBSA= ${SALIB} 54 1.5 pk 55 1.16 jmc .if !make(obj) && !make(clean) && !make(cleandir) 56 1.5 pk .BEGIN: 57 1.5 pk @([ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine) 58 1.9 mycroft .NOPATH: machine 59 1.16 jmc .endif 60 1.9 mycroft CLEANFILES+= machine 61