Commit | Line | Data |
---|---|---|
02689352 | 1 | # Makefile 4.10 84/08/17 |
723343f2 SL |
2 | # |
3 | # make file for debugger "dbx" | |
4 | # | |
5 | # The file "defs.h" is included by all. | |
6 | # | |
02689352 SL |
7 | AOUT= tdbx |
8 | DESTDIR= | |
9 | DEST= ${DESTDIR}/usr/ucb/dbx | |
10 | LIBS= | |
11 | CFLAGS= -O | |
12 | YFLAGS= -d | |
13 | LDFLAGS= | |
14 | HDR= asm.h events.h c.h check.h coredump.h eval.h fortran.h keywords.h \ | |
15 | languages.h lists.h machine.h main.h mappings.h modula-2.h names.h \ | |
16 | object.h operators.h pascal.h printsym.h process.h re.h \ | |
17 | runtime.h scanner.h source.h stabstring.h symbols.h tree.h ops.h | |
18 | SRCS= asm.c events.c c.c cerror.s check.c coredump.c debug.c eval.c \ | |
19 | fortran.c keywords.c languages.c library.c lists.c machine.c main.c \ | |
20 | mappings.c modula-2.c names.c object.c operators.c pascal.c printsym.c \ | |
21 | process.c re.c runtime.c scanner.c source.c symbols.c tree.c ops.c | |
22 | OBJS= y.tab.o asm.o events.o c.o cerror.o check.o coredump.o \ | |
23 | debug.o eval.o fortran.o keywords.o languages.o library.o \ | |
24 | lists.o machine.o main.o mappings.o modula-2.o names.o \ | |
25 | object.o operators.o pascal.o printsym.o process.o re.o \ | |
26 | runtime.o scanner.o source.o stabstring.o symbols.o tree.o \ | |
27 | ops.o | |
723343f2 SL |
28 | |
29 | .SUFFIXES: | |
30 | .SUFFIXES: .h .c .s .o | |
31 | ||
723343f2 | 32 | .c.o: |
02689352 | 33 | ${CC} ${CFLAGS} -c $*.c |
723343f2 SL |
34 | |
35 | .s.o: | |
02689352 | 36 | ${CC} -c $*.s |
723343f2 SL |
37 | |
38 | .c.h: | |
02689352 | 39 | @./makedefs -f $*.c $*.h |
723343f2 | 40 | |
02689352 | 41 | ${AOUT}: makedefs mkdate ${HDR} ${OBJS} |
1c39daec ML |
42 | @rm -f date.c |
43 | @./mkdate > date.c | |
723343f2 | 44 | @echo "linking" |
02689352 | 45 | @${CC} ${LDFLAGS} date.c ${OBJS} ${LIBS} -o ${AOUT} |
723343f2 | 46 | |
02689352 | 47 | profile: ${HDR} ${OBJS} |
1c39daec ML |
48 | @rm -f date.c |
49 | @./mkdate > date.c | |
723343f2 | 50 | @echo "linking with -p" |
02689352 | 51 | @${CC} ${LDFLAGS} -p date.c ${OBJS} ${LIBS} -o ${AOUT} |
723343f2 SL |
52 | |
53 | y.tab.c: commands.y | |
2fd0f574 | 54 | @echo "expect 2 shift/reduce conflicts" |
02689352 | 55 | ${YACC} ${YFLAGS} commands.y |
723343f2 SL |
56 | |
57 | makedefs: makedefs.c library.o cerror.o | |
02689352 | 58 | ${CC} ${CFLAGS} ${LDFLAGS} makedefs.c library.o cerror.o -o makedefs |
723343f2 | 59 | |
1c39daec | 60 | mkdate: mkdate.c |
02689352 | 61 | ${CC} ${CFLAGS} ${LDFLAGS} mkdate.c -o mkdate |
1c39daec | 62 | |
723343f2 SL |
63 | print: |
64 | @echo "don't print it, it's too long" | |
65 | ||
66 | # | |
67 | # Don't worry about the removal of header files, they're created from | |
68 | # the source files. | |
69 | # | |
723343f2 | 70 | clean: |
02689352 SL |
71 | rm -f ${HDR} ${OBJS} y.tab.c y.tab.h ${AOUT} \ |
72 | mkdate mkdate.o makedefs makedefs.o date.c core mon.out \ | |
73 | prof.out errs | |
723343f2 | 74 | |
2fd0f574 SL |
75 | testinstall: ${AOUT} test install |
76 | ||
77 | test: | |
78 | @chdir tests; make | |
79 | ||
80 | install: ${AOUT} | |
513d5497 | 81 | install ${AOUT} ${DEST} |
723343f2 | 82 | |
02689352 SL |
83 | tags: defs.h ${SRCS} |
84 | ctags -w defs.h ${SRCS} | |
c64c6a16 | 85 | |
723343f2 SL |
86 | # |
87 | # Header dependencies are purposely incomplete since header files | |
88 | # are "written" every time the accompanying source file changes even if | |
89 | # the resulting contents of the header don't change. The alternative is | |
90 | # to force a "makedefs" to be invoked for every header file each time dbx | |
91 | # is made. | |
92 | # | |
93 | # Also, there should be a dependency of scanner.o and keywords.o on y.tab.h | |
94 | # but misfortunately silly make does a "makedefs y.tab.c y.tab.h" which | |
95 | # destroys y.tab.h. | |
96 | # | |
723343f2 | 97 | symbols.o tree.o check.o eval.o events.o: operators.h |