summaryrefslogtreecommitdiff
path: root/guile-readline/configure.ac
blob: fdf9518b6ac81a1db4b948217855f57d28876ca1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
AC_PREREQ([2.71])

dnl Don't use "echo -n", which is not portable (e.g., not available on
dnl MacOS X).  Instead, use `patsubst' to remove the newline.
AC_INIT([guile-readline],[patsubst(m4_esyscmd(. ../GUILE-VERSION && echo ${GUILE_VERSION}),
)],[bug-guile@gnu.org])

AC_CONFIG_AUX_DIR([.])
AC_CONFIG_SRCDIR(readline.c)
AC_CONFIG_HEADERS([guile-readline-config.h])
AM_INIT_AUTOMAKE([foreign no-define])

. $srcdir/../GUILE-VERSION

AC_PROG_INSTALL
AC_PROG_CC
AC_CANONICAL_HOST

LT_INIT([win32-dll])

dnl
dnl Check for Winsock and other functionality on Win32 (*not* CygWin)
dnl
case $host_os in
  *cygwin* ) CYGWIN=yes;;
	 * ) CYGWIN=no;;
esac
case $host_os in
  *mingw32* ) MINGW32=yes;;
	  * ) MINGW32=no;;
esac

EXTRA_DEFS=""
if test "$MINGW32" = "yes" ; then
    if test $enable_shared = yes ; then
      EXTRA_DEFS="-DSCM_IMPORT"
    fi
fi
AC_SUBST(EXTRA_DEFS)

for termlib in ncurses curses termcap terminfo termlib ; do
   AC_CHECK_LIB(${termlib}, tgoto,
                [LIBS="-l${termlib} $LIBS"; break])
done

AC_CHECK_LIB(readline, readline)
if test $ac_cv_lib_readline_readline = no; then
  AC_MSG_WARN([libreadline was not found on your system.])
fi

AC_CHECK_FUNCS(siginterrupt rl_clear_signals rl_cleanup_after_signal)

dnl Check for modern readline naming
AC_CHECK_FUNCS(rl_filename_completion_function)

dnl Check for rl_get_keymap.  We only use this for deciding whether to
dnl install paren matching on the Guile command line (when using
dnl readline for input), so it's completely optional.
AC_CHECK_FUNCS(rl_get_keymap)

AC_CACHE_CHECK([for rl_getc_function pointer in readline],
		 ac_cv_var_rl_getc_function,
		 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <stdio.h>
#include <readline/readline.h>
]],[[
printf ("%ld", (long) rl_getc_function)
]])],
                                 [ac_cv_var_rl_getc_function=yes],
                                 [ac_cv_var_rl_getc_function=no])])
if test "${ac_cv_var_rl_getc_function}" = "yes"; then
  AC_DEFINE(HAVE_RL_GETC_FUNCTION, 1,
    [Define if your readline library has the rl_getc_function variable.])
fi

if test $ac_cv_lib_readline_readline = yes \
        -a $ac_cv_var_rl_getc_function = no; then
  AC_MSG_WARN([*** libreadline is too old on your system.])
  AC_MSG_WARN([*** You need readline version 2.1 or later.])
fi

AC_CHECK_FUNCS(strdup)

. $srcdir/LIBGUILEREADLINE-VERSION
AC_SUBST(LIBGUILEREADLINE_MAJOR)
AC_SUBST(LIBGUILEREADLINE_INTERFACE_CURRENT)
AC_SUBST(LIBGUILEREADLINE_INTERFACE_REVISION)
AC_SUBST(LIBGUILEREADLINE_INTERFACE_AGE)
AC_SUBST(LIBGUILEREADLINE_INTERFACE)

AC_SUBST(GUILE_EFFECTIVE_VERSION)

AC_CONFIG_FILES(Makefile ice-9/Makefile)
AC_OUTPUT