| 1 | INSTALL=ccom |
| 2 | M=../mip |
| 3 | # |
| 4 | # Assembler understands .ascii strings |
| 5 | # Assembler understands .stadbs |
| 6 | # |
| 7 | CFLAGS=-O -DASSTRINGS -DSTABDOT |
| 8 | head: comp ; |
| 9 | comp: rodata.o cgram.o xdefs.o scan.o pftn.o trees.o optim.o code.o local.o reader.o local2.o order.o match.o allo.o comm1.o table.o |
| 10 | cc $(CFLAGS) -i rodata.o cgram.o xdefs.o scan.o pftn.o trees.o optim.o code.o local.o reader.o local2.o order.o match.o allo.o comm1.o table.o |
| 11 | mv a.out comp |
| 12 | trees.o: $M/manifest macdefs $M/mfile1 $M/trees.c |
| 13 | cc $(CFLAGS) -c -I$M -I. $M/trees.c |
| 14 | optim.o: $M/manifest macdefs $M/mfile1 $M/optim.c |
| 15 | cc $(CFLAGS) -c -I$M -I. $M/optim.c |
| 16 | pftn.o: $M/manifest macdefs $M/mfile1 $M/pftn.c |
| 17 | cc $(CFLAGS) -c -I$M -I. $M/pftn.c |
| 18 | code.o: $M/manifest macdefs $M/mfile1 |
| 19 | cc $(CFLAGS) -c -I$M -I. code.c |
| 20 | local.o: $M/manifest macdefs $M/mfile1 |
| 21 | cc $(CFLAGS) -c -I$M -I. local.c |
| 22 | scan.o: $M/manifest macdefs $M/mfile1 $M/scan.c |
| 23 | cc $(CFLAGS) -c -I$M -I. $M/scan.c |
| 24 | xdefs.o: $M/manifest $M/mfile1 macdefs $M/xdefs.c |
| 25 | cc $(CFLAGS) -c -I$M -I. $M/xdefs.c |
| 26 | cgram.o: $M/manifest $M/mfile1 macdefs $M/cgram.c |
| 27 | cc $(CFLAGS) -c -I$M -I. $M/cgram.c |
| 28 | rodata.o: rodata.c |
| 29 | cc $(CFLAGS) -S rodata.c |
| 30 | :rofix rodata.s |
| 31 | as -o rodata.o rodata.s |
| 32 | rm -f rodata.s |
| 33 | rodata.c $M/cgram.c: $M/cgram.y |
| 34 | yacc $M/cgram.y |
| 35 | rm -f rodata.c |
| 36 | :yyfix yyexca yyact yypact yypgo yyr1 yyr2 yychk yydef |
| 37 | mv y.tab.c $M/cgram.c |
| 38 | comm1.o: $M/manifest $M/mfile1 $M/common macdefs $M/comm1.c |
| 39 | cc $(CFLAGS) -c -I. -I$M $M/comm1.c |
| 40 | table.o: $M/manifest $M/mfile2 mac2defs macdefs table.c |
| 41 | cc $(CFLAGS) -S -I$M -I. table.c |
| 42 | :rofix table.s |
| 43 | as -o table.o table.s |
| 44 | rm -f table.s |
| 45 | reader.o: $M/manifest $M/mfile2 mac2defs macdefs $M/reader.c |
| 46 | cc $(CFLAGS) -c -I$M -I. $M/reader.c |
| 47 | local2.o: $M/manifest $M/mfile2 mac2defs macdefs |
| 48 | cc $(CFLAGS) -c -I$M -I. local2.c |
| 49 | order.o: $M/manifest $M/mfile2 mac2defs macdefs |
| 50 | cc $(CFLAGS) -c -I$M -I. order.c |
| 51 | match.o: $M/manifest $M/mfile2 mac2defs macdefs $M/match.c |
| 52 | cc $(CFLAGS) -c -I$M -I. $M/match.c |
| 53 | allo.o: $M/manifest $M/mfile2 mac2defs macdefs $M/allo.c |
| 54 | cc $(CFLAGS) -c -I$M -I. $M/allo.c |
| 55 | shrink: |
| 56 | rm *.o comp |
| 57 | clean: |
| 58 | rm *.o comp |
| 59 | lintall: |
| 60 | lint -hpv -I. -I$M $M/cgram.c $M/xdefs.c $M/scan.c $M/pftn.c $M/trees.c $M/optim.c code.c local.c $M/reader.c local2.c order.c $M/match.c $M/allo.c $M/comm1.c table.c |
| 61 | fort: comp fort.o freader.o fallo.o fmatch.o ftable.o forder.o flocal2.o fcomm2.o |
| 62 | cc -i $(CFLAGS) fort.o freader.o fallo.o fmatch.o ftable.o forder.o flocal2.o fcomm2.o |
| 63 | mv a.out fort |
| 64 | fort.o: fort.h $M/fort.c |
| 65 | cc -c $(CFLAGS) -I$M -I. $M/fort.c |
| 66 | freader.o: reader.o |
| 67 | cc -c $(CFLAGS) -I$M -I. $M/freader.c |
| 68 | fallo.o: allo.o |
| 69 | cc -c $(CFLAGS) -I$M -I. $M/fallo.c |
| 70 | fmatch.o: match.o |
| 71 | cc -c $(CFLAGS) -I$M -I. $M/fmatch.c |
| 72 | ftable.o: table.o |
| 73 | cc -S $(CFLAGS) -I$M -I. $M/ftable.c |
| 74 | :rofix ftable.s |
| 75 | as -o ftable.o ftable.s |
| 76 | rm -f ftable.s |
| 77 | forder.o: order.o |
| 78 | cc -c $(CFLAGS) -I$M -I. $M/forder.c |
| 79 | flocal2.o: local2.o |
| 80 | cc -c $(CFLAGS) -I$M -I. $M/flocal2.c |
| 81 | fcomm2.o: $M/common |
| 82 | cc -c $(CFLAGS) -I$M -I. $M/fcomm2.c |
| 83 | fort.o freader.o fallo.o fmatch.o ftable.o forder.o flocal2.o fcomm2.o: $M/mfile2 $M/manifest macdefs mac2defs |
| 84 | install: |
| 85 | install -s comp $(DESTDIR)/lib/$(INSTALL) |