mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-06 15:40:29 +02:00
* NEWS: Corrected remarks about SCM_API. * configure.in: Defining USE_DLL_IMPORT definition to indicate usage of DLL import macros in `libguile/__scm.h'. (LIBOBJS): Removed `fileblocks.o' from the list of object files. Somehow Jim Blandy's patch from 1997 did not survive. 2001-11-04 Stefan Jahn <stefan@lkcc.org> * configure.in (EXTRA_DEFS): Follow-up patch. Using SCM_IMPORT instead of __SCM_IMPORT__. * readline.c (scm_readline_init_ports): Disable input/output stream redirection for Win32. The readline package for Win32 does not support this. The guile-readline library works fine for command line editing. * readline.h (SCM_RL_API): Renamed __FOO__ macros into FOO. 2001-11-04 Stefan Jahn <stefan@lkcc.org> * Makefile.am (libguile_la_LIBADD): Added $(THREAD_LIBS_LOCAL) here (was at guile_LDADD) which describes the dependency correctly and allows a clean build on Win32. * __scm.h (SCM_API): Follow-up patch. Renamed __FOO__ macros into FOO. * __scm.h: USE_DLL_IMPORT indicates the usage of the DLL import macros for external libraries (libcrypt, libqthreads, libreadline and libregex). * coop-defs.h: Include <winsock2.h> for `struct timeval'. * posix.c (flock): Added support for flock() in M$-Windows. * guile.c (SCM_IMPORT): Follow-up patch. Use SCM_IMPORT instead of __SCM_IMPORT__. * fports.c (getflags): Differentiate reading and writing pipes descriptors. * filesys.c (S_IS*): Redefine all of the S_IS*() macros for M$-Windows. * coop.c (coop_condition_variable_timed_wait_mutex): Use conditionalized error code if `ETIMEDOUT' is not available. (scm_thread_usleep): Remove bogus declaration of `struct timeval timeout'. * numbers.c (PTRDIFF_MIN): Moved this definition where it actually belongs. That is because NO_PREPRO_MAGIC gets undefined after each inclusion of `num2integral.i.c'. (SIZE_MAX): Define NO_PREPRO_MAGIC if SIZE_MAX is undefined. 2001-11-04 Stefan Jahn <stefan@lkcc.org> * md/Makefile.am (EXTRA_DIST): Added `i386.asm'. * md/i386.asm: New file. Contains the Intel syntax version for nasm/tasm/masm of the file `i386.s'. * qt.h.in: Definition of QT_API, QT_IMPORT and QT_EXPORT. Prefixed each symbols which is meant to go into a DLL. * Makefile.am (libqthreads_la_LDFLAGS): Put `-no-undefined' into LDFLAGS to support linkers which do not allow unresolved symbols inside shared libraries. (EXTRA_DIST): Add `libqthreads.def', which is an export file definition for M$-Windows. It defines exported symbols. This is necessary because the M$VC linker does not know how to export assembler symbols into a DLL. 2001-11-04 Stefan Jahn <stefan@lkcc.org> * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch. Renamed __FOO__ macros into FOO. 2001-11-04 Stefan Jahn <stefan@lkcc.org> * tests/ports.test: Run (close-port) before (delete-file) if necessary/advisory.
123 lines
3 KiB
Text
123 lines
3 KiB
Text
AC_PREREQ(2.50)
|
|
|
|
AC_INIT
|
|
AC_CONFIG_SRCDIR([readline.c])
|
|
. $srcdir/../GUILE-VERSION
|
|
PACKAGE=guile-readline
|
|
AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
|
|
|
|
AC_PROG_INSTALL
|
|
AC_PROG_CC
|
|
AM_PROG_CC_STDC
|
|
AC_LIBTOOL_WIN32_DLL
|
|
AM_PROG_LIBTOOL
|
|
|
|
dnl
|
|
dnl Check for Winsock and other functionality on Win32 (*not* CygWin)
|
|
dnl
|
|
AC_CYGWIN
|
|
AC_MINGW32
|
|
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_pre_input_hook. This is more complicated because on
|
|
dnl some systems (HP/UX), the linker wont let us treat
|
|
dnl rl_pre_input_hook as a function when it really is a function
|
|
dnl pointer.
|
|
|
|
AC_MSG_CHECKING([for rl_pre_input_hook])
|
|
AC_CACHE_VAL(ac_cv_var_rl_pre_input_hook,
|
|
[AC_TRY_LINK([
|
|
#include <stdio.h>
|
|
#include <readline/readline.h>
|
|
], [
|
|
rl_pre_input_hook = 0;
|
|
],
|
|
ac_cv_var_rl_pre_input_hook=yes,
|
|
ac_cv_var_rl_pre_input_hook=no)])
|
|
AC_MSG_RESULT($ac_cv_var_rl_pre_input_hook)
|
|
if test $ac_cv_var_rl_pre_input_hook = yes; then
|
|
AC_DEFINE(HAVE_RL_PRE_INPUT_HOOK)
|
|
fi
|
|
|
|
|
|
AC_MSG_CHECKING(if readline clears SA_RESTART flag for SIGWINCH)
|
|
AC_CACHE_VAL(guile_cv_sigwinch_sa_restart_cleared,
|
|
AC_TRY_RUN([#include <signal.h>
|
|
#include <stdio.h>
|
|
#include <readline/readline.h>
|
|
|
|
int
|
|
hook ()
|
|
{
|
|
struct sigaction action;
|
|
|
|
sigaction (SIGWINCH, NULL, &action);
|
|
rl_cleanup_after_signal();
|
|
|
|
/* exit with 0 if readline disabled SA_RESTART */
|
|
exit (action.sa_flags & SA_RESTART);
|
|
}
|
|
|
|
int
|
|
main ()
|
|
{
|
|
struct sigaction action;
|
|
|
|
sigaction (SIGWINCH, NULL, &action);
|
|
action.sa_flags |= SA_RESTART;
|
|
sigaction (SIGWINCH, &action, NULL);
|
|
|
|
rl_pre_input_hook = hook;
|
|
readline ("");
|
|
}],
|
|
guile_cv_sigwinch_sa_restart_cleared=yes,
|
|
guile_cv_sigwinch_sa_restart_cleared=no,
|
|
guile_cv_sigwinch_sa_restart_cleared=yes))
|
|
AC_MSG_RESULT($guile_cv_sigwinch_sa_restart_cleared)
|
|
if test $guile_cv_sigwinch_sa_restart_cleared = yes; then
|
|
AC_DEFINE(GUILE_SIGWINCH_SA_RESTART_CLEARED)
|
|
fi
|
|
|
|
AC_CACHE_CHECK([for rl_getc_function pointer in readline],
|
|
ac_cv_var_rl_getc_function,
|
|
[AC_TRY_LINK([
|
|
#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)
|
|
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)
|
|
|
|
AC_CONFIG_FILES(Makefile)
|
|
AC_OUTPUT
|