|
|
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.3 (Berkeley) 10/9/85
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: # Install the mail address of the person maintaining dbx below
21: # as -DMAINTAINER. A null string disables gripes.
22:
23: CC = cc
24: CFLAGS = '-DMAINTAINER=""' -O
25:
26: LD = cc
27: LDFLAGS =
28: LIBRARIES =
29:
30: # LD = /bin/oldld
31: # LDFLAGS = -X /lib/crt0.o
32: # LIBRARIES = -lg -lc
33:
34: OBJ = \
35: y.tab.o \
36: asm.o \
37: events.o \
38: c.o \
39: cerror.o \
40: check.o \
41: coredump.o \
42: debug.o \
43: eval.o \
44: fortran.o \
45: keywords.o \
46: languages.o \
47: library.o \
48: lists.o \
49: machine.o \
50: main.o \
51: mappings.o \
52: modula-2.o \
53: names.o \
54: object.o \
55: operators.o \
56: pascal.o \
57: printsym.o \
58: process.o \
59: runtime.o \
60: scanner.o \
61: source.o \
62: stabstring.o \
63: symbols.o \
64: tree.o \
65: ops.o
66:
67: HDR = \
68: asm.h \
69: events.h \
70: c.h \
71: check.h \
72: coredump.h \
73: debug.h \
74: eval.h \
75: fortran.h \
76: keywords.h \
77: languages.h \
78: lists.h \
79: machine.h \
80: main.h \
81: mappings.h \
82: modula-2.h \
83: names.h \
84: object.h \
85: operators.h \
86: pascal.h \
87: printsym.h \
88: process.h \
89: runtime.h \
90: scanner.h \
91: source.h \
92: stabstring.h \
93: symbols.h \
94: tree.h \
95: ops.h
96:
97: SRC = \
98: defs.h \
99: commands.y \
100: asm.c \
101: events.c \
102: c.c \
103: cerror.s \
104: check.c \
105: coredump.c \
106: debug.c \
107: eval.c \
108: fortran.c \
109: keywords.c \
110: languages.c \
111: library.c \
112: lists.c \
113: machine.c \
114: main.c \
115: mappings.c \
116: modula-2.c \
117: names.c \
118: object.c \
119: operators.c \
120: pascal.c \
121: printsym.c \
122: process.c \
123: runtime.c \
124: scanner.c \
125: source.c \
126: stabstring.c \
127: symbols.c \
128: tree.c \
129: ops.c
130:
131: .c.o:
132: @echo "compiling $*.c"
133: @${CC} ${CFLAGS} -c $*.c
134:
135: .s.o:
136: @echo "assembling $*.s"
137: @${CC} -c $*.s
138:
139: .c.h:
140: ./makedefs -f $*.c $*.h
141:
142: ${AOUT}: makedefs mkdate ${HDR} ${OBJ}
143: @rm -f date.c
144: @./mkdate > date.c
145: @echo "linking"
146: @${CC} ${CFLAGS} -c date.c
147: @${LD} ${LDFLAGS} date.o ${OBJ} ${LIBRARIES} -o ${AOUT}
148:
149: profile: ${HDR} ${OBJ}
150: @rm -f date.c
151: @./mkdate > date.c
152: @echo "linking with -p"
153: @${CC} ${LDFLAGS} -p date.c ${OBJ} ${LIBRARIES} -o ${AOUT}
154:
155: y.tab.c: commands.y
156: @echo "expect 2 shift/reduce conflicts"
157: yacc -d commands.y
158:
159: makedefs: makedefs.c library.o cerror.o
160: ${CC} -O makedefs.c library.o cerror.o -o makedefs
161:
162: mkdate: mkdate.c
163: ${CC} -O mkdate.c -o mkdate
164:
165: print:
166: @echo "don't print it, it's too long"
167:
168: #
169: # Don't worry about the removal of header files, they're created from
170: # the source files.
171: #
172:
173: clean:
174: rm -f ${HDR} ${OBJ} y.tab.c y.tab.h ${AOUT} mkdate mkdate.o \
175: makedefs makedefs.o date.c core mon.out prof.out make.out
176:
177: cleandefs:
178: rm -f ${HDR} y.tab.h
179:
180: testinstall: ${AOUT} test install
181:
182: test:
183: @chdir tests; make
184:
185: install: ${AOUT}
186: install -s ${AOUT} ${DESTDIR}/${DEST}
187:
188: #
189: # Create a tar file called "tape" containing relevant files.
190: #
191:
192: TAPE = tape
193:
194: tape:
195: @tar cf ${TAPE} \
196: Makefile History version READ_ME ${SRC} \
197: makedefs.c mkdate.c tests pchanges ptests
198:
199: #
200: # Header dependencies are purposely incomplete since header files
201: # are "written" every time the accompanying source file changes even if
202: # the resulting contents of the header don't change. The alternative is
203: # to force a "makedefs" to be invoked for every header file each time dbx
204: # is made.
205: #
206: # Also, there should be a dependency of scanner.o and keywords.o on y.tab.h
207: # but misfortunately silly make does a "makedefs y.tab.c y.tab.h" which
208: # destroys y.tab.h.
209: #
210:
211: 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.