date and time created 87/12/12 17:34:23 by bostic
[unix-history] / usr / src / old / efl / Makefile
#
# Copyright (c) 1987 Regents of the University of California.
# All rights reserved. The Berkeley software License Agreement
# specifies the terms and conditions for redistribution.
#
# @(#)Makefile 5.1 (Berkeley) %G%
#
CFLAGS= -O -w
LIBC= /lib/libc.a
SRCS= addr.c alloc.c blklab.c dcl.c dclgen.c error.c exec.c field.c free.c \
gram.c icfile.c init.c io.c lex.c main.c misc.c mk.c namgen.c pass2.c \
print.c simple.c struct.c symtab.c tailor.c temp.c
OBJS= addr.o alloc.o blklab.o dcl.o dclgen.o error.o exec.o field.o free.o \
gram.o icfile.o init.o io.o lex.o main.o misc.o mk.o namgen.o pass2.o \
print.o simple.o struct.o symtab.o tailor.o temp.o
all: efl
efl: ${OBJS} ${LIBC}
${CC} -o $@ ${CFLAGS} ${OBJS}
# gram.c can no longer be made on a pdp11 because of yacc limits
gram.c: gram.head gram.dcl gram.expr gram.exec tokdefs
(sed < tokdefs "s/#define/%token/" ; \
cat gram.head gram.dcl gram.expr gram.exec) > gram.in
${YACC} ${YFLAGS} gram.in
(echo "#define YYDEBUG"; cat y.tab.c) > gram.c
rm -f gram.in y.tab.c
lex.c: fixuplex
lex lex.l
sh fixuplex
mv lex.yy.c lex.c
tokdefs: tokens
grep -n . < tokens | sed "s/\([^:]*\):\(.*\)/#define \2 \1/" > tokdefs
clean: FRC
rm -f ${OBJS} core efl gram.c lex.c tokdefs
depend: ${SRCS} FRC
mkdep ${CFLAGS} ${SRCS}
install: FRC
install -s -o bin -g bin -m 755 efl ${DESTDIR}/usr/bin/efl
lint: ${SRCS} FRC
lint ${CFLAGS} ${SRCS}
tags: ${SRCS} FRC
ctags ${SRCS}
test:
./efl "system=gcos" efltest/Hard.e >z1 2>z2
cmp z1 efltest/Hard.out
./efl "system=gcos" efltest/Band.e >z1 2>z2
cmp z1 efltest/Band.out
./efl "system=gcos" efltest/Buram.e >z1 2>z2
cmp z1 efltest/Buram.out
./efl "system=gcos" efltest/Dgl.e >z1 2>z2
cmp z1 efltest/Dgl.out
rm -f z1 z2
@echo TEST OK
FRC:
# DO NOT DELETE THIS LINE -- mkdep uses it.
# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
addr.o: addr.c defs /usr/include/stdio.h
alloc.o: alloc.c defs /usr/include/stdio.h
blklab.o: blklab.c defs /usr/include/stdio.h
dcl.o: dcl.c defs /usr/include/stdio.h
dclgen.o: dclgen.c defs /usr/include/stdio.h
error.o: error.c defs /usr/include/stdio.h
exec.o: exec.c defs /usr/include/stdio.h
field.o: field.c defs /usr/include/stdio.h
free.o: free.c defs /usr/include/stdio.h
gram.o: gram.c defs /usr/include/stdio.h
icfile.o: icfile.c defs /usr/include/stdio.h
init.o: init.c defs /usr/include/stdio.h tokdefs
io.o: io.c /usr/include/ctype.h defs /usr/include/stdio.h
lex.o: lex.c /usr/include/stdio.h /usr/include/ctype.h defs
lex.o: /usr/include/stdio.h tokdefs
main.o: main.c defs /usr/include/stdio.h
misc.o: misc.c /usr/include/ctype.h defs /usr/include/stdio.h
mk.o: mk.c defs /usr/include/stdio.h
namgen.o: namgen.c defs /usr/include/stdio.h
pass2.o: pass2.c defs /usr/include/stdio.h /usr/include/ctype.h
print.o: print.c defs /usr/include/stdio.h
simple.o: simple.c /usr/include/ctype.h defs /usr/include/stdio.h
struct.o: struct.c defs /usr/include/stdio.h
symtab.o: symtab.c defs /usr/include/stdio.h
tailor.o: tailor.c defs /usr/include/stdio.h
temp.o: temp.c defs /usr/include/stdio.h
# IF YOU PUT ANYTHING HERE IT WILL GO AWAY