1# 2# Copyright (c) 1987 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.1 (Berkeley) 12/12/87 7# 8CFLAGS= -O -w 9LIBC= /lib/libc.a 10SRCS= addr.c alloc.c blklab.c dcl.c dclgen.c error.c exec.c field.c free.c \ 11 gram.c icfile.c init.c io.c lex.c main.c misc.c mk.c namgen.c pass2.c \ 12 print.c simple.c struct.c symtab.c tailor.c temp.c 13OBJS= addr.o alloc.o blklab.o dcl.o dclgen.o error.o exec.o field.o free.o \ 14 gram.o icfile.o init.o io.o lex.o main.o misc.o mk.o namgen.o pass2.o \ 15 print.o simple.o struct.o symtab.o tailor.o temp.o 16 17all: efl 18 19efl: ${OBJS} ${LIBC} 20 ${CC} -o $@ ${CFLAGS} ${OBJS} 21 22# gram.c can no longer be made on a pdp11 because of yacc limits 23gram.c: gram.head gram.dcl gram.expr gram.exec tokdefs 24 (sed < tokdefs "s/#define/%token/" ; \ 25 cat gram.head gram.dcl gram.expr gram.exec) > gram.in 26 ${YACC} ${YFLAGS} gram.in 27 (echo "#define YYDEBUG"; cat y.tab.c) > gram.c 28 rm -f gram.in y.tab.c 29 30lex.c: fixuplex 31 lex lex.l 32 sh fixuplex 33 mv lex.yy.c lex.c 34 35tokdefs: tokens 36 grep -n . < tokens | sed "s/\([^:]*\):\(.*\)/#define \2 \1/" > tokdefs 37 38clean: FRC 39 rm -f ${OBJS} core efl gram.c lex.c tokdefs 40 41depend: ${SRCS} FRC 42 mkdep ${CFLAGS} ${SRCS} 43 44install: FRC 45 install -s -o bin -g bin -m 755 efl ${DESTDIR}/usr/bin/efl 46 47lint: ${SRCS} FRC 48 lint ${CFLAGS} ${SRCS} 49 50tags: ${SRCS} FRC 51 ctags ${SRCS} 52 53test: 54 ./efl "system=gcos" efltest/Hard.e >z1 2>z2 55 cmp z1 efltest/Hard.out 56 ./efl "system=gcos" efltest/Band.e >z1 2>z2 57 cmp z1 efltest/Band.out 58 ./efl "system=gcos" efltest/Buram.e >z1 2>z2 59 cmp z1 efltest/Buram.out 60 ./efl "system=gcos" efltest/Dgl.e >z1 2>z2 61 cmp z1 efltest/Dgl.out 62 rm -f z1 z2 63 @echo TEST OK 64 65FRC: 66 67# DO NOT DELETE THIS LINE -- mkdep uses it. 68# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. 69 70addr.o: addr.c defs /usr/include/stdio.h 71alloc.o: alloc.c defs /usr/include/stdio.h 72blklab.o: blklab.c defs /usr/include/stdio.h 73dcl.o: dcl.c defs /usr/include/stdio.h 74dclgen.o: dclgen.c defs /usr/include/stdio.h 75error.o: error.c defs /usr/include/stdio.h 76exec.o: exec.c defs /usr/include/stdio.h 77field.o: field.c defs /usr/include/stdio.h 78free.o: free.c defs /usr/include/stdio.h 79gram.o: gram.c defs /usr/include/stdio.h 80icfile.o: icfile.c defs /usr/include/stdio.h 81init.o: init.c defs /usr/include/stdio.h tokdefs 82io.o: io.c /usr/include/ctype.h defs /usr/include/stdio.h 83lex.o: lex.c /usr/include/stdio.h /usr/include/ctype.h defs 84lex.o: /usr/include/stdio.h tokdefs 85main.o: main.c defs /usr/include/stdio.h 86misc.o: misc.c /usr/include/ctype.h defs /usr/include/stdio.h 87mk.o: mk.c defs /usr/include/stdio.h 88namgen.o: namgen.c defs /usr/include/stdio.h 89pass2.o: pass2.c defs /usr/include/stdio.h /usr/include/ctype.h 90print.o: print.c defs /usr/include/stdio.h 91simple.o: simple.c /usr/include/ctype.h defs /usr/include/stdio.h 92struct.o: struct.c defs /usr/include/stdio.h 93symtab.o: symtab.c defs /usr/include/stdio.h 94tailor.o: tailor.c defs /usr/include/stdio.h 95temp.o: temp.c defs /usr/include/stdio.h 96 97# IF YOU PUT ANYTHING HERE IT WILL GO AWAY 98