|
|
1.1 root 1: #
2: # Makefile for efl
3: #
4:
5: DESTDIR=
6: AS=/bin/as
7: CC=/bin/cc
8: LD=/bin/ld
9: INCLDIR=${DESTDIR}/usr/include
10: LIBDIR=${DESTDIR}/lib
11: ULIBDIR=${DESTDIR}/usr/lib
12: CFLAGS = -O -I${INCLDIR} -w
13: LIBES =
14: FILES1 = Makefile efl.1 defs tokens main.c init.c tailor.c\
15: gram.head gram.dcl gram.expr gram.exec\
16: lex.l fixuplex symtab.c\
17: dcl.c addr.c struct.c field.c misc.c alloc.c mk.c
18: FILES2 = exec.c blklab.c simple.c print.c temp.c io.c error.c\
19: pass2.c icfile.c free.c dclgen.c namgen.c
20: FILES = $(FILES1) $(FILES2)
21: P = detab 0 6 12 18 24 30 36 42 48 54 60 66 72 | und -3 | opr -r2
22:
23: OBJECTS = main.o init.o tailor.o gram.o lex.o symtab.o\
24: dcl.o addr.o struct.o field.o blklab.o\
25: mk.o misc.o alloc.o print.o simple.o exec.o temp.o io.o error.o\
26: pass2.o icfile.o free.o dclgen.o namgen.o
27:
28: a.out : $(OBJECTS)
29: @echo LOAD
30: @$(CC) $(CFLAGS) $(LDFLAGS) $(OBJECTS) $(LIBES)
31: @size
32:
33: $(OBJECTS) : defs
34: lex.o init.o : tokdefs
35:
36: # gram.c can no longer be made on a pdp11 because of yacc limits
37: gram.c: gram.head gram.dcl gram.expr gram.exec tokdefs
38: ( sed <tokdefs "s/#define/%token/" ;\
39: cat gram.head gram.dcl gram.expr gram.exec) >gram.in
40: $(YACC) $(YFLAGS) gram.in
41: (echo "#define YYDEBUG"; cat y.tab.c) > gram.c
42: rm -f gram.in y.tab.c
43:
44: lex.c: fixuplex
45: lex lex.l
46: ./fixuplex
47: mv lex.yy.c lex.c
48:
49: tokdefs: tokens
50: grep -n . <tokens | sed "s/\([^:]*\):\(.*\)/#define \2 \1/" >tokdefs
51:
52: clean:
53: -rm -f a.out *.o gram.c lex.c tokdefs
54:
55: cleansrc:
56: rm -f *.[cl] defs fixuplex *.dcl *.ex* *.head tokens Makefile
57:
58:
59: printall:
60: -pr $(FILES1) | $P
61: -pr $(FILES2) | $P
62: touch print
63:
64: print: $(FILES)
65: -pr $? | $P
66: touch print
67:
68: lint: a.out
69: lint -p *.c -lS
70:
71: install: a.out
72: -@size a.out /usr/bin/efl
73: install -s a.out ${DESTDIR}/usr/bin/efl
74:
75: test: a.out
76: a.out "system=gcos" efltest/Hard.e >z1 2>z2
77: cmp z1 efltest/Hard.out
78: a.out "system=gcos" efltest/Band.e >z1 2>z2
79: cmp z1 efltest/Band.out
80: a.out "system=gcos" efltest/Buram.e >z1 2>z2
81: cmp z1 efltest/Buram.out
82: a.out "system=gcos" efltest/Dgl.e >z1 2>z2
83: cmp z1 efltest/Dgl.out
84: rm -f z1 z2
85: @echo TEST OK
86:
87: tape: $(FILES) gram.c lex.c a.out
88: tar cb $(FILES) gram.c lex.c a.out
89:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.