Changed to reflect location of EMHOME and conform to standard syntax.
authorbruce <none@none>
Tue, 27 Jan 1987 11:42:08 +0000 (11:42 +0000)
committerbruce <none@none>
Tue, 27 Jan 1987 11:42:08 +0000 (11:42 +0000)
modules/src/em_opt/Makefile

index 943dacc..7874aaa 100644 (file)
@@ -1,64 +1,84 @@
 # $Header$
+EMHOME = ../../..
+INSTALL = $(EMHOME)/modules/install
+COMPARE = $(EMHOME)/modules/compare
+LIBOPT = libopt.a
 
-# Where to find em home directory
+CSRC = nopt.c aux.c mkcalls.c pseudo.c outputdfa.c outcalls.c\
+               findworst.c initlex.c
 
-EMHOME=/usr/em
-MODLIB=$(EMHOME)/modules/lib
+SRCS = Makefile nopt.h parser.h parser.g syntax.l patterns $(CSRC)
 
-# set HOWMUCH to head -20 to limit number of patterns used
-HOWMUCH=cat
+NOFILES=nopt.o dfa.o trans.o incalls.o pseudo.o aux.o mkcalls.o
 
-LEXLIB=-ll
-INCLDIR=-I$(EMHOME)/h -I$(EMHOME)/modules/h -I$(EMHOME)/modules/pkg -I../h
-PREFLAGS=$(INCLDIR) -DPRIVATE=static
-PROFFLAG=-O
-CFLAGS=$(PREFLAGS) $(PROFFLAG)
-LLOPT=
+POFILES=parser.o syntax.o outputdfa.o outcalls.o findworst.o initlex.o Lpars.o 
 
 GENFILES=Lpars.h Lpars.c parserdummy parser.c syntax.c dfadummy\
-       dfa.c dfa.c.save trans.c trans.c.save incalls.c incalls.c.save
+               dfa.c dfa.c.save trans.c trans.c.save incalls.c incalls.c.save
 
-all:   libopt.a
+all:           $(LIBOPT)
 
-NOFILES=nopt.o dfa.o trans.o incalls.o pseudo.o aux.o mkcalls.o
+install:       all
+               $(INSTALL) lib/$(LIBOPT)
 
-libopt.a:      dfadummy $(NOFILES)
-       rm -f libopt.a
-       ar rc libopt.a $(NOFILES)
-       ranlib libopt.a
-
-dfadummy: patterns parser
-       -mv dfa.c dfa.c.save
-       -mv trans.c trans.c.save
-       -mv incalls.c incalls.c.save
-       -/lib/cpp patterns | $(HOWMUCH) >/tmp/patts
-       parser </tmp/patts
-       -rm /tmp/patts
-       -if cmp -s dfa.c dfa.c.save; then mv dfa.c.save dfa.c; else exit 0; fi
-       -if cmp -s trans.c trans.c.save; then mv trans.c.save trans.c; else exit 0; fi
-       -if cmp -s incalls.c incalls.c.save; then mv incalls.c.save incalls.c; else exit 0; fi
-       touch dfadummy
+cmp:           all
+               $(COMPARE) lib/$(LIBOPT)
 
-POFILES=parser.o syntax.o outputdfa.o outcalls.o findworst.o initlex.o Lpars.o 
+pr:
+               @pr $(SRCS)
 
-PARSERLIB=$(EMHOME)/lib/em_data.a $(MODLIB)/libprint.a $(MODLIB)/liballoc.a\
-       $(MODLIB)/libstring.a $(MODLIB)/libsystem.a
+opr:
+               make pr | opr
 
-parser: parserdummy $(POFILES) $(PARSERLIB)
-       $(CC) -o parser $(LDFLAGS) $(POFILES) $(PARSERLIB) $(LEXLIB)
-
-GFILES=parser.g
+clean:
+               rm -f $(NOFILES) $(POFILES) $(GENFILES) parser core makerror
 
-parserdummy:   $(GFILES)
-       LLgen $(LLOPT) $(GFILES)
-       touch parserdummy
+# set HOWMUCH to head -20 to limit number of patterns used
+#HOWMUCH=head -20
+HOWMUCH=cat
 
-clean:
-       rm -f $(NOFILES) $(POFILES) $(GENFILES) parser
+LEXLIB=-ll
+INCLDIR=-I$(EMHOME)/h -I$(EMHOME)/modules/h -I$(EMHOME)/modules/pkg
+PREFLAGS=$(INCLDIR) -DPRIVATE=static
+PROFFLAG=-O
+CFLAGS=$(PREFLAGS) $(PROFFLAG)
+LLOPT=
 
-nopt.o:        nopt.h
-dfa.o: nopt.h
-aux.o: nopt.h
+$(LIBOPT):     dfadummy $(NOFILES)
+               rm -f $(LIBOPT)
+               ar rc $(LIBOPT) $(NOFILES)
+               -sh -c 'ranlib $(LIBOPT)'
+
+dfadummy:      patterns parser
+               -mv dfa.c dfa.c.save
+               -mv trans.c trans.c.save
+               -mv incalls.c incalls.c.save
+               -/lib/cpp patterns | $(HOWMUCH) >/tmp/patts
+               parser </tmp/patts
+               -rm /tmp/patts
+               -if cmp -s dfa.c dfa.c.save; then mv dfa.c.save dfa.c; else exit 0; fi
+               -if cmp -s trans.c trans.c.save; then mv trans.c.save trans.c; else exit 0; fi
+               -if cmp -s incalls.c incalls.c.save; then mv incalls.c.save incalls.c; else exit 0; fi
+               touch dfadummy
+
+# How to build program to parse patterns table and build c files.
+
+PARSERLIB=$(EMHOME)/lib/em_data.a\
+               $(EMHOME)/modules/lib/libprint.a\
+               $(EMHOME)/modules/lib/liballoc.a\
+               $(EMHOME)/modules/lib/libstring.a\
+               $(EMHOME)/modules/lib/libsystem.a
+
+parser:                parserdummy $(POFILES) $(PARSERLIB)
+               $(CC) -o parser $(LDFLAGS) $(POFILES) $(PARSERLIB) $(LEXLIB)
+
+parserdummy:   parser.g
+               LLgen $(LLOPT) parser.g
+               touch parserdummy
+
+nopt.o:                nopt.h
+dfa.o:         nopt.h
+aux.o:         nopt.h
 trans.o:       nopt.h
 pseudo.o:      nopt.h
 incalls.o:     nopt.h