bison_pp.mak 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370
  1. ORIGIN = PWB
  2. ORIGIN_VER = 2.0
  3. PROJ = BISON_PP
  4. PROJFILE = BISON_PP.MAK
  5. DEBUG = 1
  6. CC = cl
  7. CFLAGS_G = /AL /W4 /Za /BATCH /Gt8 /DSTDC_HEADERS /DHAVE_STRERROR
  8. CFLAGS_D = /f /Od /Zi /Zr
  9. CFLAGS_R = /f- /Ot /Ol /Og /Oe /Oi /Gs
  10. CXX = cl
  11. CXXFLAGS_G = /W2 /BATCH
  12. CXXFLAGS_D = /f /Zi /Od
  13. CXXFLAGS_R = /f- /Ot /Oi /Ol /Oe /Og /Gs
  14. MAPFILE_D = NUL
  15. MAPFILE_R = NUL
  16. LFLAGS_G = /NOI /STACK:32000 /BATCH /ONERROR:NOEXE
  17. LFLAGS_D = /CO /FAR /PACKC
  18. LFLAGS_R = /EXE /FAR /PACKC
  19. LINKER = link
  20. ILINK = ilink
  21. LRF = echo > NUL
  22. ILFLAGS = /a /e
  23. RUNFLAGS = -dtv -o d:\tmp\test.cpp -h d:\tmp\test.h d:\tmp\test.y
  24. FILES = ALLOCATE.C CLOSURE.C DERIVES.C FILES.C GETARGS.C GETOPT.C GETOPT1.C\
  25. GRAM.C LALR.C LEX.C MAIN.C NULLABLE.C OUTPUT.C PRINT.C READER.C\
  26. REDUCE.C SYMTAB.C VERSION.C WARSHALL.C LR0.C CONFLICT.C
  27. OBJS = ALLOCATE.obj CLOSURE.obj DERIVES.obj FILES.obj GETARGS.obj GETOPT.obj\
  28. GETOPT1.obj GRAM.obj LALR.obj LEX.obj MAIN.obj NULLABLE.obj OUTPUT.obj\
  29. PRINT.obj READER.obj REDUCE.obj SYMTAB.obj VERSION.obj WARSHALL.obj\
  30. LR0.obj CONFLICT.obj
  31. all: $(PROJ).exe
  32. .SUFFIXES:
  33. .SUFFIXES: .obj .c
  34. .SUFFIXES: .obj .c
  35. ALLOCATE.obj : ALLOCATE.C
  36. !IF $(DEBUG)
  37. @$(CC) @<<$(PROJ).rsp
  38. /c $(CFLAGS_G)
  39. $(CFLAGS_D) /FoALLOCATE.obj ALLOCATE.C
  40. <<
  41. !ELSE
  42. @$(CC) @<<$(PROJ).rsp
  43. /c $(CFLAGS_G)
  44. $(CFLAGS_R) /FoALLOCATE.obj ALLOCATE.C
  45. <<
  46. !ENDIF
  47. CLOSURE.obj : CLOSURE.C system.h machine.h new.h gram.h
  48. !IF $(DEBUG)
  49. @$(CC) @<<$(PROJ).rsp
  50. /c $(CFLAGS_G)
  51. $(CFLAGS_D) /FoCLOSURE.obj CLOSURE.C
  52. <<
  53. !ELSE
  54. @$(CC) @<<$(PROJ).rsp
  55. /c $(CFLAGS_G)
  56. $(CFLAGS_R) /FoCLOSURE.obj CLOSURE.C
  57. <<
  58. !ENDIF
  59. DERIVES.obj : DERIVES.C system.h new.h types.h gram.h
  60. !IF $(DEBUG)
  61. @$(CC) @<<$(PROJ).rsp
  62. /c $(CFLAGS_G)
  63. $(CFLAGS_D) /FoDERIVES.obj DERIVES.C
  64. <<
  65. !ELSE
  66. @$(CC) @<<$(PROJ).rsp
  67. /c $(CFLAGS_G)
  68. $(CFLAGS_R) /FoDERIVES.obj DERIVES.C
  69. <<
  70. !ENDIF
  71. FILES.obj : FILES.C system.h files.h new.h gram.h
  72. !IF $(DEBUG)
  73. @$(CC) @<<$(PROJ).rsp
  74. /c $(CFLAGS_G)
  75. $(CFLAGS_D) /FoFILES.obj FILES.C
  76. <<
  77. !ELSE
  78. @$(CC) @<<$(PROJ).rsp
  79. /c $(CFLAGS_G)
  80. $(CFLAGS_R) /FoFILES.obj FILES.C
  81. <<
  82. !ENDIF
  83. GETARGS.obj : GETARGS.C getopt.h system.h files.h
  84. !IF $(DEBUG)
  85. @$(CC) @<<$(PROJ).rsp
  86. /c $(CFLAGS_G)
  87. $(CFLAGS_D) /FoGETARGS.obj GETARGS.C
  88. <<
  89. !ELSE
  90. @$(CC) @<<$(PROJ).rsp
  91. /c $(CFLAGS_G)
  92. $(CFLAGS_R) /FoGETARGS.obj GETARGS.C
  93. <<
  94. !ENDIF
  95. GETOPT.obj : GETOPT.C getopt.h
  96. !IF $(DEBUG)
  97. @$(CC) @<<$(PROJ).rsp
  98. /c $(CFLAGS_G)
  99. $(CFLAGS_D) /FoGETOPT.obj GETOPT.C
  100. <<
  101. !ELSE
  102. @$(CC) @<<$(PROJ).rsp
  103. /c $(CFLAGS_G)
  104. $(CFLAGS_R) /FoGETOPT.obj GETOPT.C
  105. <<
  106. !ENDIF
  107. GETOPT1.obj : GETOPT1.C getopt.h
  108. !IF $(DEBUG)
  109. @$(CC) @<<$(PROJ).rsp
  110. /c $(CFLAGS_G)
  111. $(CFLAGS_D) /FoGETOPT1.obj GETOPT1.C
  112. <<
  113. !ELSE
  114. @$(CC) @<<$(PROJ).rsp
  115. /c $(CFLAGS_G)
  116. $(CFLAGS_R) /FoGETOPT1.obj GETOPT1.C
  117. <<
  118. !ENDIF
  119. GRAM.obj : GRAM.C
  120. !IF $(DEBUG)
  121. @$(CC) @<<$(PROJ).rsp
  122. /c $(CFLAGS_G)
  123. $(CFLAGS_D) /FoGRAM.obj GRAM.C
  124. <<
  125. !ELSE
  126. @$(CC) @<<$(PROJ).rsp
  127. /c $(CFLAGS_G)
  128. $(CFLAGS_R) /FoGRAM.obj GRAM.C
  129. <<
  130. !ENDIF
  131. LALR.obj : LALR.C system.h machine.h types.h state.h new.h gram.h
  132. !IF $(DEBUG)
  133. @$(CC) @<<$(PROJ).rsp
  134. /c $(CFLAGS_G)
  135. $(CFLAGS_D) /FoLALR.obj LALR.C
  136. <<
  137. !ELSE
  138. @$(CC) @<<$(PROJ).rsp
  139. /c $(CFLAGS_G)
  140. $(CFLAGS_R) /FoLALR.obj LALR.C
  141. <<
  142. !ENDIF
  143. LEX.obj : LEX.C system.h files.h symtab.h lex.h new.h
  144. !IF $(DEBUG)
  145. @$(CC) @<<$(PROJ).rsp
  146. /c $(CFLAGS_G)
  147. $(CFLAGS_D) /FoLEX.obj LEX.C
  148. <<
  149. !ELSE
  150. @$(CC) @<<$(PROJ).rsp
  151. /c $(CFLAGS_G)
  152. $(CFLAGS_R) /FoLEX.obj LEX.C
  153. <<
  154. !ENDIF
  155. MAIN.obj : MAIN.C system.h machine.h
  156. !IF $(DEBUG)
  157. @$(CC) @<<$(PROJ).rsp
  158. /c $(CFLAGS_G)
  159. $(CFLAGS_D) /FoMAIN.obj MAIN.C
  160. <<
  161. !ELSE
  162. @$(CC) @<<$(PROJ).rsp
  163. /c $(CFLAGS_G)
  164. $(CFLAGS_R) /FoMAIN.obj MAIN.C
  165. <<
  166. !ENDIF
  167. NULLABLE.obj : NULLABLE.C system.h types.h gram.h new.h
  168. !IF $(DEBUG)
  169. @$(CC) @<<$(PROJ).rsp
  170. /c $(CFLAGS_G)
  171. $(CFLAGS_D) /FoNULLABLE.obj NULLABLE.C
  172. <<
  173. !ELSE
  174. @$(CC) @<<$(PROJ).rsp
  175. /c $(CFLAGS_G)
  176. $(CFLAGS_R) /FoNULLABLE.obj NULLABLE.C
  177. <<
  178. !ENDIF
  179. OUTPUT.obj : OUTPUT.C system.h machine.h new.h files.h gram.h state.h symtab.h
  180. !IF $(DEBUG)
  181. @$(CC) @<<$(PROJ).rsp
  182. /c $(CFLAGS_G)
  183. $(CFLAGS_D) /FoOUTPUT.obj OUTPUT.C
  184. <<
  185. !ELSE
  186. @$(CC) @<<$(PROJ).rsp
  187. /c $(CFLAGS_G)
  188. $(CFLAGS_R) /FoOUTPUT.obj OUTPUT.C
  189. <<
  190. !ENDIF
  191. PRINT.obj : PRINT.C system.h machine.h new.h files.h gram.h state.h
  192. !IF $(DEBUG)
  193. @$(CC) @<<$(PROJ).rsp
  194. /c $(CFLAGS_G)
  195. $(CFLAGS_D) /FoPRINT.obj PRINT.C
  196. <<
  197. !ELSE
  198. @$(CC) @<<$(PROJ).rsp
  199. /c $(CFLAGS_G)
  200. $(CFLAGS_R) /FoPRINT.obj PRINT.C
  201. <<
  202. !ENDIF
  203. READER.obj : READER.C system.h files.h new.h symtab.h lex.h gram.h machine.h
  204. !IF $(DEBUG)
  205. @$(CC) @<<$(PROJ).rsp
  206. /c $(CFLAGS_G)
  207. $(CFLAGS_D) /FoREADER.obj READER.C
  208. <<
  209. !ELSE
  210. @$(CC) @<<$(PROJ).rsp
  211. /c $(CFLAGS_G)
  212. $(CFLAGS_R) /FoREADER.obj READER.C
  213. <<
  214. !ENDIF
  215. REDUCE.obj : REDUCE.C system.h files.h gram.h machine.h new.h
  216. !IF $(DEBUG)
  217. @$(CC) @<<$(PROJ).rsp
  218. /c $(CFLAGS_G)
  219. $(CFLAGS_D) /FoREDUCE.obj REDUCE.C
  220. <<
  221. !ELSE
  222. @$(CC) @<<$(PROJ).rsp
  223. /c $(CFLAGS_G)
  224. $(CFLAGS_R) /FoREDUCE.obj REDUCE.C
  225. <<
  226. !ENDIF
  227. SYMTAB.obj : SYMTAB.C system.h new.h symtab.h gram.h
  228. !IF $(DEBUG)
  229. @$(CC) @<<$(PROJ).rsp
  230. /c $(CFLAGS_G)
  231. $(CFLAGS_D) /FoSYMTAB.obj SYMTAB.C
  232. <<
  233. !ELSE
  234. @$(CC) @<<$(PROJ).rsp
  235. /c $(CFLAGS_G)
  236. $(CFLAGS_R) /FoSYMTAB.obj SYMTAB.C
  237. <<
  238. !ENDIF
  239. VERSION.obj : VERSION.C
  240. !IF $(DEBUG)
  241. @$(CC) @<<$(PROJ).rsp
  242. /c $(CFLAGS_G)
  243. $(CFLAGS_D) /FoVERSION.obj VERSION.C
  244. <<
  245. !ELSE
  246. @$(CC) @<<$(PROJ).rsp
  247. /c $(CFLAGS_G)
  248. $(CFLAGS_R) /FoVERSION.obj VERSION.C
  249. <<
  250. !ENDIF
  251. WARSHALL.obj : WARSHALL.C system.h machine.h
  252. !IF $(DEBUG)
  253. @$(CC) @<<$(PROJ).rsp
  254. /c $(CFLAGS_G)
  255. $(CFLAGS_D) /FoWARSHALL.obj WARSHALL.C
  256. <<
  257. !ELSE
  258. @$(CC) @<<$(PROJ).rsp
  259. /c $(CFLAGS_G)
  260. $(CFLAGS_R) /FoWARSHALL.obj WARSHALL.C
  261. <<
  262. !ENDIF
  263. LR0.obj : LR0.C system.h machine.h new.h gram.h state.h
  264. !IF $(DEBUG)
  265. @$(CC) @<<$(PROJ).rsp
  266. /c $(CFLAGS_G)
  267. $(CFLAGS_D) /FoLR0.obj LR0.C
  268. <<
  269. !ELSE
  270. @$(CC) @<<$(PROJ).rsp
  271. /c $(CFLAGS_G)
  272. $(CFLAGS_R) /FoLR0.obj LR0.C
  273. <<
  274. !ENDIF
  275. CONFLICT.obj : CONFLICT.C system.h machine.h new.h files.h gram.h state.h
  276. !IF $(DEBUG)
  277. @$(CC) @<<$(PROJ).rsp
  278. /c $(CFLAGS_G)
  279. $(CFLAGS_D) /FoCONFLICT.obj CONFLICT.C
  280. <<
  281. !ELSE
  282. @$(CC) @<<$(PROJ).rsp
  283. /c $(CFLAGS_G)
  284. $(CFLAGS_R) /FoCONFLICT.obj CONFLICT.C
  285. <<
  286. !ENDIF
  287. $(PROJ).exe : $(OBJS)
  288. !IF $(DEBUG)
  289. $(LRF) @<<$(PROJ).lrf
  290. $(RT_OBJS: = +^
  291. ) $(OBJS: = +^
  292. )
  293. $@
  294. $(MAPFILE_D)
  295. $(LIBS: = +^
  296. ) +
  297. $(LLIBS_G: = +^
  298. ) +
  299. $(LLIBS_D: = +^
  300. )
  301. $(DEF_FILE) $(LFLAGS_G) $(LFLAGS_D);
  302. <<
  303. !ELSE
  304. $(LRF) @<<$(PROJ).lrf
  305. $(RT_OBJS: = +^
  306. ) $(OBJS: = +^
  307. )
  308. $@
  309. $(MAPFILE_R)
  310. $(LIBS: = +^
  311. ) +
  312. $(LLIBS_G: = +^
  313. ) +
  314. $(LLIBS_R: = +^
  315. )
  316. $(DEF_FILE) $(LFLAGS_G) $(LFLAGS_R);
  317. <<
  318. !ENDIF
  319. $(LINKER) @$(PROJ).lrf
  320. .c.obj :
  321. !IF $(DEBUG)
  322. @$(CC) @<<$(PROJ).rsp
  323. /c $(CFLAGS_G)
  324. $(CFLAGS_D) /Fo$@ $<
  325. <<
  326. !ELSE
  327. @$(CC) @<<$(PROJ).rsp
  328. /c $(CFLAGS_G)
  329. $(CFLAGS_R) /Fo$@ $<
  330. <<
  331. !ENDIF
  332. run: $(PROJ).exe
  333. $(PROJ).exe $(RUNFLAGS)
  334. debug: $(PROJ).exe
  335. CV $(CVFLAGS) $(PROJ).exe $(RUNFLAGS)
  336. # << User_supplied_information >>