diff --git a/modules/src/em_opt/Makefile b/modules/src/em_opt/Makefile index 943dacce6..7874aaa14 100644 --- a/modules/src/em_opt/Makefile +++ b/modules/src/em_opt/Makefile @@ -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) + +NOFILES=nopt.o dfa.o trans.o incalls.o pseudo.o aux.o mkcalls.o + +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 + +all: $(LIBOPT) + +install: all + $(INSTALL) lib/$(LIBOPT) + +cmp: all + $(COMPARE) lib/$(LIBOPT) + +pr: + @pr $(SRCS) + +opr: + make pr | opr + +clean: + rm -f $(NOFILES) $(POFILES) $(GENFILES) parser core makerror # set HOWMUCH to head -20 to limit number of patterns used +#HOWMUCH=head -20 HOWMUCH=cat LEXLIB=-ll -INCLDIR=-I$(EMHOME)/h -I$(EMHOME)/modules/h -I$(EMHOME)/modules/pkg -I../h +INCLDIR=-I$(EMHOME)/h -I$(EMHOME)/modules/h -I$(EMHOME)/modules/pkg PREFLAGS=$(INCLDIR) -DPRIVATE=static PROFFLAG=-O CFLAGS=$(PREFLAGS) $(PROFFLAG) LLOPT= -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 +$(LIBOPT): dfadummy $(NOFILES) + rm -f $(LIBOPT) + ar rc $(LIBOPT) $(NOFILES) + -sh -c 'ranlib $(LIBOPT)' -all: 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 - parser