configure.ac revision 221715
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.
12AC_INIT(less, 1)
13AC_CONFIG_SRCDIR([forwback.c])
14AC_CONFIG_HEADER([defines.h])
15
16# Checks for programs.
17AC_PROG_CC
18AC_ISC_POSIX
19AC_PROG_GCC_TRADITIONAL
20AC_PROG_INSTALL
21
22# Checks for compilation model.
23AC_SYS_LARGEFILE
24
25# Checks for general libraries.
26AC_CHECK_LIB(tinfo, tgoto, [have_tinfo=yes], [have_tinfo=no])
27AC_CHECK_LIB(xcurses, initscr, [have_xcurses=yes], [have_xcurses=no])
28AC_CHECK_LIB(ncursesw, initscr, [have_ncursesw=yes], [have_ncursesw=no])
29AC_CHECK_LIB(ncurses, initscr, [have_ncurses=yes], [have_ncurses=no])
30AC_CHECK_LIB(curses, initscr, [have_curses=yes], [have_curses=no])
31AC_CHECK_LIB(termcap, tgetent, [have_termcap=yes], [have_termcap=no])
32AC_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.
35AC_CHECK_LIB(gen, regcmp)
36AC_CHECK_LIB(intl, regcmp)
37AC_CHECK_LIB(PW, regcmp)
38
39# Checks for terminal libraries
40AC_MSG_CHECKING([for working terminal libraries])
41TERMLIBS=
42
43# Check for systems where curses is broken.
44curses_broken=0
45if test x`uname -s` = "xHP-UX" >/dev/null 2>&1; then
46if test x`uname -r` = "xB.11.00" >/dev/null 2>&1; then
47   curses_broken=1
48fi
49if test x`uname -r` = "xB.11.11" >/dev/null 2>&1; then
50   curses_broken=1
51fi
52fi
53
54if test $curses_broken = 0; then
55
56# -- Try tinfo.
57if 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
67fi
68
69# -- Try xcurses.
70if 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
80fi
81
82# -- Try ncursesw.
83if 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
93fi
94
95# -- Try ncurses.
96if 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
106fi
107
108# -- Try curses.
109if 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
119fi
120
121# -- Try curses & termcap.
122if 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
134fi
135fi
136
137# -- Try termcap.
138if 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
148fi
149
150# -- Try termlib.
151if 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
161fi
162
163if test "x$TERMLIBS" = x; then
164  AC_MSG_RESULT(Cannot find terminal libraries - configure failed)
165  exit 1
166fi
167AC_MSG_RESULT(using $TERMLIBS)
168LIBS="$LIBS $TERMLIBS"
169
170# Checks for header files.
171AC_HEADER_STDC
172AC_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.
175AC_HEADER_STAT
176AC_C_CONST
177AC_TYPE_OFF_T
178AC_TYPE_SIZE_T
179AC_HEADER_TIME
180
181# Autoheader templates for symbols defined later by AC_DEFINE.
182AH_TEMPLATE([HAVE_POSIX_REGCOMP],
183	[POSIX regcomp() and regex.h])
184AH_TEMPLATE([HAVE_PCRE],
185	[PCRE (Perl-compatible regular expression) library])
186AH_TEMPLATE([HAVE_RE_COMP],
187	[BSD re_comp()])
188AH_TEMPLATE([HAVE_REGCMP],
189	[System V regcmp()])
190AH_TEMPLATE([HAVE_V8_REGCOMP],
191	[Henry Spencer V8 regcomp() and regexp.h])
192AH_TEMPLATE([NO_REGEX],
193	[pattern matching is supported, but without metacharacters.])
194AH_TEMPLATE([HAVE_REGEXEC2],
195	[])
196AH_TEMPLATE([HAVE_VOID],
197	[Define HAVE_VOID if your compiler supports the "void" type.])
198AH_TEMPLATE([HAVE_FLOAT],
199	[Define HAVE_FLOAT if your compiler supports the "double" type.])
200AH_TEMPLATE([HAVE_CONST],
201	[Define HAVE_CONST if your compiler supports the "const" modifier.])
202AH_TEMPLATE([HAVE_STAT_INO],
203	[Define HAVE_STAT_INO if your struct stat has st_ino and st_dev.])
204AH_TEMPLATE([HAVE_TIME_T],
205	[Define HAVE_TIME_T if your system supports the "time_t" type.])
206AH_TEMPLATE([HAVE_STRERROR],
207	[Define HAVE_STRERROR if you have the strerror() function.])
208AH_TEMPLATE([HAVE_FILENO],
209	[Define HAVE_FILENO if you have the fileno() macro.])
210AH_TEMPLATE([HAVE_ERRNO],
211	[Define HAVE_ERRNO if you have the errno variable.])
212AH_TEMPLATE([MUST_DEFINE_ERRNO],
213	[Define MUST_DEFINE_ERRNO if you have errno but it is not define in errno.h.])
214AH_TEMPLATE([HAVE_SYS_ERRLIST],
215	[Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable.])
216AH_TEMPLATE([HAVE_OSPEED],
217	[Define HAVE_OSPEED if your termcap library has the ospeed variable.])
218AH_TEMPLATE([MUST_DEFINE_OSPEED],
219	[Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined in termcap.h.])
220AH_TEMPLATE([HAVE_LOCALE],
221	[Define HAVE_LOCALE if you have locale.h and setlocale.])
222AH_TEMPLATE([HAVE_TERMIOS_FUNCS],
223	[Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr.])
224AH_TEMPLATE([HAVE_UPPER_LOWER],
225	[Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower.])
226AH_TEMPLATE([HAVE_WCTYPE],
227	[Define HAVE_WCTYPE if you have iswupper, iswlower, towupper, towlower.])
228AH_TEMPLATE([HAVE_SIGSET_T],
229	[Define HAVE_SIGSET_T you have the sigset_t type.])
230AH_TEMPLATE([HAVE_SIGEMPTYSET],
231	[Define HAVE_SIGEMPTYSET if you have the sigemptyset macro.])
232AH_TEMPLATE([EDIT_PGM],
233	[Define EDIT_PGM to your editor.])
234AH_TEMPLATE([SECURE_COMPILE],
235	[Define SECURE_COMPILE=1 to build a secure version of less.])
236
237# Checks for identifiers.
238AC_TYPE_OFF_T
239AC_MSG_CHECKING(for void)
240AC_TRY_COMPILE(, [void *foo = 0;], 
241  [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_VOID)], [AC_MSG_RESULT(no)])
242AC_MSG_CHECKING(for const)
243AC_TRY_COMPILE(, [const int foo = 0;], 
244  [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_CONST)], [AC_MSG_RESULT(no)])
245AC_MSG_CHECKING(for time_t)
246AC_TRY_COMPILE([#include <time.h>], [time_t t = 0;],
247  [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_TIME_T)], [AC_MSG_RESULT(no)])
248AC_MSG_CHECKING(for st_ino in struct stat)
249AC_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.
255AC_TYPE_SIGNAL
256AC_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.
259AC_MSG_CHECKING(for memcpy)
260AC_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
266AC_MSG_CHECKING(for strchr)
267AC_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
273AC_MSG_CHECKING(for strstr)
274AC_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.
281AC_CHECK_FUNC(tcgetattr, AC_DEFINE(HAVE_TERMIOS_FUNCS))
282
283AC_MSG_CHECKING(for fileno)
284AC_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
290AC_MSG_CHECKING(for strerror)
291AC_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
303AC_MSG_CHECKING(for sys_errlist)
304AC_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
307AC_CHECK_TYPES([sigset_t],,,[#include <signal.h>])
308
309AC_MSG_CHECKING(for sigemptyset)
310AC_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
315have_errno=no
316AC_MSG_CHECKING(for errno)
317AC_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])
322if test $have_errno = no; then
323AC_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)])
329fi
330
331AC_MSG_CHECKING(for locale)
332AC_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
337AC_MSG_CHECKING(for ctype functions)
338AC_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
344AC_MSG_CHECKING(for wctype functions)
345AC_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.
349have_ospeed=no
350AC_MSG_CHECKING(termcap for ospeed)
351AC_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])
360if test $have_ospeed = no; then
361AC_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)])
364fi
365
366# Compile in secure mode?
367AC_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?
372AC_MSG_CHECKING(for floating point)
373AC_ARG_WITH(no-float,
374  [  --with-no-float  Do not use floating point],
375  WANT_NO_FLOAT=1, WANT_NO_FLOAT=0)
376if 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)])
379else
380  AC_MSG_RESULT(disabled by user)
381fi
382
383# Checks for regular expression functions.
384have_regex=no
385have_posix_regex=unknown
386AC_MSG_CHECKING(for regcomp)
387
388# Select a regular expression library.
389WANT_REGEX=auto
390AC_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
394if test $have_regex = no; then
395if 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.
398AC_TRY_RUN([
399#include <sys/types.h>
400#include <regex.h>
401main() { regex_t r; regmatch_t rm; char *text = "xabcy";
402if (regcomp(&r, "abc", 0)) exit(1);
403if (regexec(&r, text, 1, &rm, 0)) exit(1);
404#ifndef __WATCOMC__
405if (rm.rm_so != 1) exit(1); /* check for correct offset */
406#else
407if (rm.rm_sp != text + 1) exit(1); /* check for correct offset */
408#endif
409exit(0); }],
410  have_posix_regex=yes, have_posix_regex=no, have_posix_regex=unknown)
411if test $have_posix_regex = yes; then
412  AC_MSG_RESULT(using POSIX regcomp)
413  AC_DEFINE(HAVE_POSIX_REGCOMP)
414  have_regex=yes
415elif 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)
422else
423  AC_MSG_RESULT(no)
424fi
425fi
426fi
427
428if test $have_regex = no; then
429if test $WANT_REGEX = auto -o $WANT_REGEX = pcre; then
430AC_CHECK_LIB(pcre, pcre_compile, 
431[AC_MSG_RESULT(using pcre); AC_DEFINE(HAVE_PCRE) LIBS="$LIBS -lpcre" have_regex=yes], [])
432fi
433fi
434
435if test $have_regex = no; then
436if test $WANT_REGEX = auto -o $WANT_REGEX = regcmp; then
437AC_CHECK_FUNC(regcmp, 
438AC_MSG_RESULT(using regcmp); AC_DEFINE(HAVE_REGCMP) have_regex=yes)
439fi
440fi
441
442if test $have_regex = no; then
443if test $WANT_REGEX = auto -o $WANT_REGEX = regcomp; then
444AC_TRY_LINK([
445#include "regexp.h"], [regcomp("");],
446AC_MSG_RESULT(using V8 regcomp); AC_DEFINE(HAVE_V8_REGCOMP) have_regex=yes)
447fi
448fi
449
450if test $have_regex = no && test -f ${srcdir}/regexp.c; then
451if test $WANT_REGEX = auto -o $WANT_REGEX = regcomp-local; then
452AC_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
453fi
454fi
455
456if test $have_regex = no; then
457if test $WANT_REGEX = auto -o $WANT_REGEX = re_comp; then
458AC_MSG_RESULT(using re_comp); AC_CHECK_FUNC(re_comp, AC_DEFINE(HAVE_RE_COMP) have_regex=yes)
459fi
460fi
461
462if test $have_regex = no; then
463AC_MSG_RESULT(cannot find regular expression library); AC_DEFINE(NO_REGEX)
464fi
465
466AC_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
470AH_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
665AC_CONFIG_FILES([Makefile])
666AC_OUTPUT
667