defines.o9 revision 161475
1200581Srdivacky/*
2200581Srdivacky * Copyright (C) 1984-2004  Mark Nudelman
3200581Srdivacky *
4200581Srdivacky * You may distribute under the terms of either the GNU General Public
5200581Srdivacky * License or the Less License, as specified in the README file.
6200581Srdivacky *
7200581Srdivacky * For more information about less, or for information on how to 
8200581Srdivacky * contact the author, see the README file.
9200581Srdivacky */
10200581Srdivacky
11200581Srdivacky
12200581Srdivacky/* OS/9 definition file for less.  */
13200581Srdivacky/*
14200581Srdivacky * This file has 2 sections:
15200581Srdivacky * User preferences.
16249423Sdim * Settings always true for OS-9 systems. 
17249423Sdim */
18200581Srdivacky
19200581Srdivacky/* User preferences.  */
20200581Srdivacky
21207618Srdivacky/*
22207618Srdivacky * SECURE is 1 if you wish to disable a bunch of features in order to
23200581Srdivacky * be safe to run by unprivileged users.
24200581Srdivacky */
25200581Srdivacky#define	SECURE		0
26249423Sdim
27249423Sdim/*
28280031Sdim * SHELL_ESCAPE is 1 if you wish to allow shell escapes.
29208599Srdivacky * (This is possible only if your system supplies the system() function.)
30200581Srdivacky */
31200581Srdivacky#define	SHELL_ESCAPE	(!SECURE)
32276479Sdim
33276479Sdim/*
34200581Srdivacky * EXAMINE is 1 if you wish to allow examining files by name from within less.
35200581Srdivacky */
36200581Srdivacky#define	EXAMINE		(!SECURE)
37200581Srdivacky
38200581Srdivacky/*
39200581Srdivacky * TAB_COMPLETE_FILENAME is 1 if you wish to allow the TAB key
40200581Srdivacky * to complete filenames at prompts.
41276479Sdim */
42280031Sdim#define	TAB_COMPLETE_FILENAME	1
43200581Srdivacky
44200581Srdivacky/*
45200581Srdivacky * CMD_HISTORY is 1 if you wish to allow keys to cycle through
46200581Srdivacky * previous commands at prompts.
47239462Sdim */
48200581Srdivacky#define	CMD_HISTORY	1
49200581Srdivacky
50200581Srdivacky/*
51200581Srdivacky * HILITE_SEARCH is 1 if you wish to have search targets to be 
52200581Srdivacky * displayed in standout mode.
53276479Sdim */
54200581Srdivacky#define	HILITE_SEARCH	1
55200581Srdivacky
56200581Srdivacky/*
57200581Srdivacky * EDITOR is 1 if you wish to allow editor invocation (the "v" command).
58200581Srdivacky * (This is possible only if your system supplies the system() function.)
59200581Srdivacky * EDIT_PGM is the name of the (default) editor to be invoked.
60200581Srdivacky */
61200581Srdivacky#define	EDITOR		(!SECURE)
62200581Srdivacky#define	EDIT_PGM	"umacs"
63200581Srdivacky
64200581Srdivacky/*
65200581Srdivacky * TAGS is 1 if you wish to support tag files.
66200581Srdivacky */
67200581Srdivacky#define	TAGS		(!SECURE)
68200581Srdivacky
69200581Srdivacky/*
70200581Srdivacky * USERFILE is 1 if you wish to allow a .less file to specify 
71200581Srdivacky * user-defined key bindings.
72200581Srdivacky */
73200581Srdivacky#define	USERFILE	(!SECURE)
74200581Srdivacky
75200581Srdivacky/*
76200581Srdivacky * GLOB is 1 if you wish to have shell metacharacters expanded in filenames.
77200581Srdivacky * This will generally work if your system provides the "popen" function
78200581Srdivacky * and the "echo" shell command.
79200581Srdivacky */
80200581Srdivacky#define	GLOB		(!SECURE)
81200581Srdivacky
82261991Sdim/*
83200581Srdivacky * PIPEC is 1 if you wish to have the "|" command
84200581Srdivacky * which allows the user to pipe data into a shell command.
85200581Srdivacky */
86234353Sdim#define	PIPEC		(!SECURE)
87203954Srdivacky
88200581Srdivacky/*
89200581Srdivacky * LOGFILE is 1 if you wish to allow the -l option (to create log files).
90200581Srdivacky */
91200581Srdivacky#define	LOGFILE		(!SECURE)
92200581Srdivacky
93203954Srdivacky/*
94200581Srdivacky * GNU_OPTIONS is 1 if you wish to support the GNU-style command
95200581Srdivacky * line options --help and --version.
96200581Srdivacky */
97200581Srdivacky#define	GNU_OPTIONS	1
98200581Srdivacky
99200581Srdivacky/*
100200581Srdivacky * ONLY_RETURN is 1 if you want RETURN to be the only input which
101200581Srdivacky * will continue past an error message.
102200581Srdivacky * Otherwise, any key will continue past an error message.
103200581Srdivacky */
104200581Srdivacky#define	ONLY_RETURN	0
105200581Srdivacky
106200581Srdivacky/*
107200581Srdivacky * LESSKEYFILE is the filename of the default lesskey output file 
108200581Srdivacky * (in the HOME directory).
109200581Srdivacky * LESSKEYFILE_SYS is the filename of the system-wide lesskey output file.
110200581Srdivacky * DEF_LESSKEYINFILE is the filename of the default lesskey input 
111200581Srdivacky * (in the HOME directory).
112200581Srdivacky * LESSHISTFILE is the filename of the history file
113200581Srdivacky * (in the HOME directory).
114249423Sdim */
115200581Srdivacky#define	LESSKEYFILE		".less"
116200581Srdivacky#define	LESSKEYFILE_SYS		"/.sysless"
117208599Srdivacky#define	DEF_LESSKEYINFILE	".lesskey"
118208599Srdivacky#define LESSHISTFILE		".lesshst"
119200581Srdivacky
120206124Srdivacky
121200581Srdivacky/* Settings always true for OS-9.  */
122207618Srdivacky
123200581Srdivacky/* This is not needed; it is defined by the compiler. */
124200581Srdivacky/* #define _OSK 1 */
125200581Srdivacky#define OS2 		0
126200581Srdivacky#define MSDOS_COMPILER	0
127200581Srdivacky
128200581Srdivacky/*
129200581Srdivacky * Pathname separator character.
130200581Srdivacky */
131200581Srdivacky#define	PATHNAME_SEP	"/"
132200581Srdivacky
133200581Srdivacky/*
134200581Srdivacky * HAVE_SYS_TYPES_H is 1 if your system has <sys/types.h>.
135200581Srdivacky */
136200581Srdivacky#define HAVE_SYS_TYPES_H 0
137200581Srdivacky
138200581Srdivacky/*
139200581Srdivacky * Define if you have the <sgstat.h> header file.
140200581Srdivacky */
141200581Srdivacky#define HAVE_SGSTAT_H	1
142200581Srdivacky
143200581Srdivacky/*
144200581Srdivacky * HAVE_PERROR is 1 if your system has the perror() call.
145207618Srdivacky * (Actually, if it has sys_errlist, sys_nerr and errno.)
146200581Srdivacky */
147200581Srdivacky#if _OSK_MWC32
148200581Srdivacky#define	HAVE_PERROR	0
149200581Srdivacky#else
150200581Srdivacky#define	HAVE_PERROR	1
151203954Srdivacky#endif
152200581Srdivacky
153200581Srdivacky/*
154200581Srdivacky * HAVE_TIME is 1 if your system has the time() call.
155200581Srdivacky */
156200581Srdivacky#define	HAVE_TIME	1
157200581Srdivacky
158200581Srdivacky/*
159200581Srdivacky * HAVE_SHELL is 1 if your system supports a SHELL command interpreter.
160200581Srdivacky */
161200581Srdivacky#define	HAVE_SHELL 0
162200581Srdivacky
163200581Srdivacky/*
164200581Srdivacky * Default shell metacharacters and meta-escape character.
165200581Srdivacky */
166200581Srdivacky#define DEF_METACHARS   "; \t\n'\"()<>|&^`#\\"
167200581Srdivacky#define DEF_METAESCAPE  "\\"
168200581Srdivacky
169200581Srdivacky/* 
170200581Srdivacky * HAVE_DUP is 1 if your system has the dup() call.
171200581Srdivacky */
172200581Srdivacky#define	HAVE_DUP 0
173200581Srdivacky
174200581Srdivacky/*
175200581Srdivacky * Sizes of various buffers.
176200581Srdivacky */
177200581Srdivacky#define	CMDBUF_SIZE	512	/* Buffer for multichar commands */
178200581Srdivacky#define	UNGOT_SIZE	100	/* Max chars to unget() */
179200581Srdivacky#define	LINEBUF_SIZE	1024	/* Max size of line in input file */
180200581Srdivacky#define	OUTBUF_SIZE	1024	/* Output buffer */
181200581Srdivacky#define	PROMPT_SIZE	200	/* Max size of prompt string */
182200581Srdivacky#define	TERMBUF_SIZE	2048	/* Termcap buffer for tgetent */
183200581Srdivacky#define	TERMSBUF_SIZE	1024	/* Buffer to hold termcap strings */
184200581Srdivacky#define	TAGLINE_SIZE	512	/* Max size of line in tags file */
185200581Srdivacky#define	TABSTOP_MAX	32	/* Max number of custom tab stops */
186200581Srdivacky
187234353Sdim/* Define to `long' if <sys/types.h> doesn't define.  */
188249423Sdim#define off_t long
189249423Sdim
190200581Srdivacky/* Define if you need to in order for stat and other things to work.  */
191200581Srdivacky#define _POSIX_SOURCE 0
192200581Srdivacky
193249423Sdim/* Define as the return type of signal handlers (int or void).  */
194200581Srdivacky#if _OSK_MWC32
195200581Srdivacky#define RETSIGTYPE int
196200581Srdivacky#else
197200581Srdivacky#define RETSIGTYPE void
198200581Srdivacky#endif
199200581Srdivacky
200200581Srdivacky
201200581Srdivacky/*
202200581Srdivacky * Regular expression library.
203200581Srdivacky * Define exactly one of the following to be 1:
204200581Srdivacky * HAVE_POSIX_REGCOMP: POSIX regcomp() and regex.h
205202375Srdivacky * HAVE_RE_COMP: BSD re_comp()
206200581Srdivacky * HAVE_REGCMP: System V regcmp()
207200581Srdivacky * HAVE_V8_REGCOMP: Henry Spencer V8 regcomp() and regexp.h
208200581Srdivacky * NO_REGEX: pattern matching is supported, but without metacharacters.
209200581Srdivacky */
210200581Srdivacky#define HAVE_POSIX_REGCOMP 0
211200581Srdivacky#define HAVE_RE_COMP 0
212200581Srdivacky#define HAVE_REGCMP 0
213200581Srdivacky#define HAVE_V8_REGCOMP 1
214200581Srdivacky#define NO_REGEX 0
215200581Srdivacky#define HAVE_REGEXEC2 1
216200581Srdivacky
217200581Srdivacky/* Define HAVE_VOID if your compiler supports the "void" type. */
218200581Srdivacky#define HAVE_VOID 1
219200581Srdivacky
220200581Srdivacky/* Define HAVE_CONST if your compiler supports the "const" modifier. */
221200581Srdivacky#define HAVE_CONST 0
222200581Srdivacky
223200581Srdivacky/* Define HAVE_TIME_T if your system supports the "time_t" type. */
224200581Srdivacky#define HAVE_TIME_T 1
225203954Srdivacky
226200581Srdivacky/* Define HAVE_STRERROR if you have the strerror() function. */
227200581Srdivacky#define HAVE_STRERROR 0
228200581Srdivacky
229200581Srdivacky/* Define HAVE_FILENO if you have the fileno() macro. */
230200581Srdivacky#define HAVE_FILENO 1
231200581Srdivacky
232200581Srdivacky/* Define HAVE_ERRNO if you have the errno variable */
233200581Srdivacky/* Define MUST_DEFINE_ERRNO if you have errno but it is not define 
234200581Srdivacky * in errno.h */
235208599Srdivacky#define HAVE_ERRNO 1
236208599Srdivacky#define MUST_DEFINE_ERRNO 0
237208599Srdivacky
238208599Srdivacky/* Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable */
239208599Srdivacky#define HAVE_SYS_ERRLIST 0
240208599Srdivacky
241208599Srdivacky/* Define HAVE_OSPEED if your termcap library has the ospeed variable */
242208599Srdivacky/* Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined
243208599Srdivacky * in termcap.h. */
244200581Srdivacky#define HAVE_OSPEED 0
245208599Srdivacky#define MUST_DEFINE_OSPEED 0
246208599Srdivacky
247208599Srdivacky/* Define HAVE_LOCALE if you have locale.h and setlocale. */
248207618Srdivacky#define HAVE_LOCALE 0
249239462Sdim
250239462Sdim/* Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr */
251239462Sdim#define HAVE_TERMIOS_FUNCS 0
252239462Sdim
253239462Sdim/* Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower */
254239462Sdim#define HAVE_UPPER_LOWER 1
255239462Sdim
256239462Sdim/* Define if you have the _setjmp function.  */
257239462Sdim#define HAVE__SETJMP 1
258239462Sdim
259239462Sdim/* Define if you have the memcpy function.  */
260239462Sdim#define HAVE_MEMCPY 1
261239462Sdim
262239462Sdim/* Define if you have the popen function.  */
263239462Sdim#define HAVE_POPEN 1
264239462Sdim
265239462Sdim/* Define if you have the sigsetmask function.  */
266239462Sdim#define HAVE_SIGSETMASK 0
267239462Sdim
268239462Sdim/* Define if you have the sigprocmask function.  */
269208599Srdivacky#define HAVE_SIGPROCMASK	0
270208599Srdivacky
271208599Srdivacky/* Define if you have the sigset_t type and sigemptyset macro */
272208599Srdivacky#define HAVE_SIGSET_T	0
273207618Srdivacky#define HAVE_SIGEMPTYSET	0
274208599Srdivacky
275208599Srdivacky/* Define if you have the stat function.  */
276208599Srdivacky#define HAVE_STAT 0
277208599Srdivacky
278208599Srdivacky/* Define if you have the strchr function.  */
279208599Srdivacky#define HAVE_STRCHR 0
280208599Srdivacky
281200581Srdivacky/* Define if you have the system function.  */
282200581Srdivacky#define HAVE_SYSTEM 1
283208599Srdivacky
284208599Srdivacky/* Define if you have the snprintf function.  */
285208599Srdivacky#define HAVE_SNPRINTF	0
286208599Srdivacky
287208599Srdivacky/* Define if you have the <ctype.h> header file.  */
288208599Srdivacky#define HAVE_CTYPE_H 1
289208599Srdivacky
290208599Srdivacky/* Define if you have the <errno.h> header file.  */
291208599Srdivacky#define HAVE_ERRNO_H 1
292208599Srdivacky
293207618Srdivacky/* Define if you have the <fcntl.h> header file.  */
294207618Srdivacky#define HAVE_FCNTL_H 0
295208599Srdivacky
296208599Srdivacky/* Define if you have the <limits.h> header file.  */
297208599Srdivacky#define HAVE_LIMITS_H  0
298208599Srdivacky
299234353Sdim/* Define if you have the <stdio.h> header file.  */
300208599Srdivacky#define HAVE_STDIO_H 1
301208599Srdivacky
302208599Srdivacky/* Define if you have the <string.h> header file.  */
303208599Srdivacky#define HAVE_STRING_H 1
304200581Srdivacky
305200581Srdivacky/* Define if you have the <stdlib> header file. */
306208599Srdivacky#if _OSK_MWC32
307208599Srdivacky#define HAVE_STDLIB_H 0
308208599Srdivacky#else
309208599Srdivacky#define HAVE_STDLIB_H 1
310249423Sdim#endif
311207618Srdivacky
312200581Srdivacky/* Define if you have the <sys/ioctl.h> header file.  */
313208599Srdivacky#define HAVE_SYS_IOCTL_H 0
314208599Srdivacky
315208599Srdivacky/* Define if you have the <sys/ptem.h> header file.  */
316208599Srdivacky#define HAVE_SYS_PTEM_H 0
317208599Srdivacky
318276479Sdim/* Define if you have the <sys/stream.h> header file.  */
319200581Srdivacky#define HAVE_SYS_STREAM_H 0
320200581Srdivacky
321208599Srdivacky/* Define if you have the <termcap.h> header file.  */
322208599Srdivacky#define HAVE_TERMCAP_H 1
323208599Srdivacky
324208599Srdivacky/* Define if you have the <termio.h> header file.  */
325207618Srdivacky#define HAVE_TERMIO_H 0
326207618Srdivacky
327208599Srdivacky/* Define if you have the <termios.h> header file.  */
328208599Srdivacky#define HAVE_TERMIOS_H 0
329208599Srdivacky
330208599Srdivacky/* Define if you have the <time.h> header file.  */
331208599Srdivacky#define HAVE_TIME_H 1
332208599Srdivacky
333276479Sdim/* Define if you have the <unistd.h> header file.  */
334200581Srdivacky#define HAVE_UNISTD_H 0
335200581Srdivacky
336208599Srdivacky/* Define if you have the <values.h> header file.  */
337208599Srdivacky#define HAVE_VALUES_H 0
338208599Srdivacky