#define SpecialLexTarget_1(program,base) @!\ >JLFLAGS @!\ >LEX @!\ >RM @!\ >MV @!\ ++OBJECTS base.o @!\ |once _LexRule_ @!\ |rule:.l.c: @!\ |rule: $(LEX) $(JLFLAGS) $< @!\ |rule: $(MV) lex.yy.c $@ @!\ |rule: @!\ -once @!\ AddSuffix(.l) @!\ program: base.c @!\ #define SpecialLexDependTarget_1(program,base,parser) @!\ base.o: parser.h @!\ @!\ SpecialLexTarget_1(program,base) #define SpecialParserTarget_1(program,lexic,parser) @!\ SpecialLexDependTarget_1(program,lexic,parser) @!\ NormalYaccTarget(program,parser) #define IdentifiedLexTarget_1(program,base,prefix) @!\ >JLFLAGS @!\ >LEX @!\ >RM @!\ >SED @!\ ++OBJECTS base.o @!\ program: base.c @!\ @!\ base.c: base.l @@\ $(LEX) $(JLFLAGS) base.l @@\ $(SED) -e 's/yy\(.\)/prefix\1/g' < lex.yy.c > base.c @@\ $(RM) lex.yy.c @!\ @!\ #define IdentifiedLexDependTarget_1(program,base,parser,prefix) @!\ base.o: parser.h @!\ @!\ IdentifiedLexTarget_1(program,base,prefix) #define IdentifiedParserTarget_1(program,lexic,parser,prefix) @!\ IdentifiedLexDependTarget_1(program,lexic,parser,prefix) @!\ IdentifiedYaccTarget(program,parser,prefix)