ack/lang/occam/comp/Makefile

54 lines
1.2 KiB
Makefile
Raw Normal View History

1987-02-25 16:56:31 +00:00
EMHOME = ../../..
MODLIB = $(EMHOME)/modules/lib
INCL = -I$(EMHOME)/modules/h
1987-02-24 17:05:53 +00:00
GFILES= occam.g
PRIMARY= occam.o Lpars.o keytab.o lex.yy.o code.o em.o
SECUNDARY= symtab.o expr.o builtin.o
TERTIARY= report.o
LLOPT=
1987-03-16 22:35:21 +00:00
LEXLIB=-ll
1987-02-25 16:56:31 +00:00
LIBRARY= $(MODLIB)/libem_mes.a $(MODLIB)/libemk.a \
$(MODLIB)/libprint.a $(MODLIB)/libstring.a \
1987-03-16 22:35:21 +00:00
$(MODLIB)/libsystem.a $(LEXLIB)
1987-03-12 22:50:03 +00:00
CFLAGS = -Dvoid=int -O $(INCL)
1987-03-18 09:50:46 +00:00
LDFLAGS = -i
1987-03-12 22:50:03 +00:00
# void = int, because some compilers don't understand void
1987-02-25 16:56:31 +00:00
HSRC = code.h em.h expr.h sizes.h symtab.h token.h
CSRC = builtin.c code.c em.c expr.c keytab.c report.c symtab.c
1987-02-24 17:05:53 +00:00
1987-02-25 16:56:31 +00:00
all: dummy
1987-02-24 17:05:53 +00:00
make oc
dummy: $(GFILES)
LLgen $(LLOPT) $(GFILES)
touch dummy
oc: $(PRIMARY) $(SECUNDARY) $(TERTIARY)
1987-03-18 09:50:46 +00:00
$(CC) $(LDFLAGS) -o oc $(PRIMARY) $(SECUNDARY) $(TERTIARY) $(LIBRARY)
1987-02-24 17:05:53 +00:00
lex.yy.c: lex.l
lex lex.l
1987-02-25 16:56:31 +00:00
install: all
rm -f $(EMHOME)/lib/em_occam
cp oc $(EMHOME)/lib/em_occam
cmp: all
-cmp oc $(EMHOME)/lib/em_occam
pr:
@pr Makefile $(HSRC) occam.g lex.l $(CSRC)
opr:
make pr | opr
clean:
1987-03-06 16:40:56 +00:00
rm -f lex.yy.c occam.c *.o oc dummy
1987-02-25 16:56:31 +00:00
1987-02-24 17:05:53 +00:00
$(PRIMARY): Lpars.h
occam.o keytab.o: token.h
occam.o $(SECUNDARY): symtab.h expr.h
$(PRIMARY) $(SECUNDARY): sizes.h
occam.o code.o: code.h
code.o em.o: em.h