home *** CD-ROM | disk | FTP | other *** search
/ Power Programming / powerprogramming1994.iso / progtool / c / abmake14.arc / default.mk < prev    next >
Makefile  |  1989-08-10  |  2KB  |  109 lines

  1. ###    this is    the    default    makefile, DEFAULT.MK
  2.  
  3. SUFFIXES = .exe    .com .obj .asm .c .l .y .ec .h .bat
  4. .SUFFIXES:    $(SUFFIXES)
  5. .RESPONSE:
  6.     $(LINK.s)
  7.  
  8. #        Misc section
  9. AR        = lib
  10. RM        = remove
  11. CP        = copy
  12.  
  13. #        LINK section
  14. LINK.s    = link
  15. CO        = /CO
  16. LDEF    =
  17. LFLAGS    = $(CO) $(LDEF)
  18. LINK    = $(LINK.s) $(LFLAGS)
  19. LINK.c    = cl
  20. LN        = $(LINK.c) $(CFLAGS)
  21. .obj.exe:
  22.         $(LINK) $*,,, FLASH UTILITY
  23. .exe.com:
  24.         exe2bin    $< $@
  25.  
  26. #        C section
  27. COMPILE.c =    cl
  28. MODEL    = S
  29. CV        = -Zi
  30. OPT        = -Ox
  31. CDEF    =
  32. MATH    =
  33. CFLAGS  = -A$(MODEL) $(OPT) $(MATH) $(CV) $(CDEF)
  34. CC        = $(COMPILE.c) $(CFLAGS)
  35. .c.exe     :
  36.          $(CC) $< -link    $(LDEF) FLASH UTILITY
  37.          if    errorlevel 0 $(RM) $*.obj
  38. .c.obj     :
  39.          $(CC) -c $<
  40.  
  41. #        D section (ANSI    C declaration headers)
  42. .c.d     :
  43.          echo #ifndef NOPROTOTYPES > $*.tmp
  44.          $(CC) -DNOPROTOTYPES -Zg $< >>    $*.tmp
  45.          echo #endif >>    $*.tmp
  46.         +updexhdr $*.tmp $*.d
  47.          if    errorlevel 0 $(RM) $*.tmp
  48.  
  49. #        ASM    section
  50. COMPILE.s =    masm
  51. ADEF    =
  52. AFLAGS    = -v -Ml -X -w2 -p $(CV) $(ADEF)
  53. AS        = $(COMPILE.s) $(AFLAGS)
  54. .asm.com :
  55.         $(AS) $<;
  56.         $(LINK) $*,,, FLASH UTILITY;
  57.         $(RM) $*.com $*.obj
  58.         exe2bin $*.exe    $*.com
  59.         if errorlevel 0 $(RM) $*.exe
  60. .asm.exe:
  61.         $(AS) $<;
  62.         $(LINK) $*,,, FLASH UTILITY;
  63.         if errorlevel 0 $(RM) $*.obj
  64. .asm.obj:
  65.         $(AS) $<;
  66.  
  67. #        Lex    section
  68. LEX        = flex
  69. LXFLAGS    = -I
  70. LEX.l    = $(LEX) $(LXFLAGS) -t
  71. .l.exe:
  72.         $(LEX.l) $< > $*.c
  73.         $(LINK.c) -o $@ $*.c
  74.         $(RM) $*.obj $*.c
  75. .l.c:
  76.         $(LEX.l) $< > $@
  77. .l.o:
  78.         $(LEX.l) $< > $*.c
  79.         $(COMPILE.c) /Fo$*.o $*.c
  80.         $(RM) $*.c
  81. .l.obj:
  82.         $(LEX.l) $< > $*.c
  83.         $(COMPILE.c) $*.c
  84.         $(RM) $*.c
  85.  
  86. #        YACC Section
  87. YACC    = bison
  88. YFLAGS    =
  89. YACC.y    = $(YACC) $(YFLAGS)
  90. .y.exe:
  91.         $(YACC.y) $<
  92.         $(LINK.c) -o $@ $*.c
  93.         $(RM) $*.obj $*.c
  94. .y.h:
  95.         $(YACC.y) -d -y $<
  96.         $(RM) ytab.c
  97.         $(MV) ytab.h $@
  98. .y.c:
  99.         $(YACC.y) $<
  100. .y.o:
  101.         $(YACC.y) $<
  102.         $(COMPILE.c) /Fo$*.o $*.c
  103.         $(RM) $*.c
  104. .y.obj:
  105.         $(YACC.y) $<
  106.         $(COMPILE.c) $*.c
  107.         $(RM) $*.c
  108.  
  109.