blob: 6f951fb96b861157a15079972917bbb0111df55f [file] [log] [blame]
Bram Moolenaaredf3f972016-08-29 22:49:24 +02001/* vi:set ts=8 sts=4 sw=4 noet:
Bram Moolenaar071d4272004-06-13 20:20:40 +00002 *
3 * VIM - Vi IMproved by Bram Moolenaar
4 *
5 * Do ":help uganda" in Vim to read copying and usage conditions.
6 * Do ":help credits" in Vim to see a list of people who contributed.
7 */
8
9/*
10 * Amiga Machine-dependent things
11 */
12
13#define CASE_INSENSITIVE_FILENAME /* ignore case when comparing file names */
14#define SPACE_IN_FILENAME
15#define USE_FNAME_CASE /* adjust case of file names */
16#define USE_TERM_CONSOLE
17#define HAVE_AVAIL_MEM
18
19#ifndef HAVE_CONFIG_H
Bram Moolenaar5a6404c2006-11-01 17:12:57 +000020# if defined(AZTEC_C) || defined(__amigaos4__)
Bram Moolenaar071d4272004-06-13 20:20:40 +000021# define HAVE_STAT_H
22# endif
23# define HAVE_STDLIB_H
24# define HAVE_STRING_H
25# define HAVE_FCNTL_H
26# define HAVE_STRCSPN
27# define HAVE_STRICMP
28# define HAVE_STRNICMP
29# define HAVE_STRFTIME /* guessed */
30# define HAVE_SETENV
31# define HAVE_MEMSET
32# define HAVE_QSORT
33# if defined(__DATE__) && defined(__TIME__)
34# define HAVE_DATE_TIME
35# endif
36
Bram Moolenaar071d4272004-06-13 20:20:40 +000037#endif /* HAVE_CONFIG_H */
38
Bram Moolenaar5a6404c2006-11-01 17:12:57 +000039#ifndef DFLT_ERRORFILE
40# define DFLT_ERRORFILE "AztecC.Err" /* Should this change? */
41#endif
42
43#ifndef DFLT_RUNTIMEPATH
44# define DFLT_RUNTIMEPATH "home:vimfiles,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,home:vimfiles/after"
45#endif
Bram Moolenaar07268702018-03-01 21:57:32 +010046#ifndef CLEAN_RUNTIMEPATH
47# define CLEAN_RUNTIMEPATH "$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after"
48#endif
Bram Moolenaar5a6404c2006-11-01 17:12:57 +000049
50#ifndef BASENAMELEN
51# define BASENAMELEN 26 /* Amiga */
52#endif
53
54#ifndef TEMPNAME
55# define TEMPNAME "t:v?XXXXXX"
56# define TEMPNAMELEN 12
57#endif
58
Bram Moolenaar82881492012-11-20 16:53:39 +010059/* cproto fails on missing include files */
60#ifndef PROTO
61
Bram Moolenaar071d4272004-06-13 20:20:40 +000062#include <exec/types.h>
63#include <libraries/dos.h>
64#include <libraries/dosextens.h>
65
66/* Currently, all Amiga compilers except AZTEC C have these... */
67#ifndef AZTEC_C
68# include <proto/exec.h>
69# include <proto/dos.h>
70# include <proto/intuition.h>
71#endif
72
Bram Moolenaar82881492012-11-20 16:53:39 +010073#endif /* PROTO */
74
Bram Moolenaar071d4272004-06-13 20:20:40 +000075#define FNAME_ILLEGAL ";*?`#%" /* illegal characters in a file name */
76
77/*
78 * Manx doesn't have off_t, define it here.
79 */
80#ifdef AZTEC_C
81typedef long off_t;
82#endif
83
84#ifdef LATTICE
85# define USE_TMPNAM /* use tmpnam() instead of mktemp() */
86#endif
87
88#ifdef __GNUC__
89# include <sys/stat.h>
90# include <unistd.h>
Bram Moolenaar8531dc62019-07-01 22:28:20 +020091# include <limits.h>
92# include <errno.h>
Bram Moolenaar8531dc62019-07-01 22:28:20 +020093# include <dirent.h>
Bram Moolenaar071d4272004-06-13 20:20:40 +000094#endif
95
Bram Moolenaar80edda12019-07-03 22:53:06 +020096#include <time.h> // for strftime() and others
97
Bram Moolenaar82881492012-11-20 16:53:39 +010098#ifndef PROTO
Bram Moolenaar071d4272004-06-13 20:20:40 +000099/*
100 * arpbase.h must be included before functions.h
101 */
102#ifdef FEAT_ARP
103# include <libraries/arpbase.h>
104#endif
105
Bram Moolenaar82881492012-11-20 16:53:39 +0100106#endif /* PROTO */
107
Bram Moolenaar071d4272004-06-13 20:20:40 +0000108/*
109 * This won't be needed if you have a version of Lattice 4.01 without broken
110 * break signal handling.
111 */
112#include <signal.h>
113
114/*
115 * Names for the EXRC, HELP and temporary files.
116 * Some of these may have been defined in the makefile.
117 */
118#ifndef SYS_VIMRC_FILE
119# define SYS_VIMRC_FILE "$VIM/vimrc"
120#endif
121#ifndef SYS_GVIMRC_FILE
122# define SYS_GVIMRC_FILE "$VIM/gvimrc"
123#endif
124#ifndef SYS_MENU_FILE
125# define SYS_MENU_FILE "$VIMRUNTIME/menu.vim"
126#endif
127#ifndef DFLT_HELPFILE
128# define DFLT_HELPFILE "$VIMRUNTIME/doc/help.txt"
129#endif
130#ifndef FILETYPE_FILE
131# define FILETYPE_FILE "filetype.vim"
132#endif
133#ifndef FTPLUGIN_FILE
134# define FTPLUGIN_FILE "ftplugin.vim"
135#endif
136#ifndef INDENT_FILE
137# define INDENT_FILE "indent.vim"
138#endif
139#ifndef FTOFF_FILE
140# define FTOFF_FILE "ftoff.vim"
141#endif
142#ifndef FTPLUGOF_FILE
143# define FTPLUGOF_FILE "ftplugof.vim"
144#endif
145#ifndef INDOFF_FILE
146# define INDOFF_FILE "indoff.vim"
147#endif
148#ifndef SYNTAX_FNAME
149# define SYNTAX_FNAME "$VIMRUNTIME/syntax/%s.vim"
150#endif
151
152#ifndef USR_EXRC_FILE
153# define USR_EXRC_FILE "s:.exrc"
154#endif
155#ifndef USR_EXRC_FILE2
156# define USR_EXRC_FILE2 "home:.exrc"
157#endif
158
159#ifndef USR_VIMRC_FILE
160# define USR_VIMRC_FILE "s:.vimrc"
161#endif
162#ifndef USR_VIMRC_FILE2
163# define USR_VIMRC_FILE2 "home:.vimrc"
164#endif
165#ifndef USR_VIMRC_FILE3
Bram Moolenaar22971aa2013-06-12 20:35:58 +0200166# define USR_VIMRC_FILE3 "home:vimfiles:vimrc"
167#endif
168#ifndef USR_VIMRC_FILE4
169# define USR_VIMRC_FILE4 "$VIM/.vimrc"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000170#endif
Bram Moolenaar8c08b5b2016-07-28 22:24:15 +0200171#ifndef VIM_DEFAULTS_FILE
172# define VIM_DEFAULTS_FILE "$VIMRUNTIME/defaults.vim"
173#endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000174#ifndef EVIM_FILE
175# define EVIM_FILE "$VIMRUNTIME/evim.vim"
176#endif
177
178#ifndef USR_GVIMRC_FILE
179# define USR_GVIMRC_FILE "s:.gvimrc"
180#endif
181#ifndef USR_GVIMRC_FILE2
182# define USR_GVIMRC_FILE2 "home:.gvimrc"
183#endif
184#ifndef USR_GVIMRC_FILE3
Bram Moolenaar22971aa2013-06-12 20:35:58 +0200185# define USR_GVIMRC_FILE3 "home:vimfiles:gvimrc"
186#endif
187#ifndef USR_GVIMRC_FILE4
188# define USR_GVIMRC_FILE4 "$VIM/.gvimrc"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000189#endif
190
191#ifdef FEAT_VIMINFO
Bram Moolenaar5a6404c2006-11-01 17:12:57 +0000192# ifndef VIMINFO_FILE
193# define VIMINFO_FILE "s:.viminfo"
194# endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000195#endif /* FEAT_VIMINFO */
196
197#ifndef EXRC_FILE
198# define EXRC_FILE ".exrc"
199#endif
200
201#ifndef VIMRC_FILE
202# define VIMRC_FILE ".vimrc"
203#endif
204
205#ifndef GVIMRC_FILE
206# define GVIMRC_FILE ".gvimrc"
207#endif
208
209#ifndef DFLT_BDIR
210# define DFLT_BDIR ".,t:" /* default for 'backupdir' */
211#endif
212
213#ifndef DFLT_DIR
214# define DFLT_DIR ".,t:" /* default for 'directory' */
215#endif
216
217#ifndef DFLT_VDIR
218# define DFLT_VDIR "$VIM/vimfiles/view" /* default for 'viewdir' */
219#endif
220
221#ifndef DFLT_MAXMEM
222# define DFLT_MAXMEM 256 /* use up to 256Kbyte for buffer */
223#endif
224#ifndef DFLT_MAXMEMTOT
225# define DFLT_MAXMEMTOT 0 /* decide in set_init */
226#endif
227
228#if defined(SASC)
229int setenv(const char *, const char *);
230#endif
231
232#define mch_remove(x) remove((char *)(x))
233#define mch_rename(src, dst) rename(src, dst)
234#define mch_chdir(s) chdir(s)
235#define vim_mkdir(x, y) mch_mkdir(x)