1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-12 00:30:20 +02:00
guile/libguile/configure.in
Jim Blandy 1fd838affc More functions unavailable on some systems.
* configure.in (AC_CHECK_FUNCS): Add ctermid, setpgid, setsid,
tcgetpgrp, tcsetpgrp, and waitpid to the list of functions to
check for.
* configure, scmconfig.h.in: Updated, using autoconf and autoheader.
* posix.c (scm_sys_ctermid, scm_sys_setpgid, scm_sys_setsid,
scm_sys_tcgetpgrp, scm_sys_tcsetpgrp, scm_sys_waitpid): Put the
bodies of these functions in "#ifdef HAVE_MUMBLE" clauses, with a
stub that signals an error as the #else.
1996-08-07 20:25:10 +00:00

116 lines
2.9 KiB
Text

AC_INIT(eval.c)
AC_CONFIG_HEADER(scmconfig.h)
. $srcdir/../GUILE-VERSION
test -z "$CFLAGS" && CFLAGS=-g
test -z "$LDFLAGS" && LDFLAGS=-g
AC_PROG_CC
AC_PROG_CPP
AC_PROG_RANLIB
AC_AIX
AC_ISC_POSIX
AC_MINIX
AC_C_CONST
AC_HEADER_STDC
AC_HEADER_DIRENT
AC_HEADER_TIME
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(libc.h limits.h malloc.h memory.h string.h sys/ioctl.h sys/select.h sys/time.h sys/timeb.h sys/times.h sys/types.h time.h unistd.h)
AC_TYPE_GETGROUPS
AC_TYPE_SIGNAL
AC_TYPE_MODE_T
AC_CHECK_FUNCS(ctermid ftime getcwd geteuid lstat mkdir mknod nice putenv readlink rename rmdir select setegid seteuid setlocale setpgid setsid strftime strptime symlink sync tcgetpgrp tcsetpgrp times uname waitpid)
AC_REPLACE_FUNCS(inet_aton)
AC_STRUCT_ST_RDEV
AC_STRUCT_ST_BLKSIZE
AC_STRUCT_ST_BLOCKS
#--------------------------------------------------------------------
#
# Which way does the stack grow?
#
#--------------------------------------------------------------------
AC_TRY_RUN(aux (l) unsigned long l;
{ int x; exit (l >= ((unsigned long)&x)); }
main () { int q; aux((unsigned long)&q); },
AC_DEFINE(SCM_STACK_GROWS_UP),,AC_MSG_WARN(Guessing that stack grows down -- see scmconfig.h.in))
AC_TRY_RUN(main () { exit (sizeof(float) != sizeof(long)); },
AC_DEFINE(SCM_SINGLES),,AC_DEFINE(SCM_SINGLES)
AC_MSG_WARN(Guessing that sizeof(long) == sizeof(float) -- see scmconfig.h.in))
AC_MSG_CHECKING(for struct linger)
AC_CACHE_VAL(scm_cv_struct_linger,
AC_TRY_COMPILE([#include <sys/socket.h>],
[struct linger lgr; lgr.l_linger = 100],
scm_cv_struct_linger="yes",
scm_cv_struct_linger="no"))
AC_MSG_RESULT($scm_cv_struct_linger)
if test $scm_cv_struct_linger = yes; then
AC_DEFINE(HAVE_STRUCT_LINGER)
fi
#--------------------------------------------------------------------
#
# How can you violate a stdio abstraction by setting a stream's fd?
#
#--------------------------------------------------------------------
FD_SETTER=""
if test "x$FD_SETTER" = x; then
AC_TRY_COMPILE(#include <stdio.h>
, stdout->_file = 1,
FD_SETTER="((F)->_file = (D))")
fi
if test "x$FD_SETTER" = x; then
AC_TRY_COMPILE(#include <stdio.h>
, stdout->_fileno,
FD_SETTER="((F)->_fileno = (D))")
fi
dnl
dnl Add FD_SETTER tests for other systems here. Your test should
dnl try a particular style of assigning to the descriptor
dnl field(s) of a FILE* and define FD_SETTER accordingly.
dnl
dnl The value of FD_SETTER is used as a macro body, as in:
dnl
dnl #define SET_FILE_FD_FIELD(F,D) @FD_SETTER@
dnl
dnl F is a FILE* and D a descriptor (int).
dnl
test "x$FD_SETTER" != x && AC_DEFINE(HAVE_FD_SETTER)
AC_SUBST(CFLAGS)
AC_SUBST(LDFLAGS)
AC_SUBST(LIBOBJS)
AC_SUBST(FD_SETTER)
AC_SUBST(TCL_SRC_DIR)
AC_SUBST(TK_SRC_DIR)
AC_SUBST(XINCLUDES)
AC_SUBST(GUILE_MAJOR_VERSION)
AC_SUBST(GUILE_MINOR_VERSION)
AC_SUBST(GUILE_VERSION)
AC_OUTPUT(Makefile fd.h)
dnl Local Variables:
dnl comment-start: "dnl "
dnl comment-end: ""
dnl comment-start-skip: "\\bdnl\\b\\s *"
dnl End: