Commit | Line | Data |
---|---|---|
c64c6a16 | 1 | # @(#)Makefile 4.6 (Berkeley) %G% |
723343f2 SL |
2 | # |
3 | # make file for debugger "dbx" | |
4 | # | |
5 | # The file "defs.h" is included by all. | |
6 | # | |
7 | # N.B.: | |
8 | # My version of cerror automatically catches certain errors | |
9 | # such as out of memory, I/O error. If you re-make this with | |
10 | # the standard cerror, the program could fault unexpectedly. | |
11 | # | |
12 | ||
13 | .SUFFIXES: | |
14 | .SUFFIXES: .h .c .s .o | |
15 | ||
16 | AOUT = tdbx | |
5eba90cc ML |
17 | DESTDIR = |
18 | DEST = ${DESTDIR}/usr/ucb/dbx | |
723343f2 SL |
19 | |
20 | LIBRARIES = | |
21 | ||
22 | CC = cc | |
23 | CFLAGS = # -g | |
5eba90cc | 24 | LDFLAGS = -g |
723343f2 SL |
25 | |
26 | OBJ = \ | |
27 | y.tab.o \ | |
28 | asm.o \ | |
29 | events.o \ | |
30 | c.o \ | |
31 | cerror.o \ | |
32 | check.o \ | |
33 | coredump.o \ | |
8b890eea | 34 | debug.o \ |
723343f2 | 35 | eval.o \ |
8b890eea | 36 | fortran.o \ |
723343f2 SL |
37 | keywords.o \ |
38 | languages.o \ | |
39 | library.o \ | |
40 | lists.o \ | |
41 | machine.o \ | |
42 | main.o \ | |
43 | mappings.o \ | |
44 | names.o \ | |
45 | object.o \ | |
46 | operators.o \ | |
47 | pascal.o \ | |
48 | printsym.o \ | |
49 | process.o \ | |
50 | runtime.o \ | |
51 | scanner.o \ | |
52 | source.o \ | |
53 | symbols.o \ | |
54 | tree.o \ | |
55 | ops.o | |
56 | ||
57 | HDR = \ | |
58 | asm.h \ | |
59 | events.h \ | |
60 | c.h \ | |
61 | check.h \ | |
62 | coredump.h \ | |
63 | eval.h \ | |
8b890eea | 64 | fortran.h \ |
723343f2 SL |
65 | keywords.h \ |
66 | languages.h \ | |
67 | lists.h \ | |
68 | machine.h \ | |
69 | main.h \ | |
70 | mappings.h \ | |
71 | names.h \ | |
72 | object.h \ | |
73 | operators.h \ | |
74 | pascal.h \ | |
75 | printsym.h \ | |
76 | process.h \ | |
77 | runtime.h \ | |
78 | source.h \ | |
79 | scanner.h \ | |
80 | symbols.h \ | |
81 | tree.h \ | |
82 | ops.h | |
83 | ||
c64c6a16 ML |
84 | SRC = \ |
85 | defs.h \ | |
86 | commands.y \ | |
87 | asm.c \ | |
88 | events.c \ | |
89 | c.c \ | |
90 | cerror.s \ | |
91 | check.c \ | |
92 | coredump.c \ | |
93 | debug.c \ | |
94 | eval.c \ | |
95 | fortran.c \ | |
96 | keywords.c \ | |
97 | languages.c \ | |
98 | library.c \ | |
99 | lists.c \ | |
100 | machine.c \ | |
101 | main.c \ | |
102 | mappings.c \ | |
103 | names.c \ | |
104 | object.c \ | |
105 | operators.c \ | |
106 | pascal.c \ | |
107 | printsym.c \ | |
108 | process.c \ | |
109 | runtime.c \ | |
110 | scanner.c \ | |
111 | source.c \ | |
112 | symbols.c \ | |
113 | tree.c \ | |
114 | ops.c | |
115 | ||
723343f2 SL |
116 | .c.o: |
117 | @echo "compiling $*.c" | |
118 | @${CC} ${CFLAGS} -c $*.c | |
119 | ||
120 | .s.o: | |
121 | @echo "assembling $*.s" | |
122 | @${CC} -c $*.s | |
123 | ||
124 | .c.h: | |
125 | ./makedefs -f $*.c $*.h | |
126 | ||
1c39daec ML |
127 | ${AOUT}: makedefs mkdate ${HDR} ${OBJ} |
128 | @rm -f date.c | |
129 | @./mkdate > date.c | |
723343f2 | 130 | @echo "linking" |
1c39daec | 131 | @${CC} ${LDFLAGS} date.c ${OBJ} ${LIBRARIES} -o ${AOUT} |
723343f2 SL |
132 | |
133 | profile: ${HDR} ${OBJ} | |
1c39daec ML |
134 | @rm -f date.c |
135 | @./mkdate > date.c | |
723343f2 | 136 | @echo "linking with -p" |
1c39daec | 137 | @${CC} ${LDFLAGS} -p date.c ${OBJ} ${LIBRARIES} -o ${AOUT} |
723343f2 SL |
138 | |
139 | y.tab.c: commands.y | |
140 | yacc -d commands.y | |
141 | ||
142 | makedefs: makedefs.c library.o cerror.o | |
143 | ${CC} makedefs.c library.o cerror.o -o makedefs | |
144 | ||
1c39daec ML |
145 | mkdate: mkdate.c |
146 | ${CC} mkdate.c -o mkdate | |
147 | ||
723343f2 SL |
148 | print: |
149 | @echo "don't print it, it's too long" | |
150 | ||
151 | # | |
152 | # Don't worry about the removal of header files, they're created from | |
153 | # the source files. | |
154 | # | |
155 | ||
156 | clean: | |
c64c6a16 ML |
157 | rm -f ${HDR} ${OBJ} y.tab.c y.tab.h \ |
158 | ${AOUT} mkdate mkdate.o makedefs makedefs.o date.c core | |
723343f2 SL |
159 | |
160 | install: | |
513d5497 | 161 | install ${AOUT} ${DEST} |
723343f2 | 162 | |
c64c6a16 ML |
163 | # |
164 | # Create a tar file called "tape" containing relevant files. | |
165 | # | |
166 | ||
167 | tape: | |
168 | tar cfv tape Makefile READ_ME TO_DO ${SRC} makedefs.c mkdate.c | |
169 | ||
723343f2 SL |
170 | # |
171 | # Header dependencies are purposely incomplete since header files | |
172 | # are "written" every time the accompanying source file changes even if | |
173 | # the resulting contents of the header don't change. The alternative is | |
174 | # to force a "makedefs" to be invoked for every header file each time dbx | |
175 | # is made. | |
176 | # | |
177 | # Also, there should be a dependency of scanner.o and keywords.o on y.tab.h | |
178 | # but misfortunately silly make does a "makedefs y.tab.c y.tab.h" which | |
179 | # destroys y.tab.h. | |
180 | # | |
181 | ||
182 | symbols.o tree.o check.o eval.o events.o: operators.h |