|
|
1.1 ! root 1: # ! 2: # Copyright (c) 1983 Regents of the University of California. ! 3: # All rights reserved. The Berkeley software License Agreement ! 4: # specifies the terms and conditions for redistribution. ! 5: # ! 6: # @(#)Makefile 5.11 (Berkeley) 1/11/88 ! 7: # ! 8: # make file for debugger "dbx" ! 9: # ! 10: # The file "defs.h" is included by all. ! 11: # ! 12: ! 13: .SUFFIXES: ! 14: .SUFFIXES: .h .c .s .o ! 15: ! 16: AOUT = tdbx ! 17: DESTDIR = ! 18: DEST = /usr/ucb/dbx ! 19: ! 20: CC = cc ! 21: AS = as ! 22: # ! 23: # if you want gripes ! 24: # CFLAGS = -g '-DMAINTAINER="[email protected]"' ! 25: # ! 26: CFLAGS = -O # -g ! 27: ! 28: LD = cc ! 29: LDFLAGS = # -g ! 30: LIBRARIES = # -lPW for IRIS (System V) ! 31: ! 32: OBJ = \ ! 33: y.tab.o \ ! 34: asm.o \ ! 35: events.o \ ! 36: c.o \ ! 37: cerror.o \ ! 38: check.o \ ! 39: coredump.o \ ! 40: debug.o \ ! 41: eval.o \ ! 42: fortran.o \ ! 43: keywords.o \ ! 44: languages.o \ ! 45: library.o \ ! 46: lists.o \ ! 47: machine.o \ ! 48: main.o \ ! 49: mappings.o \ ! 50: modula-2.o \ ! 51: names.o \ ! 52: object.o \ ! 53: operators.o \ ! 54: pascal.o \ ! 55: printsym.o \ ! 56: process.o \ ! 57: runtime.o \ ! 58: scanner.o \ ! 59: source.o \ ! 60: stabstring.o \ ! 61: symbols.o \ ! 62: tree.o \ ! 63: ops.o ! 64: ! 65: HDR = \ ! 66: asm.h \ ! 67: events.h \ ! 68: c.h \ ! 69: check.h \ ! 70: coredump.h \ ! 71: debug.h \ ! 72: eval.h \ ! 73: fortran.h \ ! 74: keywords.h \ ! 75: languages.h \ ! 76: lists.h \ ! 77: machine.h \ ! 78: main.h \ ! 79: mappings.h \ ! 80: modula-2.h \ ! 81: names.h \ ! 82: object.h \ ! 83: operators.h \ ! 84: pascal.h \ ! 85: printsym.h \ ! 86: process.h \ ! 87: runtime.h \ ! 88: scanner.h \ ! 89: source.h \ ! 90: stabstring.h \ ! 91: symbols.h \ ! 92: tree.h \ ! 93: ops.h ! 94: ! 95: SRC = \ ! 96: defs.h \ ! 97: commands.y \ ! 98: asm.c \ ! 99: events.c \ ! 100: c.c \ ! 101: cerror.${MACHINE}.s \ ! 102: check.c \ ! 103: coredump.c \ ! 104: debug.c \ ! 105: eval.c \ ! 106: fortran.c \ ! 107: keywords.c \ ! 108: languages.c \ ! 109: library.c \ ! 110: lists.c \ ! 111: main.c \ ! 112: mappings.c \ ! 113: modula-2.c \ ! 114: names.c \ ! 115: object.c \ ! 116: operators.c \ ! 117: pascal.c \ ! 118: printsym.c \ ! 119: process.c \ ! 120: scanner.c \ ! 121: source.c \ ! 122: stabstring.c \ ! 123: symbols.c \ ! 124: tree.c \ ! 125: ${MACHINE}.c \ ! 126: runtime.${MACHINE}.c \ ! 127: ops.${MACHINE}.c ! 128: ! 129: .c.o: ! 130: @echo "compiling $*.c" ! 131: @${CC} ${CFLAGS} -c $*.c ! 132: ! 133: .s.o: ! 134: @echo "assembling $*.s" ! 135: @rm -f tmp ! 136: @/lib/cpp $*.s | grep -v "^#" > tmp ! 137: @${AS} -o $*.o tmp ! 138: @rm -f tmp ! 139: ! 140: .c.h: ! 141: ./makedefs -f $*.c $*.h ! 142: ! 143: ${AOUT}: makedefs mkdate ${HDR} ${OBJ} ! 144: @rm -f date.c ! 145: @./mkdate > date.c ! 146: @echo "linking" ! 147: @${CC} ${CFLAGS} -c date.c ! 148: @${LD} ${LDFLAGS} date.o ${OBJ} ${LIBRARIES} -o ${AOUT} ! 149: ! 150: profile: ${HDR} ${OBJ} ! 151: @rm -f date.c ! 152: @./mkdate > date.c ! 153: @echo "linking with -p" ! 154: @${CC} ${LDFLAGS} -p date.c ${OBJ} ${LIBRARIES} -o ${AOUT} ! 155: ! 156: y.tab.c: commands.y ! 157: @echo "expect 2 shift/reduce conflicts" ! 158: yacc -d commands.y ! 159: ! 160: cerror.s: cerror.${MACHINE}.s ! 161: @rm -f cerror.s ! 162: @ln -s cerror.${MACHINE}.s cerror.s ! 163: ! 164: machine.c: ${MACHINE}.c ! 165: @rm -f machine.c ! 166: @ln -s ${MACHINE}.c machine.c ! 167: ! 168: ops.c: ops.${MACHINE}.c ! 169: @rm -f ops.c ! 170: @ln -s ops.${MACHINE}.c ops.c ! 171: ! 172: runtime.c: runtime.${MACHINE}.c ! 173: @rm -f runtime.c ! 174: @ln -s runtime.${MACHINE}.c runtime.c ! 175: ! 176: makedefs: makedefs.c library.o cerror.o ! 177: ${CC} -g makedefs.c library.o cerror.o -o makedefs ! 178: ! 179: mkdate: mkdate.c ! 180: ${CC} -g ${CFLAGS} mkdate.c -o mkdate ! 181: ! 182: print: ! 183: @echo "don't print it, it's too long" ! 184: ! 185: depend: ! 186: ! 187: # ! 188: # Don't worry about the removal of header files, they're created from ! 189: # the source files. ! 190: # ! 191: ! 192: clean: ! 193: rm -f ${HDR} ${OBJ} y.tab.c y.tab.h ${AOUT} mkdate mkdate.o \ ! 194: makedefs makedefs.o date.c core mon.out prof.out make.out \ ! 195: cerror.s ops.c machine.c runtime.c date.o ! 196: @chdir tests; make clean ! 197: ! 198: cleandefs: ! 199: rm -f ${HDR} y.tab.h ! 200: ! 201: testinstall: ${AOUT} test install ! 202: ! 203: test: ! 204: @cd tests; make ! 205: ! 206: install: ${AOUT} ! 207: install -s ${AOUT} ${DESTDIR}${DEST} ! 208: ! 209: # ! 210: # Create a tar file called "tape" containing relevant files. ! 211: # ! 212: ! 213: TAPE = f tape ! 214: ! 215: tape: ! 216: @tar c${TAPE} Makefile History READ_ME ${SRC} \ ! 217: makedefs.c mkdate.c tests pc0mods dbx.1 newdbx.1 dbxstab.5 ! 218: ! 219: # ! 220: # without tests subdirectory ! 221: # ! 222: srconlytape: ! 223: @tar c${TAPE} Makefile History READ_ME ${SRC} \ ! 224: makedefs.c mkdate.c dbx.1 newdbx.1 dbxstab.5 ! 225: ! 226: # ! 227: # Header dependencies are purposely incomplete since header files ! 228: # are "written" every time the accompanying source file changes even if ! 229: # the resulting contents of the header don't change. The alternative is ! 230: # to force a "makedefs" to be invoked for every header file each time dbx ! 231: # is made. ! 232: # ! 233: # Also, there should be a dependency of scanner.o and keywords.o on y.tab.h ! 234: # but misfortunately silly make does a "makedefs y.tab.c y.tab.h" which ! 235: # destroys y.tab.h. ! 236: # ! 237: ! 238: symbols.o tree.o check.o eval.o events.o: operators.h
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.