summaryrefslogtreecommitdiff
path: root/sys/arch/pica/stand/Makefile
blob: a7dd63832007eae39d9e12e6a21d8a4468334869 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#	$NetBSD: Makefile,v 1.5 1995/01/18 06:53:36 mellon Exp $
#	@(#)Makefile	8.3 (Berkeley) 2/16/94

DESTDIR=
STAND=	../../stand
#VPATH=	${STAND}

# RELOC=80200000 allows for boot prog up to 1D0000 (1900544) bytes long
RELOC=	80200000

S=      ../../..

DEFS= -DSTANDALONE -DDEBUG
CFLAGS=	-O2 ${INCPATH} ${DEFS}
AFLAGS=	-O2 ${INCPATH} ${DEFS} -DLOCORE

.PATH: ${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
.PATH: ${S}/stand ${S}/lib/libsa

#INCPATH=-I. -I/sys
INCPATH=-I${.CURDIR} -I${.CURDIR}/../.. -I${S} -I${S}/lib/libsa

### find out what to use for libkern
.include "$S/lib/libkern/Makefile.inc"
LIBKERN= ${KERNLIB}
#KERNLIB= ${.CURDIR}/../compile/libkern.a

.include "$S/lib/libsa/Makefile.inc"
LIBSA=  ${SA_LIB}

# not yet: need to write libsa/Makefile.inc first
LIBS=  ${.OBJDIR}/libdrive.a ${.CURDIR}/libsa/libsa.a  ${KERNLIB}
#LIBS=	libdrive.a libsa/libsa.a ../../libkern/obj/libkern.a 

DRIVERS= rz.c
SRCS=	${DRIVERS}
#STUFF=	callvec.c devopen.c getenv.c gets.c strcmp.c
STUFF=

ALL=	boot

.s.o:
	${CPP} -E ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} | \
	    ${AS} -o ${.TARGET}

all: ${ALL}

boot: ${LIBS}

#libsa/libsa.a::
#	cd libsa; make

${.OBJDIR}/libdrive.a: conf.o ${DRIVERS:.c=.o}
	ar crv $@ $?
	ranlib $@

# depend on DEFS

#before other deps on bootconf.o
bootconf.o: conf.o
	rm -f bootconf.c
	ln -s ${.CURDIR}/conf.c bootconf.c
	${CC} -c ${CFLAGS} -DBOOT bootconf.c
	rm -f bootconf.c


# bootable from real disks

boot:	start.o boot.o bootconf.o filesystem.o ${LIBS}
	/usr/gnu/ld -N -Ttext ${RELOC} -e __start start.o boot.o bootconf.o filesystem.o ${LIBS} -o boot.elf
	elf2ecoff boot.elf boot

start.o: ${.CURDIR}/start.S

#	${CPP} -E ${CFLAGS:M-[ID]*} -DLOCORE ${AINC} ${.IMPSRC} | \
#	    ${AS} -o ${.TARGET}

mkboot: ${.CURDIR}/mkboot.c
	${CC} ${CFLAGS} -o mkboot ${.CURDIR}/mkboot.c

# utilities

clean::
	rm -f .depend *.o *.exe *.i errs make.out core*
	rm -f a.out ${ALL}
	rm -f libdrive.a
	cd libsa; make cleandir

install:

depend: ${SRCS}
	mkdep ${INCPATH} ${DEFS} ${SRCS}
	cd libsa; make depend

.include <bsd.dep.mk>
.include <bsd.obj.mk>