blob: e31060bd918bde127c52bb0c06868c0f0d946e50 [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 Moolenaare809a4e2019-07-04 17:35:05 +02007# Last change: 2019 May 31
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 ICONV support
Bram Moolenaar206f0112014-03-12 16:51:55 +010058# HAVE_ICONV = YES
59
60# Comment out if you have LUA support
61# HAVE_LUA = YES
62
63# Comment out if you have PYTHON support
64# HAVE_PYTHON = YES
65
Bram Moolenaar071d4272004-06-13 20:20:40 +000066#######################################################################
67# End of configuration section.
68#
69# Please, do not change anything below without programming experience.
70#######################################################################
71
72VIMPROG = <->vim.exe
73
74.SUFFIXES : .out .in
75
Bram Moolenaar1ab74a52019-05-31 20:02:53 +020076SCRIPT = test1.out \
Bram Moolenaar079119b2019-12-03 22:59:23 +010077 test42.out test44.out test49.out \
Bram Moolenaar209d3872017-11-16 21:52:51 +010078 test64.out test69.out \
Bram Moolenaar213ed002019-12-11 20:12:26 +010079 test72.out test77a.out \
Bram Moolenaar309976e2019-12-05 18:16:33 +010080 test95.out test99.out \
Bram Moolenaara703aae2017-12-11 22:55:26 +010081 test_eval.out
Bram Moolenaarf878bcf2010-07-30 22:29:41 +020082
83# Known problems:
Bram Moolenaarf878bcf2010-07-30 22:29:41 +020084#
Bram Moolenaard2c061d2017-06-22 21:42:49 +020085# test59: Failed/Hangs - VMS does not support spell files (file names
Bram Moolenaarf878bcf2010-07-30 22:29:41 +020086# with too many dots).
87#
Bram Moolenaar206f0112014-03-12 16:51:55 +010088# test72: bug - Vim hangs at :rename (while rename works well otherwise)
89# test78: bug - Vim dies at :recover Xtest
Bram Moolenaar206f0112014-03-12 16:51:55 +010090# test89: bug - findfile() does not work on VMS (just in the current directory)
Bram Moolenaar292eff02017-07-11 21:46:28 +020091# test102: Just ODS-5 supports space and special chars in the filename.
Bram Moolenaar206f0112014-03-12 16:51:55 +010092# On ODS-2 tests fail.
Bram Moolenaar071d4272004-06-13 20:20:40 +000093
94.IFDEF WANT_GUI
Bram Moolenaarde5e2c22016-11-04 20:35:31 +010095SCRIPT_GUI = test16.out
Bram Moolenaar071d4272004-06-13 20:20:40 +000096GUI_OPTION = -g
97.ENDIF
98
99.IFDEF WANT_UNIX
Bram Moolenaarf0ab01f2019-05-06 22:00:00 +0200100SCRIPT_UNIX = test10.out test27.out test49.out
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000101.ENDIF
102
103.IFDEF WANT_WIN
Bram Moolenaarcada7892018-01-31 19:30:24 +0100104SCRIPT_WIN = test52.out
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000105.ENDIF
106
107.IFDEF WANT_SPELL
Bram Moolenaard2c061d2017-06-22 21:42:49 +0200108SCRIPT_SPELL = test59.out
Bram Moolenaar071d4272004-06-13 20:20:40 +0000109.ENDIF
110
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200111.IFDEF WANT_MZSCH
112SCRIPT_MZSCH = test70.out
113.ENDIF
114
Bram Moolenaar4ff48142018-06-30 21:50:25 +0200115.IFDEF HAVE_ODS5
116SCRIPT_ODS5 = test102.out
117.ENDIF
Bram Moolenaar206f0112014-03-12 16:51:55 +0100118
Bram Moolenaar071d4272004-06-13 20:20:40 +0000119.IFDEF HAVE_GDIFF
120SCRIPT_GDIFF = test47.out
121.ENDIF
122
Bram Moolenaar206f0112014-03-12 16:51:55 +0100123.IFDEF HAVE_PYTHON
124SCRIPT_PYTHON = test86.out test87.out
125.ENDIF
126
Bram Moolenaar071d4272004-06-13 20:20:40 +0000127.in.out :
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200128 -@ !clean up before doing the test
129 -@ if "''F$SEARCH("test.out.*")'" .NES. "" then delete/noconfirm/nolog test.out.*
130 -@ if "''F$SEARCH("$*.out.*")'" .NES. "" then delete/noconfirm/nolog $*.out.*
Bram Moolenaar206f0112014-03-12 16:51:55 +0100131 -@ ! define TMP if not set - some tests use it
132 -@ if "''F$TRNLNM("TMP")'" .EQS. "" then define/nolog TMP []
Bram Moolenaar071d4272004-06-13 20:20:40 +0000133 -@ write sys$output " "
134 -@ write sys$output "-----------------------------------------------"
135 -@ write sys$output " "$*" "
136 -@ write sys$output "-----------------------------------------------"
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200137 -@ !run the test
Bram Moolenaarde5e2c22016-11-04 20:35:31 +0100138 -@ create/term/wait/nodetach mcr $(VIMPROG) $(GUI_OPTION) -u vms.vim --noplugin -s dotest.in $*.in
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200139 -@ !analyse the result
140 -@ directory /size/date test.out
141 -@ if "''F$SEARCH("test.out.*")'" .NES. "" then rename/nolog test.out $*.out
142 -@ if "''F$SEARCH("$*.out.*")'" .NES. "" then differences /par $*.out $*.ok;
143 -@ !clean up after the test
Bram Moolenaar071d4272004-06-13 20:20:40 +0000144 -@ if "''F$SEARCH("Xdotest.*")'" .NES. "" then delete/noconfirm/nolog Xdotest.*.*
Bram Moolenaar206f0112014-03-12 16:51:55 +0100145 -@ if "''F$SEARCH("Xtest.*")'" .NES. "" then delete/noconfirm/nolog Xtest.*.*
Bram Moolenaar071d4272004-06-13 20:20:40 +0000146
Bram Moolenaar69ea5872019-04-25 20:29:00 +0200147all : clean nolog $(START_WITH) $(SCRIPT) $(SCRIPT_GUI) $(SCRIPT_UNIX) $(SCRIPT_WIN) $(SCRIPT_SPELL) $(SCRIPT_ODS5) \
Bram Moolenaar430dc5d2017-11-02 21:04:47 +0100148 $(SCRIPT_GDIFF) $(SCRIPT_MZSCH) $(SCRIPT_LUA) $(SCRIPT_PYTHON) nolog
Bram Moolenaar071d4272004-06-13 20:20:40 +0000149 -@ write sys$output " "
150 -@ write sys$output "-----------------------------------------------"
151 -@ write sys$output " All done"
152 -@ write sys$output "-----------------------------------------------"
153 -@ deassign sys$output
154 -@ delete/noconfirm/nolog x*.*.*
155 -@ type test.log
156
157nolog :
158 -@ define sys$output test.log
159 -@ write sys$output "-----------------------------------------------"
160 -@ write sys$output " Standard VIM test cases"
161 -@ write sys$output "-----------------------------------------------"
162 -@ write sys$output " OpenVMS version: ''F$GETSYI("VERSION")'"
163 -@ write sys$output " Vim version:"
164 -@ mcr $(VIMPROG) --version
165 -@ write sys$output " Test date:"
166 -@ show time
167 -@ write sys$output "-----------------------------------------------"
168 -@ write sys$output " Test results:"
169 -@ write sys$output "-----------------------------------------------"
170 -@ write sys$output "MAKE_VMS.MMS options:"
Bram Moolenaar206f0112014-03-12 16:51:55 +0100171 -@ write sys$output " WANT_GUI = ""$(WANT_GUI)"" "
172 -@ write sys$output " WANT_UNIX = ""$(WANT_UNIX)"" "
173 -@ write sys$output " WANT_WIN = ""$(WANT_WIN)"" "
174 -@ write sys$output " WANT_SPELL = ""$(WANT_SPELL)"" "
175 -@ write sys$output " WANT_MZSCH = ""$(WANT_MZSCH)"" "
176 -@ write sys$output " HAVE_ODS5 = ""$(HAVE_ODS5)"" "
177 -@ write sys$output " HAVE_GZIP = ""$(HAVE_GZIP)"" "
178 -@ write sys$output " HAVE_GDIFF = ""$(HAVE_GDIFF)"" "
Bram Moolenaar206f0112014-03-12 16:51:55 +0100179 -@ write sys$output " HAVE_ICONV = ""$(HAVE_ICONV)"" "
180 -@ write sys$output " HAVE_LUA = ""$(HAVE_LUA)"" "
181 -@ write sys$output " HAVE_PYTHON= ""$(HAVE_PYTHON)"" "
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200182 -@ write sys$output "Default vimrc file is VMS.VIM:"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000183 -@ write sys$output "-----------------------------------------------"
184 -@ type VMS.VIM
185
186clean :
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200187 -@ if "''F$SEARCH("*.out")'" .NES. "" then delete/noconfirm/nolog *.out.*
188 -@ if "''F$SEARCH("test.log")'" .NES. "" then delete/noconfirm/nolog test.log.*
189 -@ if "''F$SEARCH("test.ok")'" .NES. "" then delete/noconfirm/nolog test.ok.*
190 -@ if "''F$SEARCH("Xdotest.*")'" .NES. "" then delete/noconfirm/nolog Xdotest.*.*
Bram Moolenaar206f0112014-03-12 16:51:55 +0100191 -@ if "''F$SEARCH("Xtest*.*")'" .NES. "" then delete/noconfirm/nolog Xtest*.*.*
192 -@ if "''F$SEARCH("XX*.*")'" .NES. "" then delete/noconfirm/nolog XX*.*.*
193 -@ if "''F$SEARCH("_un_*.*")'" .NES. "" then delete/noconfirm/nolog _un_*.*.*
Bram Moolenaarf878bcf2010-07-30 22:29:41 +0200194 -@ if "''F$SEARCH("*.*_sw*")'" .NES. "" then delete/noconfirm/nolog *.*_sw*.*
195 -@ if "''F$SEARCH("*.failed")'" .NES. "" then delete/noconfirm/nolog *.failed.*
196 -@ if "''F$SEARCH("*.rej")'" .NES. "" then delete/noconfirm/nolog *.rej.*
197 -@ if "''F$SEARCH("tiny.vim")'" .NES. "" then delete/noconfirm/nolog tiny.vim.*
198 -@ if "''F$SEARCH("small.vim")'" .NES. "" then delete/noconfirm/nolog small.vim.*
199 -@ if "''F$SEARCH("mbyte.vim")'" .NES. "" then delete/noconfirm/nolog mbyte.vim.*
200 -@ if "''F$SEARCH("mzscheme.vim")'" .NES. "" then delete/noconfirm/nolog mzscheme.vim.*
201 -@ if "''F$SEARCH("viminfo.*")'" .NES. "" then delete/noconfirm/nolog viminfo.*.*
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000202