|
|
1.1 ! root 1: # ! 2: # Makefile for Research V8. ! 3: # ! 4: # This makefile is constructed from a machine description: ! 5: # config machine ! 6: # Most changes should be made in the machine description ! 7: # /usr/sys/conf/``machineid'' ! 8: # after which you should do ! 9: # config machineid ! 10: # Generic makefile changes should be made in ! 11: # /usr/sys/conf/makefile ! 12: # after which config should be rerun for all machines. ! 13: # ! 14: # -DINSECURE old style non-vanishing suid bits ! 15: # -DUNFAST don't compile in inline expansions and speedups ! 16: # -DPGINPROF gather statistics about pagein/pageout activity ! 17: # -DDISKMON monitor disk cacheing activity (bio.c) ! 18: # -DINTRLVE compile in code for file systems interleaved across drives ! 19: # -DTRACE compile in kernel tracing hooks ! 20: # ! 21: C2= /lib/c2 ! 22: ! 23: COPTS= ${IDENT} -DKERNEL ! 24: CFLAGS= -O ${COPTS} ! 25: ! 26: AHEADS= ../h/pcb.m ! 27: ! 28: %OBJS ! 29: ! 30: %CFILES ! 31: ! 32: %LOAD ! 33: ! 34: clean: ! 35: rm -f eddep *unix* tags *.o locore.i [a-tv-z]*.s errs linterrs ! 36: ! 37: lint: /tmp ! 38: @lint -hbxn -I. -DGENERIC ${COPTS} ../sys/Locore.c \ ! 39: ${CFILES} ../dev/swapgeneric.c ioconf.c | \ ! 40: grep -v 'struct/union .* never defined' | \ ! 41: grep -v 'possible pointer alignment problem' ! 42: ! 43: ../sys/symbols.sort: ../sys/symbols.raw ! 44: grep -v '^#' ../sys/symbols.raw \ ! 45: | sed 's/^ //' | sort | uniq > ../sys/symbols.sort ! 46: ! 47: locore.o: assym.s ${AHEADS} ../sys/scb.s ../sys/locore.s ubglue.s \ ! 48: ../h/mtpr.h ../h/trap.h ../h/psl.h ../h/pte.h ../h/cpu.h ../h/mtpr.h mba.h ! 49: cat assym.s ../sys/scb.s ../sys/locore.s ubglue.s > locore.c ! 50: cc -E -DLOCORE ${COPTS} locore.c > locore.i ! 51: @echo 'as -o locore.o $${AHEADS} locore.i' ! 52: @as -o locore.o ${AHEADS} locore.i ! 53: @rm locore.i ! 54: ! 55: assym.s: ../h/param.h ../h/pte.h ../h/buf.h ../h/vmparam.h ../h/vmmeter.h \ ! 56: ../h/dir.h ../h/cmap.h ../h/map.h ../h/ubavar.h ../h/proc.h ! 57: cc ${IDENT} ../conf/genassym.c; ./a.out >assym.s; rm -f a.out ! 58: ! 59: ../h/param.h: /usr/include/signal.h ! 60: touch ../h/param.h ! 61: ../h/tty.h: /usr/include/sgtty.h ../h/ioctl.h ! 62: touch ../h/tty.h ! 63: ../h/user.h: ../h/pcb.h ../h/dmap.h ../h/vtimes.h ../h/types.h \ ! 64: /usr/include/errno.h ! 65: touch ../h/user.h ! 66: ../h/vm.h: ../h/vmmac.h ../h/vmmeter.h ../h/vmparam.h ../h/vmsystm.h ! 67: touch ../h/vm.h ! 68: ../sys/sysent.c: ../sys/vmsysent.c ! 69: touch ../sys/sysent.c ! 70: ! 71: depend: ! 72: grep '^#include' ${CFILES} | grep -v '<' | \ ! 73: sed 's/:[^"]*"\([^"]*\)".*/: \1/; \ ! 74: s/\.c/.o/; s,../[a-z]*/,,' | \ ! 75: awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \ ! 76: else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \ ! 77: else rec = rec " " $$2 } } \ ! 78: END { print rec } ' > makedep ! 79: echo '$$r makedep' >>eddep ! 80: echo '/^# DO NOT DELETE THIS LINE/+1,$$d' >eddep ! 81: echo '$$r makedep' >>eddep ! 82: echo -e '/^unix:/;/@ld/;.g/ -x/s///\\\na\\\n @strip -g unix' >>eddep ! 83: echo 'w' >>eddep ! 84: cp makefile makefile.bak ! 85: ed - makefile < eddep ! 86: rm eddep makedep ! 87: ! 88: tags: ! 89: /usr/ucb/ctags ${CFILES} ! 90: ! 91: print: ! 92: @pr -f makefile ../sys/TODO linterrs ! 93: @/usr/ucb/ctags -x ${CFILES} | pr -f -h XREF ! 94: @(size unix *.o) | pr -f -h sizes ! 95: @ls -ls | pr -f ! 96: @cd ../h; ls -ls | pr -f ; pr -f *.m *.h ! 97: @cd ../sys; pr -f asm.sed Locore.c scb.s locore.s ! 98: @pr -f ${CFILES} ! 99: ! 100: ioconf.o: ioconf.c ../h/param.h ../h/pte.h ../h/buf.h ../h/map.h \ ! 101: ../h/mbavar.h ../h/vm.h ../h/ubavar.h ! 102: ${CC} -I. -c -S ${COPTS} ioconf.c ! 103: ${C2} ioconf.s | sed -f ../sys/asm.sed | ${AS} -o ioconf.o ! 104: rm -f ioconf.s ! 105: ! 106: param.c: ../sys/param.c ! 107: cp ../sys/param.c . ! 108: ! 109: param.o: param.c makefile ! 110: ${CC} -c -O ${IDENT} ${PARAM} param.c ! 111: ! 112: %RULES ! 113: ! 114: # DO NOT DELETE THIS LINE -- make depend uses it ! 115:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.