home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / INFO / EDITOR / ELVIS14S.ZIP / MAKEFILE.MSC < prev    next >
Encoding:
Text File  |  1990-12-13  |  2.4 KB  |  116 lines

  1. ### this is the default makefile for DOS: default.mk
  2. # MicroSoft C Makefile for ELVIS - a clone of `vi`
  3. #
  4. # Use `make` to compile all programs
  5. # Use `make install` to copy the programs to the BIN directory
  6. # Use `make clean` to remove all object files
  7. # Use `make clobber` to remove everything except source & documentation
  8. # Use `make tags` to build new "tags" and "refs" files
  9. # Use `make sh` to produce shar archives of the source
  10.  
  11. .SUFFIXES : .exe .obj .c
  12.  
  13. #    C section
  14.  
  15. CC     = cl
  16.  
  17. .c.exe     :
  18.      $(CC) $(CFLAGS) -c -Fo$*.obj $<
  19.      $(CC) -Fe$@ $*.obj 
  20.      $(RM) $*.obj
  21. .c.obj:
  22.     $(CC) $(CFLAGS) -c $<
  23.  
  24. LINK.c    = link
  25.  
  26. MODEL    = s
  27.  
  28. WILD    = c:\LIB\setargv.obj
  29.  
  30. SHELL    = command /c
  31.  
  32. RM    = del
  33.  
  34. CP    = copy /u
  35.  
  36. BIN=c:\BIN
  37.  
  38. LIB=c:\C\TC\LIB
  39.  
  40. PROGS=    elvis.exe ctags.exe ref.exe virec.exe wildcard.exe refont.exe \
  41.     ex.exe vi.exe view.exe 
  42.  
  43. OBJS=    blk.obj cmd1.obj cmd2.obj curses.obj cut.obj ex.obj input.obj \
  44.     main.obj misc.obj modify.obj move1.obj move2.obj move3.obj \
  45.     move4.obj move5.obj  opts.obj recycle.obj redraw.obj regexp.obj \
  46.     regsub.obj tio.obj tmp.obj vars.obj vcmd.obj vi.obj \
  47.     system.obj pc.obj sysdos.obj tinytcap.obj
  48. #
  49. # The utilities fit into 64K code + 64K data just fine.
  50. #
  51.  
  52. CFLAGS_UTIL=    -AS -Olt
  53.  
  54. #
  55. # Elvis has too much code for the SMALL model, but not much data.
  56. #
  57.  
  58. CFLAGS=    -AM -Olt -DCS_IBMPC -DCS_SPECIAL -DSETARGV=1
  59.  
  60. all: $(PROGS) tags refs 
  61.  
  62. elvis.exe: $(OBJS)
  63.     link @elvis.lnk
  64.  
  65. #
  66. # This just says that a change to nomagic.c is effectively a change to regexp.c
  67. #
  68.  
  69. regexp.obj: nomagic.c
  70.  
  71. ctags.exe: ctags.c config.h
  72.      $(CC) $(CFLAGS_UTIL) -c -Fo$*.obj $*.c
  73.      $(CC) -Fe$@ $*.obj 
  74.  
  75. ref.exe: ref.c
  76.      $(CC) $(CFLAGS_UTIL) -c -Fo$*.obj $*.c
  77.      $(CC) -Fe$@ $*.obj 
  78.  
  79. virec.exe: virec.c config.h vi.h
  80.      $(CC) $(CFLAGS_UTIL) -c -Fo$*.obj $*.c
  81.      $(CC) -Fe$@ $*.obj 
  82.  
  83. wildcard.exe: wildcard.c
  84.      $(CC) $(CFLAGS_UTIL) -c -Fo$*.obj $*.c
  85.      $(CC) -Fe$@ $*.obj 
  86.     
  87. refont.exe: refont.c
  88.      $(CC) $(CFLAGS_UTIL) -c -Fo$*.obj $*.c
  89.      $(LINK.c) /stack:0x4000 $*.obj, $@,,; 
  90.  
  91. ex.exe: alias.c
  92.      $(CC) $(CFLAGS_UTIL) -c -Foalias.obj alias.c
  93.      $(CC) -Feex.exe alias.obj 
  94.  
  95. vi.exe: ex.exe
  96.     $(CP) ex.exe vi.exe
  97.  
  98. view.exe: ex.exe
  99.     $(CP) ex.exe view.exe
  100.  
  101. install: $(PROGS)
  102.     $(CP) $(PROGS) $(BIN)
  103.  
  104. clean:
  105.     $(RM) *.obj
  106.  
  107. clobber: clean
  108.     $(RM) tags refs $(PROGS)
  109.  
  110. which:
  111.     @echo 'MicroSoft-C'
  112.  
  113. tags refs: ctags.exe
  114.     ctags -r *.c *.h
  115.  
  116.