proto.make 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. # $Header$
  2. #PARAMS do not remove this line!
  3. SRC_DIR = $(SRC_HOME)/util/ack
  4. HFILES=\
  5. $(SRC_DIR)/ack.h \
  6. $(SRC_DIR)/list.h \
  7. $(SRC_DIR)/trans.h \
  8. $(SRC_DIR)/data.h \
  9. $(SRC_DIR)/dmach.h \
  10. $(SRC_DIR)/grows.h
  11. DSRC=\
  12. $(SRC_DIR)/list.c \
  13. $(SRC_DIR)/data.c \
  14. $(SRC_DIR)/main.c \
  15. $(SRC_DIR)/scan.c \
  16. $(SRC_DIR)/svars.c \
  17. $(SRC_DIR)/trans.c \
  18. $(SRC_DIR)/util.c \
  19. $(SRC_DIR)/rmach.c \
  20. $(SRC_DIR)/run.c \
  21. $(SRC_DIR)/grows.c \
  22. $(SRC_DIR)/files.c
  23. ISRC=\
  24. dmach.c \
  25. intable.c
  26. CFILES = $(DSRC) $(ISRC)
  27. OBJ=\
  28. list.$(SUF) \
  29. data.$(SUF) \
  30. main.$(SUF) \
  31. scan.$(SUF) \
  32. svars.$(SUF) \
  33. trans.$(SUF) \
  34. util.$(SUF) \
  35. rmach.$(SUF) \
  36. run.$(SUF) \
  37. dmach.$(SUF) \
  38. intable.$(SUF) \
  39. grows.$(SUF) \
  40. files.$(SUF)
  41. ACKDIR=$(TARGET_HOME)/lib
  42. FE=fe
  43. INTABLES=sun3
  44. LNTABLES=acc apc abc ocm m2 f2c vax4 i86 i386 m68k2 m68k4 pmds pmds4 mantra \
  45. m68020 z8000 pdp em22 em24 em44 6500 6800 6805 6809 i80 ns s2650 z80 \
  46. sun2 xenix3 minix minixST sparc arm
  47. INCLUDES=-I$(TARGET_HOME)/h -I$(TARGET_HOME)/config -I$(SRC_DIR)
  48. CFLAGS= $(INCLUDES) $(COPTIONS)
  49. UCFLAGS= $(INCLUDES) $(UCOPTIONS)
  50. LINTFLAGS= $(INCLUDES) $(LINTOPTIONS)
  51. LDFLAGS= $(LDOPTIONS)
  52. ULDFLAGS= $(ULDOPTIONS)
  53. BINDIR=$(TARGET_HOME)/bin
  54. HDIR=$(TARGET_HOME)/h
  55. MODDIR=$(TARGET_HOME)/modules/lib
  56. all: ack ack.1
  57. install: ack ack.1
  58. cp ack $(BINDIR)/ack
  59. -cd $(BINDIR) ; \
  60. for i in $(INTABLES) $(LNTABLES) ; do rm -f $$i ; ln ack $$i ; done
  61. if [ $(DO_MACHINE_INDEP) = y ] ; \
  62. then mk_manpage ack.1 $(TARGET_HOME) ; \
  63. fi
  64. cmp: ack
  65. -cmp ack $(BINDIR)/ack
  66. ack.1: $(SRC_DIR)/ack.1.X
  67. -sh -c 'tbl < $(SRC_DIR)/ack.1.X > ack.1'
  68. -sh -c 'if test -s ack.1 ; then : ; else cp $(SRC_DIR)/ack.1.X ack.1 ; fi'
  69. clean:
  70. -rm -f *.old *.$(SUF) mktables *.$(USUF) ack ack.1 $(ISRC)
  71. ack: $(OBJ)
  72. $(CC) $(LDFLAGS) -o ack $(OBJ) $(MODDIR)/libstring.$(LIBSUF)
  73. depend: $(ISRC)
  74. sed '/^#DEPENDENCIES/,$$d' Makefile >Makefile.new
  75. echo '#DEPENDENCIES' >>Makefile.new
  76. for i in $(CFILES) ; do \
  77. echo "`basename $$i .c`.$$(SUF): $$i" >> Makefile.new ; \
  78. echo ' $$(CC) -c $$(CFLAGS)' $$i >> Makefile.new ; \
  79. $(UTIL_HOME)/lib.bin/cpp -d $(INCLUDES) $$i | sed "s/^/`basename $$i .c`.$$(SUF): /" >> Makefile.new ; \
  80. done
  81. mv Makefile Makefile.old
  82. mv Makefile.new Makefile
  83. dmach.c intable.c: mktables $(SRC_DIR)/dmach.h
  84. : mktables $(ACKDIR) # $(FE) $(INTABLES)
  85. mktables $(ACKDIR)
  86. mktables: mktables.$(USUF)
  87. $(UCC) -o mktables $(ULDFLAGS) mktables.$(USUF)
  88. mktables.$(USUF): $(SRC_DIR)/mktables.c
  89. $(UCC) -c $(UCFLAGS) $(SRC_DIR)/mktables.c
  90. pr:
  91. @pr $(SRC_DIR)/proto.make $(HFILES) $(DSRC)
  92. opr:
  93. make pr | opr
  94. lint: $(ISRC)
  95. $(LINT) $(LINTFLAGS) $(CFILES) $(UTIL_HOME)/modules/lib/$(LINTPREF)string.$(LINTSUF)
  96. # do not remove the next line
  97. #DEPENDENCIES
  98. list.$(SUF): $(SRC_DIR)/list.c
  99. $(CC) -c $(CFLAGS) $(SRC_DIR)/list.c
  100. list.$(SUF): $(SRC_DIR)/list.h
  101. list.$(SUF): $(SRC_DIR)/ack.h
  102. data.$(SUF): $(SRC_DIR)/data.c
  103. $(CC) -c $(CFLAGS) $(SRC_DIR)/data.c
  104. data.$(SUF): $(SRC_DIR)/data.h
  105. data.$(SUF): $(SRC_DIR)/trans.h
  106. data.$(SUF): $(SRC_DIR)/list.h
  107. data.$(SUF): $(SRC_DIR)/ack.h
  108. main.$(SUF): $(SRC_DIR)/main.c
  109. $(CC) -c $(CFLAGS) $(SRC_DIR)/main.c
  110. main.$(SUF): $(SRC_DIR)/data.h
  111. main.$(SUF): $(TARGET_HOME)/config/local.h
  112. main.$(SUF): $(SRC_DIR)/trans.h
  113. main.$(SUF): $(SRC_DIR)/list.h
  114. main.$(SUF): $(SRC_DIR)/ack.h
  115. scan.$(SUF): $(SRC_DIR)/scan.c
  116. $(CC) -c $(CFLAGS) $(SRC_DIR)/scan.c
  117. scan.$(SUF): $(SRC_DIR)/data.h
  118. scan.$(SUF): $(SRC_DIR)/trans.h
  119. scan.$(SUF): $(SRC_DIR)/list.h
  120. scan.$(SUF): $(SRC_DIR)/ack.h
  121. svars.$(SUF): $(SRC_DIR)/svars.c
  122. $(CC) -c $(CFLAGS) $(SRC_DIR)/svars.c
  123. svars.$(SUF): $(SRC_DIR)/ack.h
  124. trans.$(SUF): $(SRC_DIR)/trans.c
  125. $(CC) -c $(CFLAGS) $(SRC_DIR)/trans.c
  126. trans.$(SUF): $(SRC_DIR)/data.h
  127. trans.$(SUF): $(SRC_DIR)/grows.h
  128. trans.$(SUF): $(SRC_DIR)/trans.h
  129. trans.$(SUF): $(SRC_DIR)/list.h
  130. trans.$(SUF): $(SRC_DIR)/ack.h
  131. util.$(SUF): $(SRC_DIR)/util.c
  132. $(CC) -c $(CFLAGS) $(SRC_DIR)/util.c
  133. util.$(SUF): $(SRC_DIR)/ack.h
  134. rmach.$(SUF): $(SRC_DIR)/rmach.c
  135. $(CC) -c $(CFLAGS) $(SRC_DIR)/rmach.c
  136. rmach.$(SUF): $(SRC_DIR)/data.h
  137. rmach.$(SUF): $(SRC_DIR)/dmach.h
  138. rmach.$(SUF): $(SRC_DIR)/grows.h
  139. rmach.$(SUF): $(SRC_DIR)/trans.h
  140. rmach.$(SUF): $(SRC_DIR)/list.h
  141. rmach.$(SUF): $(TARGET_HOME)/config/em_path.h
  142. rmach.$(SUF): $(SRC_DIR)/ack.h
  143. run.$(SUF): $(SRC_DIR)/run.c
  144. $(CC) -c $(CFLAGS) $(SRC_DIR)/run.c
  145. run.$(SUF): $(SRC_DIR)/data.h
  146. run.$(SUF): $(SRC_DIR)/grows.h
  147. run.$(SUF): $(SRC_DIR)/trans.h
  148. run.$(SUF): $(SRC_DIR)/list.h
  149. run.$(SUF): $(SRC_DIR)/ack.h
  150. grows.$(SUF): $(SRC_DIR)/grows.c
  151. $(CC) -c $(CFLAGS) $(SRC_DIR)/grows.c
  152. grows.$(SUF): $(SRC_DIR)/grows.h
  153. grows.$(SUF): $(SRC_DIR)/ack.h
  154. files.$(SUF): $(SRC_DIR)/files.c
  155. $(CC) -c $(CFLAGS) $(SRC_DIR)/files.c
  156. files.$(SUF): $(TARGET_HOME)/config/em_path.h
  157. files.$(SUF): $(SRC_DIR)/data.h
  158. files.$(SUF): $(SRC_DIR)/grows.h
  159. files.$(SUF): $(SRC_DIR)/trans.h
  160. files.$(SUF): $(SRC_DIR)/list.h
  161. files.$(SUF): $(SRC_DIR)/ack.h
  162. dmach.$(SUF): dmach.c
  163. $(CC) -c $(CFLAGS) dmach.c
  164. dmach.$(SUF): $(SRC_DIR)/dmach.h
  165. intable.$(SUF): intable.c
  166. $(CC) -c $(CFLAGS) intable.c