123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- EMHOME = ../../..
- MODLIB = $(EMHOME)/modules/lib
- INCL = -I$(EMHOME)/modules/h -I$(EMHOME)/h
- 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=
- LEXLIB=-ll
- LIBRARY= $(MODLIB)/libem_mes.a $(MODLIB)/libemk.a \
- $(MODLIB)/liballoc.a $(MODLIB)/libprint.a \
- $(MODLIB)/libstring.a \
- $(MODLIB)/libsystem.a $(LEXLIB)
- CFLAGS = -Dvoid=int -O $(INCL)
- LDFLAGS =
- # void = int, because some compilers don't understand void
- 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
- all: dummy
- make oc
- dummy: $(GFILES)
- LLgen $(LLOPT) $(GFILES)
- touch dummy
- oc: $(PRIMARY) $(SECUNDARY) $(TERTIARY)
- $(CC) $(LDFLAGS) -o oc $(PRIMARY) $(SECUNDARY) $(TERTIARY) $(LIBRARY)
- lex.yy.c: lex.l
- lex lex.l
- 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:
- rm -f lex.yy.c occam.c *.o oc dummy Lpars.c Lpars.h
- $(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
|