blob: a716d0361d13d734e72cf377d0387d6b5db41c6f [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001#
2# Makefile to run all tests for Vim on VMS
3#
4# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
5# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
6#
Bram Moolenaaraa23b372015-09-08 18:46:31 +02007# Last change: 2015 Sep 08
Bram Moolenaar071d4272004-06-13 20:20:40 +00008#
Bram Moolenaarac98e5d2008-09-01 14:51:37 +00009# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
Bram Moolenaar071d4272004-06-13 20:20:40 +000010# Edit the lines in the Configuration section below to select.
11#
12# Execute with:
13# mms/descrip=Make_vms.mms
14# Cleanup with:
15# mms/descrip=Make_vms.mms clean
16#
17# Make files are MMK compatible.
18#
19# NOTE: You can run this script just in X/Window environment. It will
20# create a new terminals, therefore you have to set up your DISPLAY
21# logical. More info in VMS documentation or with: help set disp.
22#
23#######################################################################
24# Configuration section.
25#######################################################################
26
27# Uncomment if you want tests in GUI mode. Terminal mode is default.
28# WANT_GUI = YES
29
30# Comment out if you want to run Unix specific tests as well, but please
31# be aware, that on OpenVMS will fail, because of cat, rm, etc commands
32# and directory handling.
33# WANT_UNIX = YES
34
Bram Moolenaarac98e5d2008-09-01 14:51:37 +000035# Comment out if you want to run Win32 specific tests as well, but please
36# be aware, that on OpenVMS will fail, because of cat, rm, etc commands
37# and directory handling.
38# WANT_WIN = YES
39
40# Comment out if you want to run spell checker tests.
41# They fail because VMS does not support file names.
42# WANT_SPELL = YES
43
Bram Moolenaar206f0112014-03-12 16:51:55 +010044# Comment out if you want to run mzschema tests.
Bram Moolenaarf878bcf2010-07-30 22:29:41 +020045# It fails because VMS does not support this feature yet.
46# WANT_MZSCH = YES
47
Bram Moolenaarb96a7f32014-11-27 16:22:48 +010048# Comment out if you have ODS-5 file system
Bram Moolenaar206f0112014-03-12 16:51:55 +010049# HAVE_ODS5 = YES
50
Bram Moolenaar071d4272004-06-13 20:20:40 +000051# Comment out if you have gzip on your system
52# HAVE_GZIP = YES
53
54# Comment out if you have GNU compatible diff on your system
55# HAVE_GDIFF = YES
56
Bram Moolenaarb96a7f32014-11-27 16:22:48 +010057# Comment out if you have GNU compatible cksum on your system
Bram Moolenaar206f0112014-03-12 16:51:55 +010058# HAVE_CKSUM = YES
59
Bram Moolenaarb96a7f32014-11-27 16:22:48 +010060# Comment out if you have ICONV support
Bram Moolenaar206f0112014-03-12 16:51:55 +010061# HAVE_ICONV = YES
62
63# Comment out if you have LUA support
64# HAVE_LUA = YES
65
66# Comment out if you have PYTHON support
67# HAVE_PYTHON = YES
68
Bram Moolenaar071d4272004-06-13 20:20:40 +000069#######################################################################
70# End of configuration section.
71#
72# Please, do not change anything below without programming experience.
73#######################################################################
74
75VIMPROG = <->vim.exe
76
77.SUFFIXES : .out .in
78
79SCRIPT = test1.out test2.out test3.out test4.out test5.out \
80 test6.out test7.out test8.out test9.out test10a.out\
Bram Moolenaar206f0112014-03-12 16:51:55 +010081 test13.out test14.out test15.out \
Bram Moolenaar071d4272004-06-13 20:20:40 +000082 test18.out test19.out test20.out test21.out test22.out \
83 test23.out test24.out test26.out \
Bram Moolenaarac98e5d2008-09-01 14:51:37 +000084 test28.out test29.out test30.out test31.out test32.out \
Bram Moolenaar071d4272004-06-13 20:20:40 +000085 test33.out test34.out test35.out test36.out test37.out \
86 test38.out test39.out test40.out test41.out test42.out \
87 test43.out test44.out test45.out test46.out \
Bram Moolenaar206f0112014-03-12 16:51:55 +010088 test48.out test49.out test51.out test53.out test54.out \
89 test55.out test56.out test57.out test60.out \
Bram Moolenaardd310302009-03-11 15:37:53 +000090 test61.out test62.out test63.out test64.out test65.out \
Bram Moolenaarf878bcf2010-07-30 22:29:41 +020091 test66.out test67.out test68.out test69.out \
Bram Moolenaar72bb0d62011-04-28 19:05:05 +020092 test71.out test72.out test74.out test75.out test76.out \
Bram Moolenaar206f0112014-03-12 16:51:55 +010093 test77a.out test78.out test79.out test80.out test81.out \
94 test82.out test84.out test88.out test89.out \
Bram Moolenaarfbc0d2e2013-05-19 19:40:29 +020095 test90.out test91.out test92.out test93.out test94.out \
Bram Moolenaar206f0112014-03-12 16:51:55 +010096 test95.out test96.out test98.out test99.out \
97 test100.out test101.out test103.out test104.out \
Bram Moolenaarc35b0fb2014-05-29 11:47:40 +020098 test105.out test106.out test107.out \
Bram Moolenaar4bde00c2015-01-20 19:31:02 +010099 test_argument_0count.out \
Bram Moolenaarb96a7f32014-11-27 16:22:48 +0100100 test_argument_count.out \
Bram Moolenaar53744302015-07-17 17:38:22 +0200101 test_autocmd_option.out \
Bram Moolenaard69bd9a2014-04-29 12:15:40 +0200102 test_autoformat_join.out \
Bram Moolenaar597a4222014-06-25 14:39:50 +0200103 test_breakindent.out \
Bram Moolenaaraa23b372015-09-08 18:46:31 +0200104 test_cdo.out \
Bram Moolenaar23fb7a92014-07-30 14:05:00 +0200105 test_changelist.out \
Bram Moolenaardbd24b52015-08-11 14:26:19 +0200106 test_charsearch.out \
Bram Moolenaarb96a7f32014-11-27 16:22:48 +0100107 test_close_count.out \
Bram Moolenaarf1d6ccf2014-12-08 04:16:44 +0100108 test_command_count.out \
Bram Moolenaar37a8de12015-09-01 16:05:00 +0200109 test_comparators.out \
Bram Moolenaar310f2d52015-03-24 17:49:51 +0100110 test_erasebackword.out \
Bram Moolenaarb7cb42b2014-04-02 19:55:10 +0200111 test_eval.out \
Bram Moolenaar34d72d42015-07-17 14:18:08 +0200112 test_fixeol.out \
Bram Moolenaar3a304b22015-06-25 13:57:36 +0200113 test_increment.out \
Bram Moolenaar4f5ce332014-07-30 16:00:58 +0200114 test_insertcount.out \
Bram Moolenaar79278362015-04-21 18:33:48 +0200115 test_listchars.out \
Bram Moolenaarb5cf6c32014-08-16 18:36:43 +0200116 test_listlbr.out \
117 test_listlbr_utf8.out \
Bram Moolenaarbdef5182014-10-21 16:22:17 +0200118 test_mapping.out \
Bram Moolenaarf65aad52015-02-17 13:43:40 +0100119 test_marks.out \
Bram Moolenaar6561d522015-07-21 15:48:27 +0200120 test_match_conceal.out \
Bram Moolenaaref923902014-12-13 21:00:55 +0100121 test_nested_function.out \
Bram Moolenaarb5cf6c32014-08-16 18:36:43 +0200122 test_options.out \
Bram Moolenaarcf0213e2015-06-19 15:45:29 +0200123 test_perl.out \
Bram Moolenaarb5cf6c32014-08-16 18:36:43 +0200124 test_qf_title.out \
Bram Moolenaarcf0213e2015-06-19 15:45:29 +0200125 test_ruby.out \
Bram Moolenaar5f1e68b2015-07-10 14:43:35 +0200126 test_search_mbyte.out \
Bram Moolenaara7b7b1c2015-06-19 14:06:43 +0200127 test_set.out \
Bram Moolenaar482a2b52014-10-21 20:57:15 +0200128 test_signs.out \
Bram Moolenaar438b64a2015-03-13 15:03:00 +0100129 test_textobjects.out \
Bram Moolenaarb5cf6c32014-08-16 18:36:43 +0200130 test_utf8.out
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200131
132# Known problems:
Bram Moolenaar206f0112014-03-12 16:51:55 +0100133# test17: ?
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200134#
Bram Moolenaar206f0112014-03-12 16:51:55 +0100135# test30: bug, most probably - a problem around mac format
136#
137# test32: VMS is not case sensitive and all filenames are lowercase within Vim
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200138# (this should be changed in order to preserve the original filename) - should
139# be fixed. VMS allows just one dot in the filename
140#
Bram Moolenaar206f0112014-03-12 16:51:55 +0100141# test58, test59: Failed/Hangs - VMS does not support spell files (file names
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200142# with too many dots).
143#
Bram Moolenaar206f0112014-03-12 16:51:55 +0100144# test72: bug - Vim hangs at :rename (while rename works well otherwise)
145# test78: bug - Vim dies at :recover Xtest
146# test83: ?
147# test85: no Lua interface
148# test89: bug - findfile() does not work on VMS (just in the current directory)
149# test97, test102: Just ODS-5 supports space and special chars in the filename.
150# On ODS-2 tests fail.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000151
152.IFDEF WANT_GUI
153SCRIPT_GUI = test16.out
154GUI_OPTION = -g
155.ENDIF
156
157.IFDEF WANT_UNIX
Bram Moolenaar206f0112014-03-12 16:51:55 +0100158SCRIPT_UNIX = test10.out test12.out test17.out test25.out test27.out test49.out test73.out
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000159.ENDIF
160
161.IFDEF WANT_WIN
162SCRIPT_WIN = test50.out test52.out
163.ENDIF
164
165.IFDEF WANT_SPELL
166SCRIPT_SPELL = test58.out test59.out
Bram Moolenaar071d4272004-06-13 20:20:40 +0000167.ENDIF
168
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200169.IFDEF WANT_MZSCH
170SCRIPT_MZSCH = test70.out
171.ENDIF
172
Bram Moolenaar206f0112014-03-12 16:51:55 +0100173.IFDEF HAVE_ODS5
174SCRIPT_ODS5 = test97.out test102.out
175.ENDIF
176
Bram Moolenaar071d4272004-06-13 20:20:40 +0000177.IFDEF HAVE_GZIP
178SCRIPT_GZIP = test11.out
179.ENDIF
180
181.IFDEF HAVE_GDIFF
182SCRIPT_GDIFF = test47.out
183.ENDIF
184
Bram Moolenaar206f0112014-03-12 16:51:55 +0100185.IFDEF HAVE_CKSUM
186SCRIPT_CKSUM = test77.out
187.ENDIF
188
189.IFDEF HAVE_ICONV
190SCRIPT_ICONV = test83.out
191.ENDIF
192
193.IFDEF HAVE_LUA
194SCRIPT_LUA = test85.out
195.ENDIF
196
197.IFDEF HAVE_PYTHON
198SCRIPT_PYTHON = test86.out test87.out
199.ENDIF
200
Bram Moolenaar071d4272004-06-13 20:20:40 +0000201.in.out :
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200202 -@ !clean up before doing the test
203 -@ if "''F$SEARCH("test.out.*")'" .NES. "" then delete/noconfirm/nolog test.out.*
204 -@ if "''F$SEARCH("$*.out.*")'" .NES. "" then delete/noconfirm/nolog $*.out.*
Bram Moolenaar206f0112014-03-12 16:51:55 +0100205 -@ ! define TMP if not set - some tests use it
206 -@ if "''F$TRNLNM("TMP")'" .EQS. "" then define/nolog TMP []
Bram Moolenaar071d4272004-06-13 20:20:40 +0000207 -@ write sys$output " "
208 -@ write sys$output "-----------------------------------------------"
209 -@ write sys$output " "$*" "
210 -@ write sys$output "-----------------------------------------------"
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200211 -@ !run the test
212 -@ create/term/wait/nodetach mcr $(VIMPROG) $(GUI_OPTION) -u vms.vim --noplugin -s dotest.in $*.in
213 -@ !analyse the result
214 -@ directory /size/date test.out
215 -@ if "''F$SEARCH("test.out.*")'" .NES. "" then rename/nolog test.out $*.out
216 -@ if "''F$SEARCH("$*.out.*")'" .NES. "" then differences /par $*.out $*.ok;
217 -@ !clean up after the test
Bram Moolenaar071d4272004-06-13 20:20:40 +0000218 -@ if "''F$SEARCH("Xdotest.*")'" .NES. "" then delete/noconfirm/nolog Xdotest.*.*
Bram Moolenaar206f0112014-03-12 16:51:55 +0100219 -@ if "''F$SEARCH("Xtest.*")'" .NES. "" then delete/noconfirm/nolog Xtest.*.*
Bram Moolenaar071d4272004-06-13 20:20:40 +0000220
Bram Moolenaar206f0112014-03-12 16:51:55 +0100221all : clean nolog $(START_WITH) $(SCRIPT) $(SCRIPT_GUI) $(SCRIPT_UNIX) $(SCRIPT_WIN) $(SCRIPT_SPELL) $(SCRIPT_ODS5) $(SCRIPT_GZIP) \
222 $(SCRIPT_GDIFF) $(SCRIPT_MZSCH) $(SCRIPT_CKSUM) $(SCRIPT_ICONV) $(SCRIPT_LUA) $(SCRIPT_PYTHON) nolog
Bram Moolenaar071d4272004-06-13 20:20:40 +0000223 -@ write sys$output " "
224 -@ write sys$output "-----------------------------------------------"
225 -@ write sys$output " All done"
226 -@ write sys$output "-----------------------------------------------"
227 -@ deassign sys$output
228 -@ delete/noconfirm/nolog x*.*.*
229 -@ type test.log
230
231nolog :
232 -@ define sys$output test.log
233 -@ write sys$output "-----------------------------------------------"
234 -@ write sys$output " Standard VIM test cases"
235 -@ write sys$output "-----------------------------------------------"
236 -@ write sys$output " OpenVMS version: ''F$GETSYI("VERSION")'"
237 -@ write sys$output " Vim version:"
238 -@ mcr $(VIMPROG) --version
239 -@ write sys$output " Test date:"
240 -@ show time
241 -@ write sys$output "-----------------------------------------------"
242 -@ write sys$output " Test results:"
243 -@ write sys$output "-----------------------------------------------"
244 -@ write sys$output "MAKE_VMS.MMS options:"
Bram Moolenaar206f0112014-03-12 16:51:55 +0100245 -@ write sys$output " WANT_GUI = ""$(WANT_GUI)"" "
246 -@ write sys$output " WANT_UNIX = ""$(WANT_UNIX)"" "
247 -@ write sys$output " WANT_WIN = ""$(WANT_WIN)"" "
248 -@ write sys$output " WANT_SPELL = ""$(WANT_SPELL)"" "
249 -@ write sys$output " WANT_MZSCH = ""$(WANT_MZSCH)"" "
250 -@ write sys$output " HAVE_ODS5 = ""$(HAVE_ODS5)"" "
251 -@ write sys$output " HAVE_GZIP = ""$(HAVE_GZIP)"" "
252 -@ write sys$output " HAVE_GDIFF = ""$(HAVE_GDIFF)"" "
253 -@ write sys$output " HAVE_CKSUM = ""$(HAVE_CKSUM)"" "
254 -@ write sys$output " HAVE_ICONV = ""$(HAVE_ICONV)"" "
255 -@ write sys$output " HAVE_LUA = ""$(HAVE_LUA)"" "
256 -@ write sys$output " HAVE_PYTHON= ""$(HAVE_PYTHON)"" "
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200257 -@ write sys$output "Default vimrc file is VMS.VIM:"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000258 -@ write sys$output "-----------------------------------------------"
259 -@ type VMS.VIM
260
261clean :
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200262 -@ if "''F$SEARCH("*.out")'" .NES. "" then delete/noconfirm/nolog *.out.*
263 -@ if "''F$SEARCH("test.log")'" .NES. "" then delete/noconfirm/nolog test.log.*
264 -@ if "''F$SEARCH("test.ok")'" .NES. "" then delete/noconfirm/nolog test.ok.*
265 -@ if "''F$SEARCH("Xdotest.*")'" .NES. "" then delete/noconfirm/nolog Xdotest.*.*
Bram Moolenaar206f0112014-03-12 16:51:55 +0100266 -@ if "''F$SEARCH("Xtest*.*")'" .NES. "" then delete/noconfirm/nolog Xtest*.*.*
267 -@ if "''F$SEARCH("XX*.*")'" .NES. "" then delete/noconfirm/nolog XX*.*.*
268 -@ if "''F$SEARCH("_un_*.*")'" .NES. "" then delete/noconfirm/nolog _un_*.*.*
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200269 -@ if "''F$SEARCH("*.*_sw*")'" .NES. "" then delete/noconfirm/nolog *.*_sw*.*
270 -@ if "''F$SEARCH("*.failed")'" .NES. "" then delete/noconfirm/nolog *.failed.*
271 -@ if "''F$SEARCH("*.rej")'" .NES. "" then delete/noconfirm/nolog *.rej.*
272 -@ if "''F$SEARCH("tiny.vim")'" .NES. "" then delete/noconfirm/nolog tiny.vim.*
273 -@ if "''F$SEARCH("small.vim")'" .NES. "" then delete/noconfirm/nolog small.vim.*
274 -@ if "''F$SEARCH("mbyte.vim")'" .NES. "" then delete/noconfirm/nolog mbyte.vim.*
275 -@ if "''F$SEARCH("mzscheme.vim")'" .NES. "" then delete/noconfirm/nolog mzscheme.vim.*
Bram Moolenaar206f0112014-03-12 16:51:55 +0100276 -@ if "''F$SEARCH("lua.vim")'" .NES. "" then delete/noconfirm/nolog lua.vim.*
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200277 -@ if "''F$SEARCH("viminfo.*")'" .NES. "" then delete/noconfirm/nolog viminfo.*.*
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000278