xref: /netbsd-src/external/bsd/flex/dist/examples/manual/Makefile.examples (revision 3c3a7b7603b4ed4cb76dd5c5a3e781ddca2349bb)
1*3c3a7b76Schristos#############################################################
2*3c3a7b76Schristos#
3*3c3a7b76Schristos# Makefile     : Makefile for Flex examples.
4*3c3a7b76Schristos# Author       : G.T.Nicol
5*3c3a7b76Schristos# Last Updated : 1993/10/05
6*3c3a7b76Schristos#
7*3c3a7b76Schristos# If you use bison, you may have to supply an alloca
8*3c3a7b76Schristos#
9*3c3a7b76Schristos#############################################################
10*3c3a7b76Schristos
11*3c3a7b76SchristosCC       = gcc -g
12*3c3a7b76SchristosLEX      = flex -i -I
13*3c3a7b76SchristosYACC     = bison -d -y
14*3c3a7b76SchristosALLOCA   =
15*3c3a7b76Schristos
16*3c3a7b76Schristos############################################################
17*3c3a7b76Schristos#
18*3c3a7b76Schristos# DO NOT CHANGE ANYTHING FROM HERE ON !!!!!!!!!
19*3c3a7b76Schristos#
20*3c3a7b76Schristos############################################################
21*3c3a7b76Schristos
22*3c3a7b76Schristosall: expr front myname eof wc replace user_act string1\
23*3c3a7b76Schristos     string2 yymore numbers dates cat
24*3c3a7b76Schristos
25*3c3a7b76Schristosexpr:   expr.y expr.lex
26*3c3a7b76Schristos	$(YACC) expr.y
27*3c3a7b76Schristos	$(LEX)  expr.lex
28*3c3a7b76Schristos	$(CC) -o expr lex.yy.c y.tab.c $(ALLOCA) -ll -lm
29*3c3a7b76Schristos
30*3c3a7b76Schristosfront:  front.y front.lex
31*3c3a7b76Schristos	$(YACC) front.y
32*3c3a7b76Schristos	$(LEX)  front.lex
33*3c3a7b76Schristos	$(CC) -o front lex.yy.c y.tab.c $(ALLOCA) -ll -lm
34*3c3a7b76Schristos
35*3c3a7b76Schristosnumbers: numbers.lex
36*3c3a7b76Schristos	$(LEX)  numbers.lex
37*3c3a7b76Schristos	$(CC)   lex.yy.c -o numbers
38*3c3a7b76Schristos
39*3c3a7b76Schristosdates: dates.lex
40*3c3a7b76Schristos	$(LEX)  dates.lex
41*3c3a7b76Schristos	$(CC)   lex.yy.c -o dates -ll
42*3c3a7b76Schristos
43*3c3a7b76Schristosyymore: yymore.lex
44*3c3a7b76Schristos	$(LEX)  yymore.lex
45*3c3a7b76Schristos	$(CC)   lex.yy.c -o yymore -ll
46*3c3a7b76Schristos
47*3c3a7b76Schristosstring1: string1.lex
48*3c3a7b76Schristos	$(LEX)  string1.lex
49*3c3a7b76Schristos	$(CC)   lex.yy.c -o string1 -ll
50*3c3a7b76Schristos
51*3c3a7b76Schristosstring2: string2.lex
52*3c3a7b76Schristos	$(LEX)  string2.lex
53*3c3a7b76Schristos	$(CC)   lex.yy.c -o string2 -ll
54*3c3a7b76Schristos
55*3c3a7b76Schristosmyname: myname.lex
56*3c3a7b76Schristos	$(LEX)  myname.lex
57*3c3a7b76Schristos	$(CC)   lex.yy.c -o myname -ll
58*3c3a7b76Schristos
59*3c3a7b76Schristosmyname2: myname2.lex
60*3c3a7b76Schristos	$(LEX)  myname2.lex
61*3c3a7b76Schristos	$(CC)   lex.yy.c -o myname2 -ll
62*3c3a7b76Schristos
63*3c3a7b76Schristoseof:    eof_rules.lex
64*3c3a7b76Schristos	$(LEX)  eof_rules.lex
65*3c3a7b76Schristos	$(CC)   lex.yy.c -o eof -ll
66*3c3a7b76Schristos
67*3c3a7b76Schristoswc:     wc.lex
68*3c3a7b76Schristos	$(LEX)  wc.lex
69*3c3a7b76Schristos	$(CC)   lex.yy.c -o wc -ll
70*3c3a7b76Schristos
71*3c3a7b76Schristoscat:    cat.lex
72*3c3a7b76Schristos	$(LEX)  cat.lex
73*3c3a7b76Schristos	$(CC)   lex.yy.c -o cat -ll
74*3c3a7b76Schristos
75*3c3a7b76Schristosreplace: replace.lex
76*3c3a7b76Schristos	$(LEX)  replace.lex
77*3c3a7b76Schristos	$(CC)   lex.yy.c -o replace -ll
78*3c3a7b76Schristos
79*3c3a7b76Schristosuser_act: expr.y expr.lex
80*3c3a7b76Schristos	$(LEX)  user_act.lex
81*3c3a7b76Schristos	$(CC) -o user_act lex.yy.c -ll
82*3c3a7b76Schristos
83*3c3a7b76Schristosclean:
84*3c3a7b76Schristos	rm -f *.BAK *.o core *~* *.a
85*3c3a7b76Schristos	rm -f *.tab.h *.tab.c
86*3c3a7b76Schristos	rm -f myname expr lex.yy.c *.out eof wc yymore
87*3c3a7b76Schristos	rm -f replace front user_act string1 string2
88*3c3a7b76Schristos	rm -f dates numbers cat
89