|
|
1.1 ! root 1: # %W% (Berkeley) %G% ! 2: # ! 3: # Makefile for 4.4 BSD ! 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/tahoe/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 INVISIBLE 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: # ! 21: C2= /usr/old/libexec/c2 ! 22: LD= /usr/bin/ld ! 23: ! 24: S= ../.. ! 25: TAHOE= ../../tahoe ! 26: ! 27: INCLUDES= -I. -I$S -I$S/sys ! 28: COPTS= ${INCLUDES} ${IDENT} -DKERNEL ! 29: CFLAGS= -O ${COPTS} ! 30: ! 31: INLINECMD= ${TAHOE}/inline/obj/inline ! 32: INLINE= ${INLINECMD} ${INLINEOPTS} ! 33: ! 34: %OBJS ! 35: ! 36: %CFILES ! 37: ! 38: %LOAD ! 39: ! 40: clean: ! 41: rm -f eddep *vmunix tags *.o locore.i [a-uw-z]*.s \ ! 42: Errs errs linterrs makelinks ! 43: ! 44: lint: /tmp param.c ! 45: @lint -hbxn -I. -DGENERIC ${COPTS} ${PARAM} \ ! 46: ${TAHOE}/tahoe/Locore.c ${CFILES} ioconf.c param.c | \ ! 47: grep -v 'struct/union .* never defined' | \ ! 48: grep -v 'possible pointer alignment problem' ! 49: ! 50: symbols.sort: ${TAHOE}/tahoe/symbols.raw ! 51: grep -v '^#' ${TAHOE}/tahoe/symbols.raw \ ! 52: | sed 's/^ //' | sort -u > symbols.sort ! 53: ! 54: ${INLINECMD}: ! 55: cd ${TAHOE}/inline; make ! 56: ! 57: locore.o: assym.s ${TAHOE}/tahoe/scb.s vbvec.s ${TAHOE}/tahoe/locore.s ! 58: locore.o: vbglue.s ${TAHOE}/include/mtpr.h ${TAHOE}/include/trap.h ! 59: locore.o: ${TAHOE}/include/psl.h ${TAHOE}/include/pte.h ${TAHOE}/tahoe/cp.h ! 60: locore.o: ${TAHOE}/tahoe/mem.h ! 61: locore.o: ! 62: cat assym.s ${TAHOE}/tahoe/scb.s vbvec.s ${TAHOE}/tahoe/locore.s \ ! 63: vbglue.s > locore.c ! 64: ${CC} -E -DLOCORE ${COPTS} locore.c > locore.i ! 65: @echo 'as -o locore.o locore.i' ! 66: @${AS} -o locore.o locore.i ! 67: @rm locore.i ! 68: ! 69: # the following is necessary because autoconf.o depends on #if GENERIC ! 70: autoconf.o: Makefile ! 71: ! 72: # depend on network configuration ! 73: af.o uipc_proto.o locore.o: Makefile ! 74: ! 75: # depend on maxusers ! 76: assym.s machdep.o: Makefile ! 77: ! 78: # depends on KDB (cons.o also depends on GENERIC) ! 79: trap.o cons.o: Makefile ! 80: ! 81: assym.s: genassym ! 82: ./genassym >assym.s ! 83: ! 84: genassym: ! 85: ${CC} ${INCLUDES} ${IDENT} ${PARAM} -o genassym \ ! 86: ${TAHOE}/tahoe/genassym.c ! 87: ! 88: depend: assym.s ! 89: mkdep ${COPTS} ${CFILES} ioconf.c ! 90: mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${TAHOE}/tahoe/genassym.c ! 91: ! 92: links: ! 93: egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ ! 94: sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink ! 95: echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ ! 96: sort -u | comm -23 - dontlink | \ ! 97: sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks ! 98: echo 'rm -f udiv.o;ln -s ../GENERIC/udiv.o udiv.o' >> makelinks ! 99: echo 'rm -f urem.o;ln -s ../GENERIC/urem.o urem.o' >> makelinks ! 100: sh makelinks && rm -f dontlink ! 101: ! 102: tags: ! 103: @echo "see $S/kern/Makefile for tags" ! 104: ! 105: param.c: $S/conf/param.c ! 106: rm -f param.c ! 107: cp $S/conf/param.c . ! 108: ! 109: param.o: param.c Makefile ! 110: ${CC} -c ${CFLAGS} ${PARAM} param.c ! 111: ! 112: %RULES
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.