home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / vile-src.zip / vile-8.1 / descrip.mms < prev    next >
Text File  |  1998-09-21  |  7KB  |  286 lines

  1. #
  2. # VMS makefile for vile.  Requires "MMS"
  3. #
  4. # Tested with:
  5. #    VMS system version 5.4-2
  6. #    MMS version 2.6
  7. #    VAX-C version 3.2
  8. #
  9. # To change screen driver modules, change SCREEN and SCRDEF below, OR edit
  10. # estruct.h to make sure the correct one is #defined as "1", and the others
  11. # all as "0".  If you use tcap.c, you'll need libtermcap.a too.  If you use
  12. # x11.c, you'll need libX11.a too.
  13. #
  14. # $Header: /usr/build/vile/vile/RCS/descrip.mms,v 1.36 1998/09/21 11:03:58 tom Exp $
  15.  
  16. .IFDEF __XVILE__
  17.  
  18. # for building the X-toolkit version:
  19. SCREEN = x11
  20. LIBS = #-lX11
  21. TARGET = xvile.exe
  22. SCRDEF = "NO_WIDGETS","XTOOLKIT","DISP_X11","scrn_chosen"
  23.  
  24. # for building the Motif version (untested):
  25. #SCREEN = x11
  26. #LIBS = #-lX11
  27. #TARGET = xvile.exe
  28. #SCRDEF = "MOTIF_WIDGETS","XTOOLKIT","DISP_X11","scrn_chosen"
  29.  
  30. .ELSE
  31. # for regular vile, use these:
  32. SCREEN = vmsvt
  33. LIBS =
  34. TARGET = vile.exe
  35. SCRDEF = "DISP_VMSVT","scrn_chosen"
  36. .ENDIF
  37.  
  38. LINKFLAGS = /MAP=$(MMS$TARGET_NAME)/CROSS_REFERENCE/EXEC=$(MMS$TARGET_NAME).EXE
  39.  
  40. INCS = []
  41.  
  42. MKTBLS = mktbls.EXE
  43.  
  44.  
  45. SRC =    main.c \
  46.     $(SCREEN).c \
  47.     basic.c \
  48.     bind.c \
  49.     btree.c \
  50.     buffer.c \
  51.     crypt.c \
  52.     csrch.c \
  53.     display.c \
  54.     dumbterm.c \
  55.     eval.c \
  56.     exec.c \
  57.     externs.c \
  58.     fences.c \
  59.     file.c \
  60.     filec.c \
  61.     fileio.c \
  62.     finderr.c \
  63.     glob.c \
  64.     globals.c \
  65.     history.c \
  66.     input.c \
  67.     insert.c \
  68.     itbuff.c \
  69.     isearch.c \
  70.     line.c \
  71.     map.c \
  72.     menu.c \
  73.     modes.c \
  74.     msgs.c \
  75.     npopen.c \
  76.     oneliner.c \
  77.     opers.c \
  78.     path.c \
  79.     random.c \
  80.     regexp.c \
  81.     region.c \
  82.     search.c \
  83.     select.c \
  84.     spawn.c \
  85.     tags.c \
  86.     tbuff.c \
  87.     termio.c \
  88.     undo.c \
  89.     version.c \
  90.     vms2unix.c \
  91.     vmspipe.c \
  92.     watch.c \
  93.     window.c \
  94.     word.c \
  95.     wordmov.c
  96.  
  97. OBJ =    main.obj,\
  98.     $(SCREEN).obj,\
  99.     basic.obj,\
  100.     bind.obj,\
  101.     btree.obj,\
  102.     buffer.obj,\
  103.     crypt.obj,\
  104.     csrch.obj,\
  105.     display.obj,\
  106.     dumbterm.obj,\
  107.     eval.obj,\
  108.     exec.obj,\
  109.     externs.obj,\
  110.     fences.obj,\
  111.     file.obj,\
  112.     filec.obj,\
  113.     fileio.obj,\
  114.     finderr.obj,\
  115.     glob.obj, \
  116.     globals.obj,\
  117.     history.obj,\
  118.     input.obj,\
  119.     insert.obj,\
  120.     itbuff.obj,\
  121.     isearch.obj,\
  122.     line.obj,\
  123.     map.obj, \
  124.     menu.obj,\
  125.     modes.obj,\
  126.     msgs.obj,\
  127.     npopen.obj,\
  128.     oneliner.obj,\
  129.     opers.obj,\
  130.     path.obj,\
  131.     random.obj,\
  132.     regexp.obj,\
  133.     region.obj,\
  134.     search.obj,\
  135.     select.obj,\
  136.     spawn.obj,\
  137.     tags.obj,\
  138.     tbuff.obj,\
  139.     termio.obj,\
  140.     undo.obj,\
  141.     version.obj, \
  142.     vms2unix.obj,\
  143.     vmspipe.obj,\
  144.     watch.obj,\
  145.     window.obj,\
  146.     word.obj,\
  147.     wordmov.obj
  148.  
  149. all :
  150.  
  151.         $(MMS)$(MMSQUALIFIERS) $(TARGET)
  152.  
  153. #
  154. # I've built on an Alpha with CC_OPTIONS set to
  155. #    CC_OPTIONS = /STANDARD=VAXC        (for VAX-C compatibility)
  156. #    CC_OPTIONS = /PREFIX_LIBRARY_ENTRIES=ALL_ENTRIES    (DEC-C)
  157. # The latter (DEC-C) gives better type-checking -- T.Dickey
  158. #
  159. .IFDEF __ALPHA__
  160. CC_OPTIONS = /PREFIX_LIBRARY_ENTRIES=ALL_ENTRIES
  161. CC_DEFS = ,HAVE_ALARM
  162. .ELSE
  163. .IFDEF __DECC__
  164. CC_OPTIONS = /DECC /PREFIX_LIBRARY_ENTRIES=ALL_ENTRIES
  165. CC_DEFS = ,HAVE_ALARM
  166. .ELSE
  167. CC_OPTIONS =
  168. CC_DEFS = ,HAVE_SYS_ERRLIST
  169. .ENDIF
  170. .ENDIF
  171.  
  172. nebind.h \
  173. nefkeys.h \
  174. nefunc.h \
  175. nename.h :    cmdtbl $(MKTBLS)
  176.     MKTBLS cmdtbl
  177.  
  178. nevars.h \
  179. nemode.h :    modetbl $(MKTBLS)
  180.     MKTBLS modetbl
  181.  
  182. # install to DESTDIR1 if it's writable, else DESTDIR2
  183. install :
  184.     @ WRITE SYS$ERROR "** no rule for $@"
  185.     
  186. clean :
  187.     @- if f$search("*.obj") .nes. "" then delete *.obj;*
  188.     @- if f$search("*.bak") .nes. "" then delete *.bak;*
  189.     @- if f$search("*.lis") .nes. "" then delete *.lis;*
  190.     @- if f$search("*.log") .nes. "" then delete *.log;*
  191.     @- if f$search("*.map") .nes. "" then delete *.map;*
  192.     @- if f$search("*.opt") .nes. "" then delete *.opt;*
  193.     @- if f$search("ne*.h") .nes. "" then delete ne*.h;*
  194.     @- if f$search("$(MKTBLS)") .nes. "" then delete $(MKTBLS);
  195.  
  196. clobber : clean
  197.     @- if f$search("vile.com") .nes. "" then delete vile.com;*
  198.     @- if f$search("xvile.com") .nes. "" then delete xvile.com;*
  199.     @- if f$search("*.exe") .nes. "" then delete *.exe;*
  200.  
  201. $(OBJ) : estruct.h nemode.h nefkeys.h edef.h proto.h
  202.  
  203. bind.obj :    nefunc.h
  204. eval.obj :    nevars.h
  205. exec.obj :    nefunc.h
  206. externs.obj :    nebind.h nename.h neproto.h nefunc.h
  207. filec.obj :    dirstuff.h
  208. glob.obj :    dirstuff.h
  209. globals.obj :    nefunc.h
  210. main.obj :    chgdfunc.h nevars.h
  211. modes.obj :    chgdfunc.h
  212. opers.obj :    nefunc.h
  213. path.obj :    dirstuff.h
  214. random.obj :    nefunc.h
  215. select.obj :    nefunc.h
  216. spawn.obj :    nefunc.h
  217. termio.obj :    nefunc.h
  218. version.obj :    patchlev.h
  219. vms2unix.obj :    dirstuff.h
  220. word.obj :    nefunc.h
  221.  
  222. .first :
  223.     @ MKTBLS :== $SYS$DISK:'F$DIRECTORY()$(MKTBLS)    ! make a foreign command
  224.  
  225. .last :
  226.     @- if f$search("*.dia") .nes. "" then delete *.dia;*
  227.     @- if f$search("*.lis") .nes. "" then purge *.lis
  228.     @- if f$search("*.obj") .nes. "" then purge *.obj
  229.     @- if f$search("*.map") .nes. "" then purge *.map
  230.     @- if f$search("*.exe") .nes. "" then purge *.exe
  231.     @- if f$search("*.log") .nes. "" then purge *.log
  232.     @- if f$search("*.opt") .nes. "" then purge *.opt
  233.  
  234. # used /G_FLOAT with vaxcrtlg/share in vms_link.opt
  235. # can also use /Debug /Listing, /Show=All
  236. CFLAGS =-
  237.     $(CC_OPTIONS)/Diagnostics /Define=("os_chosen",$(SCRDEF)$(CC_DEFS)) -
  238.     /Object=$@ /Include=($(INCS)) 
  239.  
  240. .C.OBJ :
  241.     $(CC) $(CFLAGS) $(MMS$SOURCE)
  242.     @- delete $(MMS$TARGET_NAME).dia;*
  243.  
  244. $(MKTBLS) : mktbls.obj $(OPTFILE)
  245.     $(LINK) $(LINKFLAGS) mktbls.obj $(OPTIONS)
  246.  
  247. $(TARGET) : $(OBJ), vms_link.opt, descrip.mms $(OPTFILE)
  248.     $(LINK) $(LINKFLAGS) main.obj, $(SCREEN).obj, vms_link/opt 
  249.  
  250. vms_link.opt :
  251.     @vmsbuild vms_link_opt
  252.  
  253. # Runs VILE from the current directory (used for testing)
  254. vile.com :
  255.     @- if "''f$search("$@")'" .nes. "" then delete $@;*
  256.     @- copy nl: $@
  257.     @ open/append  test_script $@
  258.     @ write test_script "$ temp = f$environment(""procedure"")"
  259.     @ write test_script "$ temp = temp -"
  260.     @ write test_script "        - f$parse(temp,,,""version"",""syntax_only"") -"
  261.     @ write test_script "        - f$parse(temp,,,""type"",""syntax_only"")"
  262.     @ write test_script "$ vile :== $ 'temp'.exe"
  263.     @ write test_script "$ define/user_mode sys$input  sys$command"
  264.     @ write test_script "$ define/user_mode sys$output sys$command"
  265.     @ write test_script "$ vile 'p1 'p2 'p3 'p4 'p5 'p6 'p7 'p8"
  266.     @ close test_script
  267.     @ write sys$output "** made $@"
  268.  
  269. # Runs XVILE from the current directory (used for testing)
  270. xvile.com :
  271.     @- if "''f$search("$@")'" .nes. "" then delete $@;*
  272.     @- copy nl: $@
  273.     @ open/append  test_script $@
  274.     @ write test_script "$ temp = f$environment(""procedure"")"
  275.     @ write test_script "$ temp = temp -"
  276.     @ write test_script "        - f$parse(temp,,,""name"",""syntax_only"") -"
  277.     @ write test_script "        - f$parse(temp,,,""version"",""syntax_only"") -"
  278.     @ write test_script "        - f$parse(temp,,,""type"",""syntax_only"")"
  279.     @ write test_script "$ xvile :== $ 'temp'xvile.exe"
  280.     @ write test_script "$ define/user_mode sys$input  sys$command"
  281.     @ write test_script "$ define/user_mode sys$output sys$command"
  282.     @ write test_script "$ xvile 'p1 'p2 'p3 'p4 'p5 'p6 'p7 'p8"
  283.     @ close test_script
  284.     @ write sys$output "** made $@"
  285.  
  286.