Aquire serializer before calling ioctl
[dragonfly.git] / contrib / less-381 / defines.ds
1 /*
2  * Copyright (C) 1984-2000  Mark Nudelman
3  *
4  * You may distribute under the terms of either the GNU General Public
5  * License or the Less License, as specified in the README file.
6  *
7  * For more information about less, or for information on how to 
8  * contact the author, see the README file.
9  */
10
11
12 /* DOS definition file for less.  */
13 /*
14  * This file has 2 sections:
15  * User preferences.
16  * Settings always true for MS-DOS systems. 
17  */
18 \f
19 /* User preferences.  */
20
21 /*
22  * SECURE is 1 if you wish to disable a bunch of features in order to
23  * be safe to run by unprivileged users.
24  */
25 #define SECURE          0
26
27 /*
28  * SHELL_ESCAPE is 1 if you wish to allow shell escapes.
29  * (This is possible only if your system supplies the system() function.)
30  */
31 #define SHELL_ESCAPE    (!SECURE)
32
33 /*
34  * EXAMINE is 1 if you wish to allow examining files by name from within less.
35  */
36 #define EXAMINE         (!SECURE)
37
38 /*
39  * TAB_COMPLETE_FILENAME is 1 if you wish to allow the TAB key
40  * to complete filenames at prompts.
41  */
42 #define TAB_COMPLETE_FILENAME   (!SECURE)
43
44 /*
45  * CMD_HISTORY is 1 if you wish to allow keys to cycle through
46  * previous commands at prompts.
47  */
48 #define CMD_HISTORY     1
49
50 /*
51  * HILITE_SEARCH is 1 if you wish to have search targets to be 
52  * displayed in standout mode.
53  */
54 #define HILITE_SEARCH   1
55
56 /*
57  * EDITOR is 1 if you wish to allow editor invocation (the "v" command).
58  * (This is possible only if your system supplies the system() function.)
59  * EDIT_PGM is the name of the (default) editor to be invoked.
60  */
61 #define EDITOR          (!SECURE)
62 #define EDIT_PGM        "vi"
63
64 /*
65  * TAGS is 1 if you wish to support tag files.
66  */
67 #define TAGS            (!SECURE)
68
69 /*
70  * USERFILE is 1 if you wish to allow a .less file to specify 
71  * user-defined key bindings.
72  */
73 #define USERFILE        (!SECURE)
74
75 /*
76  * GLOB is 1 if you wish to have shell metacharacters expanded in filenames.
77  * This will generally work if your system provides the "popen" function
78  * and the "echo" shell command.
79  */
80 #ifdef __DJGPP__
81 #define GLOB            (!SECURE)
82 #else
83 #define GLOB            0
84 #endif
85
86 /*
87  * PIPEC is 1 if you wish to have the "|" command
88  * which allows the user to pipe data into a shell command.
89  */
90 #ifdef __DJGPP__
91 #define PIPEC           (!SECURE)
92 #else
93 #define PIPEC           0
94 #endif
95
96 /*
97  * LOGFILE is 1 if you wish to allow the -l option (to create log files).
98  */
99 #define LOGFILE         (!SECURE)
100
101 /*
102  * GNU_OPTIONS is 1 if you wish to support the GNU-style command
103  * line options --help and --version.
104  */
105 #define GNU_OPTIONS     1
106
107 /*
108  * ONLY_RETURN is 1 if you want RETURN to be the only input which
109  * will continue past an error message.
110  * Otherwise, any key will continue past an error message.
111  */
112 #define ONLY_RETURN     0
113
114 /*
115  * LESSKEYFILE is the filename of the default lesskey output file 
116  * (in the HOME directory).
117  * LESSKEYFILE_SYS is the filename of the system-wide lesskey output file.
118  * DEF_LESSKEYINFILE is the filename of the default lesskey input 
119  * (in the HOME directory).
120  */
121 #define LESSKEYFILE             "_less"
122 #define LESSKEYFILE_SYS         "c:\\_sysless"
123 #define DEF_LESSKEYINFILE       "_lesskey"
124
125 \f
126 /* Settings always true for MS-DOS systems.  */
127
128 /*
129  * Define MSDOS_COMPILER if compiling for MS-DOS.
130  */
131 #ifdef __DJGPP__
132 #define MSDOS_COMPILER          DJGPPC
133 #else
134 #ifdef __BORLANDC__
135 #define MSDOS_COMPILER          BORLANDC
136 #else
137 #define MSDOS_COMPILER          MSOFTC
138 #endif
139 #endif
140
141 /*
142  * Pathname separator character.
143  */
144 #define PATHNAME_SEP    "\\"
145
146 /*
147  * HAVE_SYS_TYPES_H is 1 if your system has <sys/types.h>.
148  */
149 #define HAVE_SYS_TYPES_H        1
150
151 /*
152  * Define if you have the <sgstat.h> header file.
153  */
154 #define HAVE_SGSTAT_H   0
155
156 /*
157  * HAVE_PERROR is 1 if your system has the perror() call.
158  * (Actually, if it has sys_errlist, sys_nerr and errno.)
159  */
160 #define HAVE_PERROR     1
161
162 /*
163  * HAVE_TIME is 1 if your system has the time() call.
164  */
165 #define HAVE_TIME       1
166
167 /*
168  * HAVE_SHELL is 1 if your system supports a SHELL command interpreter.
169  */
170 #define HAVE_SHELL      0
171
172 /*
173  * Default shell metacharacters and meta-escape character.
174  */
175 #define DEF_METACHARS   "; *?\t\n'\"()<>|&"
176 #define DEF_METAESCAPE  ""
177
178 /* 
179  * HAVE_DUP is 1 if your system has the dup() call.
180  */
181 #define HAVE_DUP        1
182
183 /*
184  * Sizes of various buffers.
185  */
186 #define CMDBUF_SIZE     512     /* Buffer for multichar commands */
187 #define UNGOT_SIZE      100     /* Max chars to unget() */
188 #define LINEBUF_SIZE    1024    /* Max size of line in input file */
189 #define OUTBUF_SIZE     1024    /* Output buffer */
190 #define PROMPT_SIZE     200     /* Max size of prompt string */
191 #define TERMBUF_SIZE    2048    /* Termcap buffer for tgetent */
192 #define TERMSBUF_SIZE   1024    /* Buffer to hold termcap strings */
193 #define TAGLINE_SIZE    512     /* Max size of line in tags file */
194 #define TABSTOP_MAX     32      /* Max number of custom tab stops */
195
196 /* Define to `long' if <sys/types.h> doesn't define.  */
197 #if MSDOS_COMPILER==BORLANDC
198 #define off_t   long 
199 #endif
200
201 /* Define if you need to in order for stat and other things to work.  */
202 /* #undef _POSIX_SOURCE */
203
204 /* Define as the return type of signal handlers (int or void).  */
205 #define RETSIGTYPE void
206
207
208 /*
209  * Regular expression library.
210  * Define exactly one of the following to be 1:
211  * HAVE_POSIX_REGCOMP: POSIX regcomp() and regex.h
212  * HAVE_RE_COMP: BSD re_comp()
213  * HAVE_REGCMP: System V regcmp()
214  * HAVE_V8_REGCOMP: Henry Spencer V8 regcomp() and regexp.h
215  * NO_REGEX: pattern matching is supported, but without metacharacters.
216  */
217 /* #undef HAVE_POSIX_REGCOMP */
218 /* #undef HAVE_RE_COMP */
219 /* #undef HAVE_REGCMP */
220 /* #undef HAVE_V8_REGCOMP */
221 #if MSDOS_COMPILER==DJGPPC
222 #define HAVE_POSIX_REGCOMP 1
223 #else
224 #define NO_REGEX 1
225 #endif
226
227 /* Define HAVE_VOID if your compiler supports the "void" type. */
228 #define HAVE_VOID 1
229
230 /* Define HAVE_CONST if your compiler supports the "const" modifier. */
231 #define HAVE_CONST 1
232
233 /* Define HAVE_TIME_T if your system supports the "time_t" type. */
234 #define HAVE_TIME_T 1
235
236 /* Define HAVE_STRERROR if you have the strerror() function. */
237 #define HAVE_STRERROR 1
238
239 /* Define HAVE_FILENO if you have the fileno() macro. */
240 #define HAVE_FILENO 1
241
242 /* Define HAVE_ERRNO if you have the errno variable */
243 /* Define MUST_DEFINE_ERRNO if you have errno but it is not defined
244  * in errno.h */
245 #if MSDOS_COMPILER==MSOFTC || MSDOS_COMPILER==DJGPPC
246 #define HAVE_ERRNO 1
247 #define MUST_DEFINE_ERRNO 0
248 #else
249 #define HAVE_ERRNO 1
250 #define MUST_DEFINE_ERRNO 1
251 #endif
252
253 /* Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable */
254 #define HAVE_SYS_ERRLIST 1
255
256 /* Define HAVE_OSPEED if your termcap library has the ospeed variable */
257 /* Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined
258  * in termcap.h. */
259 #define HAVE_OSPEED 0
260 #define MUST_DEFINE_OSPEED 0
261
262 /* Define HAVE_LOCALE if you have locale.h and setlocale. */
263 #define HAVE_LOCALE 0
264
265 /* Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr */
266 #define HAVE_TERMIOS_FUNCS 0
267
268 /* Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower */
269 #define HAVE_UPPER_LOWER 1
270
271 /* Define if you have the _setjmp function.  */
272 #if MSDOS_COMPILER==MSOFTC || MSDOS_COMPILER==DJGPPC
273 #define HAVE__SETJMP    0
274 #else
275 #define HAVE__SETJMP    1
276 #endif
277
278 /* Define if you have the memcpy function.  */
279 #define HAVE_MEMCPY 1
280
281 /* Define if you have the popen function.  */
282 #if MSDOS_COMPILER==DJGPPC
283 #define HAVE_POPEN      1
284 #else
285 #define HAVE_POPEN      0
286 #endif
287
288 /* Define if you have the sigsetmask function.  */
289 #define HAVE_SIGSETMASK 0
290
291 /* Define if you have the sigprocmask function.  */
292 #define HAVE_SIGPROCMASK        0
293
294 /* Define if you have the sigset_t type and sigemptyset macro */
295 #define HAVE_SIGSET_T   0
296 #define HAVE_SIGEMPTYSET        0
297
298 /* Define if you have the stat function.  */
299 #define HAVE_STAT 1
300
301 /* Define if you have the strchr function.  */
302 #define HAVE_STRCHR 1
303
304 /* Define if you have the system function.  */
305 #define HAVE_SYSTEM     1
306
307 /* Define if you have the <ctype.h> header file.  */
308 #define HAVE_CTYPE_H 1
309
310 /* Define if you have the <errno.h> header file.  */
311 #define HAVE_ERRNO_H 1
312
313 /* Define if you have the <fcntl.h> header file.  */
314 #define HAVE_FCNTL_H 1
315
316 /* Define if you have the <limits.h> header file.  */
317 #define HAVE_LIMITS_H 1
318
319 /* Define if you have the <stdio.h> header file.  */
320 #define HAVE_STDIO_H 1
321
322 /* Define if you have the <stdlib> header file. */
323 #define HAVE_STDLIB_H 1
324
325 /* Define if you have the <string.h> header file.  */
326 #define HAVE_STRING_H 1
327
328 /* Define if you have the <sys/ioctl.h> header file.  */
329 #define HAVE_SYS_IOCTL_H 0
330
331 /* Define if you have the <sys/ptem.h> header file.  */
332 #define HAVE_SYS_PTEM_H 0
333
334 /* Define if you have the <sys/stream.h> header file.  */
335 #define HAVE_SYS_STREAM_H       0
336
337 /* Define if you have the <termcap.h> header file.  */
338 #define HAVE_TERMCAP_H  0
339
340 /* Define if you have the <termio.h> header file.  */
341 #define HAVE_TERMIO_H   0
342
343 /* Define if you have the <termios.h> header file.  */
344 #define HAVE_TERMIOS_H 0
345
346 /* Define if you have the <time.h> header file.  */
347 #define HAVE_TIME_H 1
348
349 /* Define if you have the <unistd.h> header file.  */
350 #if MSDOS_COMPILER==DJGPPC
351 #define HAVE_UNISTD_H 1
352 #else
353 #define HAVE_UNISTD_H 0
354 #endif
355
356 /* Define if you have the <values.h> header file.  */
357 #if MSDOS_COMPILER==MSOFTC
358 #define HAVE_VALUES_H 0
359 #else
360 #define HAVE_VALUES_H 1
361 #endif
362
363 #if MSDOS_COMPILER == MSOFTC && _MSC_VER >= 700
364 /*
365  * The names of these things changed in Microsoft C version 7.0.
366  */
367 #define videoconfig     _videoconfig
368 #define rccoord         _rccoord
369 #define O_RDONLY        _O_RDONLY
370 #define O_WRONLY        _O_WRONLY
371 #define O_APPEND        _O_APPEND
372 #define O_BINARY        _O_BINARY
373 #define O_TEXT          _O_TEXT
374 #define find_t          _find_t
375 #define stat            _stat
376 #define S_IFMT          _S_IFMT
377 #define S_IFDIR         _S_IFDIR
378 #define S_IFREG         _S_IFREG
379 #define dup             _dup
380 #define open            _open
381 #define lseek           _lseek
382 #define write           _write
383 #define creat           _creat
384 #define fstat           _fstat
385 #define isatty          _isatty
386 #define close           _close
387 #define read            _read
388 #define ungetch         _ungetch
389 #define kbhit           _kbhit
390 #define getch           _getch
391 #endif