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