]> CyberLeo.Net >> Repos - FreeBSD/releng/9.0.git/blob - contrib/less/configure.ac
Copy stable/9 to releng/9.0 as part of the FreeBSD 9.0-RELEASE release
[FreeBSD/releng/9.0.git] / contrib / less / configure.ac
1 # Process this file with autoconf to produce a configure script.
2
3 # Copyright (C) 1984-2011  Mark Nudelman
4 #
5 # You may distribute under the terms of either the GNU General Public
6 # License or the Less License, as specified in the README file.
7 #
8 # For more information about less, or for information on how to 
9 # contact the author, see the README file.
10
11 # Autoconf initialization.
12 AC_INIT(less, 1)
13 AC_CONFIG_SRCDIR([forwback.c])
14 AC_CONFIG_HEADER([defines.h])
15
16 # Checks for programs.
17 AC_PROG_CC
18 AC_ISC_POSIX
19 AC_PROG_GCC_TRADITIONAL
20 AC_PROG_INSTALL
21
22 # Checks for compilation model.
23 AC_SYS_LARGEFILE
24
25 # Checks for general libraries.
26 AC_CHECK_LIB(tinfo, tgoto, [have_tinfo=yes], [have_tinfo=no])
27 AC_CHECK_LIB(xcurses, initscr, [have_xcurses=yes], [have_xcurses=no])
28 AC_CHECK_LIB(ncursesw, initscr, [have_ncursesw=yes], [have_ncursesw=no])
29 AC_CHECK_LIB(ncurses, initscr, [have_ncurses=yes], [have_ncurses=no])
30 AC_CHECK_LIB(curses, initscr, [have_curses=yes], [have_curses=no])
31 AC_CHECK_LIB(termcap, tgetent, [have_termcap=yes], [have_termcap=no])
32 AC_CHECK_LIB(termlib, tgetent, [have_termlib=yes], [have_termlib=no])
33 # Regular expressions (regcmp) are in -lgen on Solaris 2,
34 # and in -lintl on SCO Unix.
35 AC_CHECK_LIB(gen, regcmp)
36 AC_CHECK_LIB(intl, regcmp)
37 AC_CHECK_LIB(PW, regcmp)
38
39 # Checks for terminal libraries
40 AC_MSG_CHECKING([for working terminal libraries])
41 TERMLIBS=
42
43 # Check for systems where curses is broken.
44 curses_broken=0
45 if test x`uname -s` = "xHP-UX" >/dev/null 2>&1; then
46 if test x`uname -r` = "xB.11.00" >/dev/null 2>&1; then
47    curses_broken=1
48 fi
49 if test x`uname -r` = "xB.11.11" >/dev/null 2>&1; then
50    curses_broken=1
51 fi
52 fi
53
54 if test $curses_broken = 0; then
55
56 # -- Try tinfo.
57 if test "x$TERMLIBS" = x; then
58   if test $have_tinfo = yes; then
59     TERMLIBS="-ltinfo"
60     SAVE_LIBS=$LIBS
61     LIBS="$LIBS $TERMLIBS"
62     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
63       [termok=yes], [termok=no])
64     LIBS=$SAVE_LIBS
65     if test $termok = no; then TERMLIBS=""; fi
66   fi
67 fi
68
69 # -- Try xcurses.
70 if test "x$TERMLIBS" = x; then
71   if test $have_xcurses = yes; then
72     TERMLIBS="-lxcurses"
73     SAVE_LIBS=$LIBS
74     LIBS="$LIBS $TERMLIBS"
75     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
76       [termok=yes], [termok=no])
77     LIBS=$SAVE_LIBS
78     if test $termok = no; then TERMLIBS=""; fi
79   fi
80 fi
81
82 # -- Try ncursesw.
83 if test "x$TERMLIBS" = x; then
84   if test $have_ncursesw = yes; then
85     TERMLIBS="-lncursesw"
86     SAVE_LIBS=$LIBS
87     LIBS="$LIBS $TERMLIBS"
88     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
89       [termok=yes], [termok=no])
90     LIBS=$SAVE_LIBS
91     if test $termok = no; then TERMLIBS=""; fi
92   fi
93 fi
94
95 # -- Try ncurses.
96 if test "x$TERMLIBS" = x; then
97   if test $have_ncurses = yes; then
98     TERMLIBS="-lncurses"
99     SAVE_LIBS=$LIBS
100     LIBS="$LIBS $TERMLIBS"
101     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
102       [termok=yes], [termok=no])
103     LIBS=$SAVE_LIBS
104     if test $termok = no; then TERMLIBS=""; fi
105   fi
106 fi
107
108 # -- Try curses.
109 if test "x$TERMLIBS" = x; then
110   if test $have_curses = yes; then
111     TERMLIBS="-lcurses"
112     SAVE_LIBS=$LIBS
113     LIBS="$LIBS $TERMLIBS"
114     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
115       [termok=yes], [termok=no])
116     LIBS=$SAVE_LIBS
117     if test $termok = no; then TERMLIBS=""; fi
118   fi
119 fi
120
121 # -- Try curses & termcap.
122 if test "x$TERMLIBS" = x; then
123   if test $have_curses = yes; then
124   if test $have_termcap = yes; then
125     TERMLIBS="-lcurses -ltermcap"
126     SAVE_LIBS=$LIBS
127     LIBS="$LIBS $TERMLIBS"
128     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
129       [termok=yes], [termok=no])
130     LIBS=$SAVE_LIBS
131     if test $termok = no; then TERMLIBS=""; fi
132   fi
133   fi
134 fi
135 fi
136
137 # -- Try termcap.
138 if test "x$TERMLIBS" = x; then
139   if test $have_termcap = yes; then
140     TERMLIBS="-ltermcap"
141     SAVE_LIBS=$LIBS
142     LIBS="$LIBS $TERMLIBS"
143     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
144       [termok=yes], [termok=no])
145     LIBS=$SAVE_LIBS
146     if test $termok = no; then TERMLIBS=""; fi
147   fi
148 fi
149
150 # -- Try termlib.
151 if test "x$TERMLIBS" = x; then
152   if test $have_termlib = yes; then
153     TERMLIBS="-lcurses -ltermlib"
154     SAVE_LIBS=$LIBS
155     LIBS="$LIBS $TERMLIBS"
156     AC_TRY_LINK(, [tgetent(0,0); tgetflag(0); tgetnum(0); tgetstr(0,0);],
157       [termok=yes], [termok=no])
158     LIBS=$SAVE_LIBS
159     if test $termok = no; then TERMLIBS=""; fi
160   fi
161 fi
162
163 if test "x$TERMLIBS" = x; then
164   AC_MSG_RESULT(Cannot find terminal libraries - configure failed)
165   exit 1
166 fi
167 AC_MSG_RESULT(using $TERMLIBS)
168 LIBS="$LIBS $TERMLIBS"
169
170 # Checks for header files.
171 AC_HEADER_STDC
172 AC_CHECK_HEADERS([ctype.h errno.h fcntl.h limits.h stdio.h stdlib.h string.h termcap.h termio.h termios.h time.h unistd.h values.h sys/ioctl.h sys/stream.h wctype.h])
173
174 # Checks for typedefs, structures, and compiler characteristics.
175 AC_HEADER_STAT
176 AC_C_CONST
177 AC_TYPE_OFF_T
178 AC_TYPE_SIZE_T
179 AC_HEADER_TIME
180
181 # Autoheader templates for symbols defined later by AC_DEFINE.
182 AH_TEMPLATE([HAVE_POSIX_REGCOMP],
183         [POSIX regcomp() and regex.h])
184 AH_TEMPLATE([HAVE_PCRE],
185         [PCRE (Perl-compatible regular expression) library])
186 AH_TEMPLATE([HAVE_RE_COMP],
187         [BSD re_comp()])
188 AH_TEMPLATE([HAVE_REGCMP],
189         [System V regcmp()])
190 AH_TEMPLATE([HAVE_V8_REGCOMP],
191         [Henry Spencer V8 regcomp() and regexp.h])
192 AH_TEMPLATE([NO_REGEX],
193         [pattern matching is supported, but without metacharacters.])
194 AH_TEMPLATE([HAVE_REGEXEC2],
195         [])
196 AH_TEMPLATE([HAVE_VOID],
197         [Define HAVE_VOID if your compiler supports the "void" type.])
198 AH_TEMPLATE([HAVE_FLOAT],
199         [Define HAVE_FLOAT if your compiler supports the "double" type.])
200 AH_TEMPLATE([HAVE_CONST],
201         [Define HAVE_CONST if your compiler supports the "const" modifier.])
202 AH_TEMPLATE([HAVE_STAT_INO],
203         [Define HAVE_STAT_INO if your struct stat has st_ino and st_dev.])
204 AH_TEMPLATE([HAVE_TIME_T],
205         [Define HAVE_TIME_T if your system supports the "time_t" type.])
206 AH_TEMPLATE([HAVE_STRERROR],
207         [Define HAVE_STRERROR if you have the strerror() function.])
208 AH_TEMPLATE([HAVE_FILENO],
209         [Define HAVE_FILENO if you have the fileno() macro.])
210 AH_TEMPLATE([HAVE_ERRNO],
211         [Define HAVE_ERRNO if you have the errno variable.])
212 AH_TEMPLATE([MUST_DEFINE_ERRNO],
213         [Define MUST_DEFINE_ERRNO if you have errno but it is not define in errno.h.])
214 AH_TEMPLATE([HAVE_SYS_ERRLIST],
215         [Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable.])
216 AH_TEMPLATE([HAVE_OSPEED],
217         [Define HAVE_OSPEED if your termcap library has the ospeed variable.])
218 AH_TEMPLATE([MUST_DEFINE_OSPEED],
219         [Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined in termcap.h.])
220 AH_TEMPLATE([HAVE_LOCALE],
221         [Define HAVE_LOCALE if you have locale.h and setlocale.])
222 AH_TEMPLATE([HAVE_TERMIOS_FUNCS],
223         [Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr.])
224 AH_TEMPLATE([HAVE_UPPER_LOWER],
225         [Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower.])
226 AH_TEMPLATE([HAVE_WCTYPE],
227         [Define HAVE_WCTYPE if you have iswupper, iswlower, towupper, towlower.])
228 AH_TEMPLATE([HAVE_SIGSET_T],
229         [Define HAVE_SIGSET_T you have the sigset_t type.])
230 AH_TEMPLATE([HAVE_SIGEMPTYSET],
231         [Define HAVE_SIGEMPTYSET if you have the sigemptyset macro.])
232 AH_TEMPLATE([EDIT_PGM],
233         [Define EDIT_PGM to your editor.])
234 AH_TEMPLATE([SECURE_COMPILE],
235         [Define SECURE_COMPILE=1 to build a secure version of less.])
236
237 # Checks for identifiers.
238 AC_TYPE_OFF_T
239 AC_MSG_CHECKING(for void)
240 AC_TRY_COMPILE(, [void *foo = 0;], 
241   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_VOID)], [AC_MSG_RESULT(no)])
242 AC_MSG_CHECKING(for const)
243 AC_TRY_COMPILE(, [const int foo = 0;], 
244   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_CONST)], [AC_MSG_RESULT(no)])
245 AC_MSG_CHECKING(for time_t)
246 AC_TRY_COMPILE([#include <time.h>], [time_t t = 0;],
247   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_TIME_T)], [AC_MSG_RESULT(no)])
248 AC_MSG_CHECKING(for st_ino in struct stat)
249 AC_TRY_COMPILE([#include <sys/types.h>
250 #include <sys/stat.h>],
251   [struct stat s; dev_t dev = s.st_dev; ino_t ino = s.st_ino;],
252   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_STAT_INO)], [AC_MSG_RESULT(no)])
253
254 # Checks for library functions.
255 AC_TYPE_SIGNAL
256 AC_CHECK_FUNCS([fsync popen _setjmp sigprocmask sigsetmask snprintf stat system fchmod])
257
258 # AC_CHECK_FUNCS may not work for inline functions, so test these separately.
259 AC_MSG_CHECKING(for memcpy)
260 AC_TRY_LINK([
261 #if HAVE_STRING_H
262 #include <string.h>
263 #endif], [memcpy(0,0,0);],
264   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_MEMCPY)], [AC_MSG_RESULT(no)])
265
266 AC_MSG_CHECKING(for strchr)
267 AC_TRY_LINK([
268 #if HAVE_STRING_H
269 #include <string.h>
270 #endif], [strchr("x",'x');],
271   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_STRCHR)], [AC_MSG_RESULT(no)])
272
273 AC_MSG_CHECKING(for strstr)
274 AC_TRY_LINK([
275 #if HAVE_STRING_H
276 #include <string.h>
277 #endif], [strstr("x","x");],
278   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_STRSTR)], [AC_MSG_RESULT(no)])
279
280 # Some systems have termios.h but not the corresponding functions.
281 AC_CHECK_FUNC(tcgetattr, AC_DEFINE(HAVE_TERMIOS_FUNCS))
282
283 AC_MSG_CHECKING(for fileno)
284 AC_TRY_LINK([
285 #if HAVE_STDIO_H
286 #include <stdio.h>
287 #endif], [static int x; x = fileno(stdin);],
288   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_FILENO)], [AC_MSG_RESULT(no)])
289
290 AC_MSG_CHECKING(for strerror)
291 AC_TRY_LINK([
292 #if HAVE_STDIO_H
293 #include <stdio.h>
294 #endif
295 #if HAVE_STRING_H
296 #include <string.h>
297 #endif
298 #if HAVE_ERRNO_H
299 #include <errno.h>
300 #endif], [static char *x; x = strerror(0);],
301   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_STRERROR)], [AC_MSG_RESULT(no)])
302
303 AC_MSG_CHECKING(for sys_errlist)
304 AC_TRY_LINK(, [extern char *sys_errlist[]; static char **x; x = sys_errlist;], 
305   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_SYS_ERRLIST)], [AC_MSG_RESULT(no)])
306
307 AC_CHECK_TYPES([sigset_t],,,[#include <signal.h>])
308
309 AC_MSG_CHECKING(for sigemptyset)
310 AC_TRY_LINK([
311 #include <signal.h>
312 ], [sigset_t s; sigemptyset(&s);],
313   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_SIGEMPTYSET)], [AC_MSG_RESULT(no)])
314
315 have_errno=no
316 AC_MSG_CHECKING(for errno)
317 AC_TRY_LINK([
318 #if HAVE_ERRNO_H
319 #include <errno.h>
320 #endif], [static int x; x = errno;], 
321   [AC_MSG_RESULT(yes - in errno.h); AC_DEFINE(HAVE_ERRNO) have_errno=yes])
322 if test $have_errno = no; then
323 AC_TRY_LINK([
324 #if HAVE_ERRNO_H
325 #include <errno.h>
326 #endif], [extern int errno; static int x; x = errno;], 
327   [AC_MSG_RESULT(yes - must define); AC_DEFINE(HAVE_ERRNO) AC_DEFINE(MUST_DEFINE_ERRNO)],
328   [AC_MSG_RESULT(no)])
329 fi
330
331 AC_MSG_CHECKING(for locale)
332 AC_TRY_LINK([#include <locale.h>
333 #include <ctype.h>
334 #include <langinfo.h>], [setlocale(LC_CTYPE,""); isprint(0); iscntrl(0);],
335   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_LOCALE)], [AC_MSG_RESULT(no)])
336
337 AC_MSG_CHECKING(for ctype functions)
338 AC_TRY_LINK([
339 #if HAVE_CTYPE_H
340 #include <ctype.h>
341 #endif], [static int x; x = isupper(x); x = tolower(x); x = toupper(x);],
342   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_UPPER_LOWER)], [AC_MSG_RESULT(no)])
343
344 AC_MSG_CHECKING(for wctype functions)
345 AC_TRY_LINK([#include <wctype.h>], [iswlower(0); iswupper(0); towlower(0); towupper(0);],
346   [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_WCTYPE)], [AC_MSG_RESULT(no)])
347
348 # Checks for external variable ospeed in the termcap library.
349 have_ospeed=no
350 AC_MSG_CHECKING(termcap for ospeed)
351 AC_TRY_LINK([
352 #include <sys/types.h>
353 #if HAVE_TERMIOS_H
354 #include <termios.h>
355 #endif
356 #if HAVE_TERMCAP_H
357 #include <termcap.h>
358 #endif], [ospeed = 0;],
359 [AC_MSG_RESULT(yes - in termcap.h); AC_DEFINE(HAVE_OSPEED) have_ospeed=yes])
360 if test $have_ospeed = no; then
361 AC_TRY_LINK(, [extern short ospeed; ospeed = 0;], 
362   [AC_MSG_RESULT(yes - must define); AC_DEFINE(HAVE_OSPEED) AC_DEFINE(MUST_DEFINE_OSPEED)],
363   [AC_MSG_RESULT(no)])
364 fi
365
366 # Compile in secure mode?
367 AC_ARG_WITH(secure,
368   [  --with-secure  Compile in secure mode],
369   AC_DEFINE(SECURE_COMPILE, 1), AC_DEFINE(SECURE_COMPILE, 0))
370
371 # Should we use floating point?
372 AC_MSG_CHECKING(for floating point)
373 AC_ARG_WITH(no-float,
374   [  --with-no-float  Do not use floating point],
375   WANT_NO_FLOAT=1, WANT_NO_FLOAT=0)
376 if test $WANT_NO_FLOAT = 0; then
377   AC_TRY_LINK(, [double f1 = 12.5; double f2 = f1*f1/2.5;], 
378     [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_FLOAT)], [AC_MSG_RESULT(no)])
379 else
380   AC_MSG_RESULT(disabled by user)
381 fi
382
383 # Checks for regular expression functions.
384 have_regex=no
385 have_posix_regex=unknown
386 AC_MSG_CHECKING(for regcomp)
387
388 # Select a regular expression library.
389 WANT_REGEX=auto
390 AC_ARG_WITH(regex,
391   [  --with-regex={auto,pcre,posix,regcmp,re_comp,regcomp,regcomp-local}  Select a regular expression library  [auto]],
392   WANT_REGEX="$withval")
393
394 if test $have_regex = no; then
395 if test $WANT_REGEX = auto -o $WANT_REGEX = posix; then
396 # Some versions of Solaris have a regcomp() function, but it doesn't work!
397 # So we run a test program.  If we're cross-compiling, do it the old way.
398 AC_TRY_RUN([
399 #include <sys/types.h>
400 #include <regex.h>
401 main() { regex_t r; regmatch_t rm; char *text = "xabcy";
402 if (regcomp(&r, "abc", 0)) exit(1);
403 if (regexec(&r, text, 1, &rm, 0)) exit(1);
404 #ifndef __WATCOMC__
405 if (rm.rm_so != 1) exit(1); /* check for correct offset */
406 #else
407 if (rm.rm_sp != text + 1) exit(1); /* check for correct offset */
408 #endif
409 exit(0); }],
410   have_posix_regex=yes, have_posix_regex=no, have_posix_regex=unknown)
411 if test $have_posix_regex = yes; then
412   AC_MSG_RESULT(using POSIX regcomp)
413   AC_DEFINE(HAVE_POSIX_REGCOMP)
414   have_regex=yes
415 elif test $have_posix_regex = unknown; then
416   AC_TRY_LINK([
417 #include <sys/types.h>
418 #include <regex.h>],
419   [regex_t *r; regfree(r);],
420   AC_MSG_RESULT(using POSIX regcomp)
421   AC_DEFINE(HAVE_POSIX_REGCOMP) have_regex=yes)
422 else
423   AC_MSG_RESULT(no)
424 fi
425 fi
426 fi
427
428 if test $have_regex = no; then
429 if test $WANT_REGEX = auto -o $WANT_REGEX = pcre; then
430 AC_CHECK_LIB(pcre, pcre_compile, 
431 [AC_MSG_RESULT(using pcre); AC_DEFINE(HAVE_PCRE) LIBS="$LIBS -lpcre" have_regex=yes], [])
432 fi
433 fi
434
435 if test $have_regex = no; then
436 if test $WANT_REGEX = auto -o $WANT_REGEX = regcmp; then
437 AC_CHECK_FUNC(regcmp, 
438 AC_MSG_RESULT(using regcmp); AC_DEFINE(HAVE_REGCMP) have_regex=yes)
439 fi
440 fi
441
442 if test $have_regex = no; then
443 if test $WANT_REGEX = auto -o $WANT_REGEX = regcomp; then
444 AC_TRY_LINK([
445 #include "regexp.h"], [regcomp("");],
446 AC_MSG_RESULT(using V8 regcomp); AC_DEFINE(HAVE_V8_REGCOMP) have_regex=yes)
447 fi
448 fi
449
450 if test $have_regex = no && test -f ${srcdir}/regexp.c; then
451 if test $WANT_REGEX = auto -o $WANT_REGEX = regcomp-local; then
452 AC_MSG_RESULT(using V8 regcomp -- local source); AC_DEFINE(HAVE_V8_REGCOMP) AC_DEFINE(HAVE_REGEXEC2) REGEX_O='regexp.$(O)' AC_SUBST(REGEX_O) have_regex=yes
453 fi
454 fi
455
456 if test $have_regex = no; then
457 if test $WANT_REGEX = auto -o $WANT_REGEX = re_comp; then
458 AC_MSG_RESULT(using re_comp); AC_CHECK_FUNC(re_comp, AC_DEFINE(HAVE_RE_COMP) have_regex=yes)
459 fi
460 fi
461
462 if test $have_regex = no; then
463 AC_MSG_RESULT(cannot find regular expression library); AC_DEFINE(NO_REGEX)
464 fi
465
466 AC_ARG_WITH(editor,
467   [  --with-editor=PROGRAM   use PROGRAM as the default editor [vi]],
468   AC_DEFINE_UNQUOTED(EDIT_PGM, "$withval"), AC_DEFINE(EDIT_PGM, "vi"))
469
470 AH_TOP([
471 /* Unix definition file for less.  -*- C -*-
472  *
473  * This file has 3 sections:
474  * User preferences.
475  * Settings always true on Unix.
476  * Settings automatically determined by configure.
477  *
478  * * * * * *  WARNING  * * * * * *
479  * If you edit defines.h by hand, do "touch stamp-h" before you run make
480  * so config.status doesn't overwrite your changes.
481  */
482
483 /* User preferences.  */
484
485 /*
486  * SECURE is 1 if you wish to disable a bunch of features in order to
487  * be safe to run by unprivileged users.
488  * SECURE_COMPILE is set by the --with-secure configure option.
489  */
490 #define SECURE          SECURE_COMPILE
491
492 /*
493  * SHELL_ESCAPE is 1 if you wish to allow shell escapes.
494  * (This is possible only if your system supplies the system() function.)
495  */
496 #define SHELL_ESCAPE    (!SECURE)
497
498 /*
499  * EXAMINE is 1 if you wish to allow examining files by name from within less.
500  */
501 #define EXAMINE         (!SECURE)
502
503 /*
504  * TAB_COMPLETE_FILENAME is 1 if you wish to allow the TAB key
505  * to complete filenames at prompts.
506  */
507 #define TAB_COMPLETE_FILENAME   (!SECURE)
508
509 /*
510  * CMD_HISTORY is 1 if you wish to allow keys to cycle through
511  * previous commands at prompts.
512  */
513 #define CMD_HISTORY     1
514
515 /*
516  * HILITE_SEARCH is 1 if you wish to have search targets to be 
517  * displayed in standout mode.
518  */
519 #define HILITE_SEARCH   1
520
521 /*
522  * EDITOR is 1 if you wish to allow editor invocation (the "v" command).
523  * (This is possible only if your system supplies the system() function.)
524  * EDIT_PGM is the name of the (default) editor to be invoked.
525  */
526 #define EDITOR          (!SECURE)
527
528 /*
529  * TAGS is 1 if you wish to support tag files.
530  */
531 #define TAGS            (!SECURE)
532
533 /*
534  * USERFILE is 1 if you wish to allow a .less file to specify 
535  * user-defined key bindings.
536  */
537 #define USERFILE        (!SECURE)
538
539 /*
540  * GLOB is 1 if you wish to have shell metacharacters expanded in filenames.
541  * This will generally work if your system provides the "popen" function
542  * and the "echo" shell command.
543  */
544 #define GLOB            (!SECURE)
545
546 /*
547  * PIPEC is 1 if you wish to have the "|" command
548  * which allows the user to pipe data into a shell command.
549  */
550 #define PIPEC           (!SECURE)
551
552 /*
553  * LOGFILE is 1 if you wish to allow the -l option (to create log files).
554  */
555 #define LOGFILE         (!SECURE)
556
557 /*
558  * GNU_OPTIONS is 1 if you wish to support the GNU-style command
559  * line options --help and --version.
560  */
561 #define GNU_OPTIONS     1
562
563 /*
564  * ONLY_RETURN is 1 if you want RETURN to be the only input which
565  * will continue past an error message.
566  * Otherwise, any key will continue past an error message.
567  */
568 #define ONLY_RETURN     0
569
570 /*
571  * LESSKEYFILE is the filename of the default lesskey output file 
572  * (in the HOME directory).
573  * LESSKEYFILE_SYS is the filename of the system-wide lesskey output file.
574  * DEF_LESSKEYINFILE is the filename of the default lesskey input 
575  * (in the HOME directory).
576  * LESSHISTFILE is the filename of the history file
577  * (in the HOME directory).
578  */
579 #define LESSKEYFILE             ".less"
580 #define LESSKEYFILE_SYS         SYSDIR "/sysless"
581 #define DEF_LESSKEYINFILE       ".lesskey"
582 #define LESSHISTFILE            ".lesshst"
583
584
585 /* Settings always true on Unix.  */
586
587 /*
588  * Define MSDOS_COMPILER if compiling under Microsoft C.
589  */
590 #define MSDOS_COMPILER  0
591
592 /*
593  * Pathname separator character.
594  */
595 #define PATHNAME_SEP    "/"
596
597 /*
598  * The value returned from tgetent on success.
599  * Some HP-UX systems return 0 on success.
600  */
601 #define TGETENT_OK  1
602
603 /*
604  * HAVE_SYS_TYPES_H is 1 if your system has <sys/types.h>.
605  */
606 #define HAVE_SYS_TYPES_H        1
607
608 /*
609  * Define if you have the <sgstat.h> header file.
610  */
611 #undef HAVE_SGSTAT_H
612
613 /*
614  * HAVE_PERROR is 1 if your system has the perror() call.
615  * (Actually, if it has sys_errlist, sys_nerr and errno.)
616  */
617 #define HAVE_PERROR     1
618
619 /*
620  * HAVE_TIME is 1 if your system has the time() call.
621  */
622 #define HAVE_TIME       1
623
624 /*
625  * HAVE_SHELL is 1 if your system supports a SHELL command interpreter.
626  */
627 #define HAVE_SHELL      1
628
629 /*
630  * Default shell metacharacters and meta-escape character.
631  */
632 #define DEF_METACHARS   "; *?\t\n'\"()<>[]|&^`#\\$%=~"
633 #define DEF_METAESCAPE  "\\"
634
635 /* 
636  * HAVE_DUP is 1 if your system has the dup() call.
637  */
638 #define HAVE_DUP        1
639
640 /* Define to 1 if you have the memcpy() function. */
641 #define HAVE_MEMCPY 1
642
643 /* Define to 1 if you have the strchr() function. */
644 #define HAVE_STRCHR 1
645
646 /* Define to 1 if you have the strstr() function. */
647 #define HAVE_STRSTR 1
648
649 /*
650  * Sizes of various buffers.
651  */
652 #define CMDBUF_SIZE     512     /* Buffer for multichar commands */
653 #define UNGOT_SIZE      100     /* Max chars to unget() */
654 #define LINEBUF_SIZE    1024    /* Max size of line in input file */
655 #define OUTBUF_SIZE     1024    /* Output buffer */
656 #define PROMPT_SIZE     200     /* Max size of prompt string */
657 #define TERMBUF_SIZE    2048    /* Termcap buffer for tgetent */
658 #define TERMSBUF_SIZE   1024    /* Buffer to hold termcap strings */
659 #define TAGLINE_SIZE    512     /* Max size of line in tags file */
660 #define TABSTOP_MAX     32      /* Max number of custom tab stops */
661
662 /* Settings automatically determined by configure.  */
663 ])
664
665 AC_CONFIG_FILES([Makefile])
666 AC_OUTPUT