home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / BYACC.ZIP / MAKEFILE.MSC < prev    next >
Text File  |  1992-03-18  |  3KB  |  146 lines

  1. PROJ = byacc
  2. PROJFILE = byacc.mak
  3. DEBUG = 1
  4.  
  5. PWBRMAKE  = pwbrmake
  6. NMAKEBSC1  = set
  7. NMAKEBSC2  = nmake
  8. CC  = cl
  9. CFLAGS_G  = /W4 /G2 /DDEBUG /BATCH
  10. CFLAGS_D  = /Ot /Ol /Og /Oe /Oi /Oa /Zi
  11. CFLAGS_R  = /Ot /Oi /Ol /Oe /Og /Gs
  12. MAPFILE_D  = NUL
  13. MAPFILE_R  = NUL
  14. LFLAGS_G  =  /NOI /STACK:4096  /BATCH
  15. LFLAGS_D  =  /CO /FAR /PACKC
  16. LFLAGS_R  = /EXE /FAR /PACKC
  17. LINKER  = link
  18. ILINK  = ilink
  19. LRF  = echo > NUL
  20. RUNFLAGS  = test.dat
  21. CVFLAGS  =  /25 /E /F
  22.  
  23. OBJS  = CLOSURE.obj ERROR.obj LALR.obj LR0.obj MAIN.obj MKPAR.obj OUTPUT.obj\
  24.         READER.obj SKELETON.obj SYMTAB.obj VERBOSE.obj WARSHALL.obj
  25. SBRS  = CLOSURE.sbr ERROR.sbr LALR.sbr LR0.sbr MAIN.sbr MKPAR.sbr OUTPUT.sbr\
  26.         READER.sbr SKELETON.sbr SYMTAB.sbr VERBOSE.sbr WARSHALL.sbr
  27.  
  28. all: $(PROJ).exe
  29.  
  30. .SUFFIXES:
  31. .SUFFIXES: .sbr .obj .c
  32.  
  33. CLOSURE.obj : CLOSURE.C byacc.h
  34.  
  35. CLOSURE.sbr : CLOSURE.C byacc.h
  36.  
  37. ERROR.obj : ERROR.C byacc.h
  38.  
  39. ERROR.sbr : ERROR.C byacc.h
  40.  
  41. LALR.obj : LALR.C byacc.h
  42.  
  43. LALR.sbr : LALR.C byacc.h
  44.  
  45. LR0.obj : LR0.C byacc.h
  46.  
  47. LR0.sbr : LR0.C byacc.h
  48.  
  49. MAIN.obj : MAIN.C byacc.h
  50.  
  51. MAIN.sbr : MAIN.C byacc.h
  52.  
  53. MKPAR.obj : MKPAR.C byacc.h
  54.  
  55. MKPAR.sbr : MKPAR.C byacc.h
  56.  
  57. OUTPUT.obj : OUTPUT.C byacc.h
  58.  
  59. OUTPUT.sbr : OUTPUT.C byacc.h
  60.  
  61. READER.obj : READER.C byacc.h
  62.  
  63. READER.sbr : READER.C byacc.h
  64.  
  65. SKELETON.obj : SKELETON.C byacc.h
  66.  
  67. SKELETON.sbr : SKELETON.C byacc.h
  68.  
  69. SYMTAB.obj : SYMTAB.C byacc.h
  70.  
  71. SYMTAB.sbr : SYMTAB.C byacc.h
  72.  
  73. VERBOSE.obj : VERBOSE.C byacc.h
  74.  
  75. VERBOSE.sbr : VERBOSE.C byacc.h
  76.  
  77. WARSHALL.obj : WARSHALL.C byacc.h
  78.  
  79. WARSHALL.sbr : WARSHALL.C byacc.h
  80.  
  81.  
  82. $(PROJ).bsc : $(SBRS)
  83.         $(PWBRMAKE) @<<
  84. $(BRFLAGS) $(SBRS)
  85. <<
  86.  
  87. $(PROJ).exe : $(OBJS)
  88. !IF $(DEBUG)
  89.         $(LRF) @<<$(PROJ).lrf
  90. $(RT_OBJS: = +^
  91. ) $(OBJS: = +^
  92. )
  93. $@
  94. $(MAPFILE_D)
  95. $(LLIBS_G: = +^
  96. ) +
  97. $(LLIBS_D: = +^
  98. ) +
  99. $(LIBS: = +^
  100. )
  101. $(DEF_FILE) $(LFLAGS_G) $(LFLAGS_D);
  102. <<
  103. !ELSE
  104.         $(LRF) @<<$(PROJ).lrf
  105. $(RT_OBJS: = +^
  106. ) $(OBJS: = +^
  107. )
  108. $@
  109. $(MAPFILE_R)
  110. $(LLIBS_G: = +^
  111. ) +
  112. $(LLIBS_R: = +^
  113. ) +
  114. $(LIBS: = +^
  115. )
  116. $(DEF_FILE) $(LFLAGS_G) $(LFLAGS_R);
  117. <<
  118. !ENDIF
  119. !IF $(DEBUG)
  120.         $(LINKER) @$(PROJ).lrf
  121. !ELSE
  122.         $(LINKER) @$(PROJ).lrf
  123. !ENDIF
  124.  
  125.  
  126. .c.sbr :
  127. !IF $(DEBUG)
  128.         $(CC) /Zs $(CFLAGS_G) $(CFLAGS_D) /FR$@ $<
  129. !ELSE
  130.         $(CC) /Zs $(CFLAGS_G) $(CFLAGS_R) /FR$@ $<
  131. !ENDIF
  132.  
  133. .c.obj :
  134. !IF $(DEBUG)
  135.         $(CC) /c $(CFLAGS_G) $(CFLAGS_D) /Fo$@ $<
  136. !ELSE
  137.         $(CC) /c $(CFLAGS_G) $(CFLAGS_R) /Fo$@ $<
  138. !ENDIF
  139.  
  140.  
  141. run: $(PROJ).exe
  142.         $(PROJ).exe $(RUNFLAGS)
  143.  
  144. debug: $(PROJ).exe
  145.         CV $(CVFLAGS) $(PROJ).exe $(RUNFLAGS)
  146.