Pristine Ack-5.5
[Ack-5.5.git] / mach / proto / as / proto.make
1 # $Id: proto.make,v 1.6 1994/06/24 13:22:20 ceriel Exp $
2
3 #PARAMS         do not remove this line!
4
5 #MACH_DEFINE    do not remove this or the next line!
6 MACH = 
7
8 h       = $(TARGET_HOME)/h
9 LIBOBJ  = $(TARGET_HOME)/modules/lib/libobject.$(LIBSUF)
10 CDIR    = $(SRC_HOME)/mach/proto/as
11 CPP     = $(UTIL_HOME)/lib.bin/cpp
12 DEF     =
13 MDIR    = $(SRC_HOME)/mach/$(MACH)/as
14
15 FFLAG   =
16 INCL    = -I$(CDIR) -I$(MDIR) -I$h -I. $(DEF)
17 CFLAGS  = $(FFLAG) $(INCL) $(COPTIONS)
18 YFLAGS  = -d
19 LDFLAGS = $(FFLAG) $(LDOPTIONS)
20
21 CSRC    = $(CDIR)/comm3.c $(CDIR)/comm4.c $(CDIR)/comm5.c \
22           $(CDIR)/comm6.c $(CDIR)/comm7.c $(CDIR)/comm8.c
23 COBJ    = comm3.$(SUF) comm4.$(SUF) comm5.$(SUF) \
24           comm6.$(SUF) comm7.$(SUF) comm8.$(SUF)
25 MACHSRC = $(MDIR)/mach0.c $(MDIR)/mach1.c $(MDIR)/mach2.c \
26           $(MDIR)/mach3.c $(MDIR)/mach4.c $(MDIR)/mach5.c
27 COMM    = $(CDIR)/comm0.h $(CDIR)/comm1.h $(CDIR)/comm2.y $(CSRC)
28
29 all:    as
30
31 install:all
32         -mkdir $(TARGET_HOME)/lib.bin/$(MACH)
33         cp as $(TARGET_HOME)/lib.bin/$(MACH)/as
34
35 cmp:
36         -cmp as $(TARGET_HOME)/lib.bin/$(MACH)/as
37
38 clean:
39         rm -f *.$(SUF) as as.[cy] y.tab.h
40
41 pr:     $(MACHSRC)
42         @pr -n $(MACHSRC)
43
44 opr:
45         make pr | opr
46 as:     $(COBJ) as.$(SUF)
47         $(CC) $(LDFLAGS) $(COBJ) as.$(SUF) $(LIBOBJ) -o as
48
49 as.y:   $(CDIR)/comm2.y
50         $(CPP) -P -I$(MDIR) -I$h $(DEF) $(CDIR)/comm2.y >as.y
51         -@if test -f $(MDIR)/Expect ; then cat $(MDIR)/Expect ; else echo "expect 1 shift/reduce conflict"; fi
52
53 lint:   $(CSRC) as.c
54         $(LINT) $(LINTFLAGS) $(CSRC) as.c
55
56 as.c:   as.y
57         yacc $(YFLAGS) as.y && mv y.tab.c as.c
58
59 y.tab.h:        as.c
60 $(COBJ):        y.tab.h
61 $(COBJ) as.y:   $(CDIR)/comm0.h $(MDIR)/mach0.c
62 $(COBJ) as.y:   $(CDIR)/comm1.h $(MDIR)/mach1.c
63 as.y:           $(MDIR)/mach2.c
64 as.y:           $(MDIR)/mach4.c
65 as.$(SUF):      as.c
66                 $(CC) -c $(CFLAGS) as.c
67 comm8.$(SUF):   $(CDIR)/comm8.c
68                 $(CC) -c $(CFLAGS) $(CDIR)/comm8.c
69 comm8.$(SUF):   $(MDIR)/mach5.c
70 comm3.$(SUF):   $(CDIR)/comm3.c
71                 $(CC) -c $(CFLAGS) $(CDIR)/comm3.c
72 comm3.$(SUF):   $(MDIR)/mach3.c
73 comm4.$(SUF):   $(CDIR)/comm4.c
74                 $(CC) -c $(CFLAGS) $(CDIR)/comm4.c
75 comm5.$(SUF):   $(CDIR)/comm5.c
76                 $(CC) -c $(CFLAGS) $(CDIR)/comm5.c
77 comm6.$(SUF):   $(CDIR)/comm6.c
78                 $(CC) -c $(CFLAGS) $(CDIR)/comm6.c
79 comm7.$(SUF):   $(CDIR)/comm7.c
80                 $(CC) -c $(CFLAGS) $(CDIR)/comm7.c