First version of dfa module in alex. This version uses yacc to parse
[idzebra-moved-to-github.git] / dfa / Makefile
1 # Copyright (C) 1994, Index Data I/S 
2 # All rights reserved.
3 # Sebastian Hammer, Adam Dickmeiss
4 # $Id: Makefile,v 1.1 1994-09-26 10:16:52 adam Exp $
5
6 SHELL=/bin/sh
7 INCLUDE=-I../include
8 TPROG1=agrep
9 TPROG2=lexer
10 CFLAGS=-g -Wall -pedantic
11 DEFS=$(INCLUDE) -DYACC -DYYDEBUG=1 -DMEMDEBUG=1
12 LIB=../lib/dfa.a 
13 PO = regexp.o imalloc.o states.o set.o bset.o
14 CPP=cc -E
15
16 all: $(LIB)
17
18 $(TPROG1): $(TPROG1).o $(LIB) 
19         $(CC) $(CFLAGS) -o $(TPROG1) $(TPROG1).o $(LIB) ../lib/util.a
20
21 $(TPROG2): $(TPROG2).o readfile.o $(LIB) 
22         $(CC) $(CFLAGS) -o $(TPROG2) $(TPROG2).o readfile.o \
23                 $(LIB) ../lib/util.a
24
25 $(LIB): $(PO)
26         rm -f $(LIB)
27         ar qc $(LIB) $(PO)
28         ranlib $(LIB)
29
30 .c.o:
31         $(CC) -c $(DEFS) $(CFLAGS) $<
32
33 .y.o:
34         $(YACC) $(YFLAGS) $<
35         $(CC) -c $(DEFS) $(CFLAGS) y.tab.c
36         mv y.tab.o $*.o
37
38 clean:
39         rm -f *.[oa] $(TPROG1) $(TPROG2) core mon.out gmon.out errlist y.tab.c
40
41 depend: depend2
42
43 depend1:
44         mv Makefile Makefile.tmp
45         $(YACC) $(YFLAGS) regexp.y
46         sed '/^#Depend/q' <Makefile.tmp >Makefile
47         $(CPP) -M $(DEFS) *.c |sed 's/y\.tab\.o/regexp.o/g' >>Makefile
48         -rm Makefile.tmp
49
50 depend2:
51         $(YACC) $(YFLAGS) regexp.y
52         $(CPP) -M $(DEFS) *.c |sed 's/y\.tab\.o/regexp.o/g' >.depend
53
54 ifeq (.depend,$(wildcard .depend))
55 include .depend
56 endif
57
58 #Depend --- DOT NOT DELETE THIS LINE