Reverse the n-ary logxor change. The behaviour is weird in a set
[bpt/guile.git] / guile-readline / configure.in
CommitLineData
691f5a4d
MV
1AC_PREREQ(2.50)
2
3AC_INIT
4AC_CONFIG_SRCDIR([readline.c])
395753a1
MV
5. $srcdir/../GUILE-VERSION
6PACKAGE=guile-readline
7AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
c374ab69
MV
8
9AC_PROG_CC
52b30d5e 10AM_PROG_CC_STDC
c374ab69
MV
11AM_PROG_LIBTOOL
12
49dd8ff3 13for termlib in ncurses curses termcap terminfo termlib ; do
c374ab69
MV
14 AC_CHECK_LIB(${termlib}, tgoto,
15 [LIBS="-l${termlib} $LIBS"; break])
16done
17
49dd8ff3
MV
18AC_CHECK_LIB(readline, readline)
19if test $ac_cv_lib_readline_readline = no; then
66e28f02 20 AC_MSG_WARN([libreadline was not found on your system.])
c374ab69
MV
21fi
22
60113271
MV
23AC_CHECK_FUNCS(siginterrupt rl_clear_signals rl_cleanup_after_signal)
24
dcb17187
MV
25dnl Check for modern readline naming
26AC_CHECK_FUNCS(rl_filename_completion_function)
27
60113271
MV
28dnl Check for rl_pre_input_hook. This is more complicated because on
29dnl some systems (HP/UX), the linker wont let us treat
30dnl rl_pre_input_hook as a function when it really is a function
31dnl pointer.
32
33AC_MSG_CHECKING([for rl_pre_input_hook])
34AC_CACHE_VAL(ac_cv_var_rl_pre_input_hook,
35[AC_TRY_LINK([
36#include <stdio.h>
37#include <readline/readline.h>
38], [
39rl_pre_input_hook = 0;
40],
41ac_cv_var_rl_pre_input_hook=yes,
42ac_cv_var_rl_pre_input_hook=no)])
43AC_MSG_RESULT($ac_cv_var_rl_pre_input_hook)
44if test $ac_cv_var_rl_pre_input_hook = yes; then
45 AC_DEFINE(HAVE_RL_PRE_INPUT_HOOK)
46fi
49a2970b
MD
47
48
49AC_MSG_CHECKING(if readline clears SA_RESTART flag for SIGWINCH)
50AC_CACHE_VAL(guile_cv_sigwinch_sa_restart_cleared,
51AC_TRY_RUN([#include <signal.h>
52#include <stdio.h>
53#include <readline/readline.h>
54
55int
56hook ()
57{
58 struct sigaction action;
59
60 sigaction (SIGWINCH, NULL, &action);
61 rl_cleanup_after_signal();
62
63 /* exit with 0 if readline disabled SA_RESTART */
64 exit (action.sa_flags & SA_RESTART);
65}
66
67int
68main ()
69{
70 struct sigaction action;
71
72 sigaction (SIGWINCH, NULL, &action);
73 action.sa_flags |= SA_RESTART;
74 sigaction (SIGWINCH, &action, NULL);
75
76 rl_pre_input_hook = hook;
77 readline ("");
78}],
79guile_cv_sigwinch_sa_restart_cleared=yes,
80guile_cv_sigwinch_sa_restart_cleared=no,
81guile_cv_sigwinch_sa_restart_cleared=yes))
82AC_MSG_RESULT($guile_cv_sigwinch_sa_restart_cleared)
83if test $guile_cv_sigwinch_sa_restart_cleared = yes; then
84 AC_DEFINE(GUILE_SIGWINCH_SA_RESTART_CLEARED)
85fi
c374ab69
MV
86
87AC_CACHE_CHECK([for rl_getc_function pointer in readline],
88 ac_cv_var_rl_getc_function,
89 [AC_TRY_LINK([
90#include <stdio.h>
91#include <readline/readline.h>],
f30a1c95 92 [printf ("%ld", (long) rl_getc_function)],
c374ab69
MV
93 [ac_cv_var_rl_getc_function=yes],
94 [ac_cv_var_rl_getc_function=no])])
95if test "${ac_cv_var_rl_getc_function}" = "yes"; then
96 AC_DEFINE(HAVE_RL_GETC_FUNCTION)
97fi
98
c2c27602 99if test $ac_cv_lib_readline_readline = yes \
c374ab69 100 -a $ac_cv_var_rl_getc_function = no; then
5ca264aa
MD
101 AC_MSG_WARN([*** libreadline is too old on your system.])
102 AC_MSG_WARN([*** You need readline version 2.1 or later.])
c374ab69
MV
103fi
104
105AC_CHECK_FUNCS(strdup)
106
691f5a4d
MV
107AC_CONFIG_FILES(Makefile)
108AC_OUTPUT