Makefile.vax revision 1.15
1# $NetBSD: Makefile.vax,v 1.15 1996/02/02 19:08:36 mycroft Exp $ 2 3# @(#)Makefile.vax 7.18 (Berkeley) 12/16/90 4# 5# This makefile is constructed from a machine description: 6# config machineid 7# Most changes should be made in the machine description 8# /sys/vax/conf/``machineid'' 9# after which you should do 10# config machineid 11# Machine generic makefile changes should be made in 12# /sys/conf/Makefile.``machinetype'' 13# after which config should be rerun for all machines of that type. 14# 15# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE VISIBLE TO MAKEFILE 16# IF YOU CHANGE THE DEFINITION OF ANY OF THESE RECOMPILE EVERYTHING 17# 18# -DTRACE compile in kernel tracing hooks 19# -DQUOTA compile in file system quotas 20# -DUUDMA compile in unibus tu58 pseudo-dma code 21# 22CC= cc 23CPP= cpp 24LD= /usr/bin/ld 25AWK= awk 26 27S= ../../../.. 28VAX= ../.. 29 30INCLUDES= -I. -I$S/arch -I$S -I$S/sys 31COPTS= ${INCLUDES} ${IDENT} -D_KERNEL -D_VAX_INLINE_ 32AOPTS= ${COPTS} -D_LOCORE 33CFLAGS= -Werror -fno-builtin ${COPTS} 34LOAD_ADDRESS=80000000 35 36### find out what to use for libkern 37.include "$S/lib/libkern/Makefile.inc" 38.ifndef PROF 39LIBKERN= ${KERNLIB} 40.else 41LIBKERN= ${KERNLIB_PROF} 42.endif 43 44### find out what to use for libcompat 45.include "$S/compat/common/Makefile.inc" 46.ifndef PROF 47LIBCOMPAT= ${COMPATLIB} 48.else 49LIBCOMPAT= ${COMPATLIB_PROF} 50.endif 51 52NORMAL_C= ${CC} -O -c ${CFLAGS} ${PROF} $< 53NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} ${PARAM} $< 54NORMAL_S= ${CC} -x assembler-with-cpp -E -I. -D_LOCORE ${COPTS} $< | \ 55 ${AS} ${ASFLAGS} -o $*.o 56DRIVER_C= ${CC} -c ${CFLAGS} ${PROF} $< 57DRIVER_C_C= ${CC} -c ${CFLAGS} ${PROF} ${PARAM} $< 58SYSTEM_ASMS=intvec.o subr.o 59SYSTEM_OBJS=${SYSTEM_ASMS} lim.o vnode_if.o ${OBJS} param.o ioconf.o \ 60 ${LIBKERN} ${LIBCOMPAT} 61#SYSTEM_DEP=${SYSTEM_ASMS} lovm.o pmap.o 62SYSTEM_DEP=${SYSTEM_ASMS} ${SYSTEM_OBJS} 63SYSTEM_LD_HEAD= @echo loading $@; rm -f $@ 64SYSTEM_LD= ${LD} -Z -e _start -T ${LOAD_ADDRESS} -o $@ ${SYSTEM_OBJS} vers.o 65#SYSTEM_LD_TAIL= @echo rearranging symbols; symorder symbols.sort $@; ${DBSYM} -f 66SYSTEM_LD_TAIL=@echo Nu {r k{rnan klar!!!! 67 68 69%OBJS 70 71%CFILES 72 73%LOAD 74 75clean:: 76 rm -f eddep *vmunix tags *.o subr.i [a-tv-z]*.s \ 77 Errs errs linterrs makelinks vnode_if.* genassym 78 79lint: /tmp param.c 80 @lint -hbxn -DGENERIC ${COPTS} ${PARAM} \ 81 ${VAX}/vax/Locore.c ${CFILES} ioconf.c param.c | \ 82 grep -v 'struct/union .* never defined' | \ 83 grep -v 'possible pointer alignment problem' 84 85symbols.sort: ${VAX}/vax/symbols.raw 86 grep -v '^#' ${VAX}/vax/symbols.raw \ 87 | sed 's/^ //' | sort -u > symbols.sort 88 89intvec.o: ${VAX}/vax/intvec.s 90 ${CC} -x assembler-with-cpp -E ${AOPTS} ${VAX}/vax/intvec.s| as -o intvec.o 91 92subr.o: ${VAX}/vax/subr.s 93 ${CC} -x assembler-with-cpp -E ${AOPTS} ${VAX}/vax/subr.s| as -o subr.o 94 95 96depend: ${CFILES} 97 mkdep ${COPTS} ${.ALLSRC:M*.c} ioconf.c 98 mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} 99 100ioconf.o: 101 ${CC} -c ${CFLAGS} ${PARAM} ioconf.c 102 103lim.o: Makefile 104 ../../conf/mkoldconf.awk < ioconf.c > lim.c 105 ${CC} -O -c ${CFLAGS} ${PARAM} lim.c 106 107param.c: $S/conf/param.c 108 rm -f param.c 109 cp $S/conf/param.c . 110 111param.o: param.c Makefile 112 ${CC} -O -c ${CFLAGS} ${PARAM} param.c 113 114newvers: 115 sh $S/conf/newvers.sh 116 ${CC} ${CFLAGS} -c vers.c 117 118vnode_if.c vnode_if.h : $S/kern/vnode_if.sh $S/kern/vnode_if.src 119 AWK="${AWK}" sh $S/kern/vnode_if.sh $S/kern/vnode_if.src 120 121 122%RULES 123