#--------------------------------------------------------------------
AC_CONFIG_SUBDIRS(guile-readline)
-AC_CONFIG_SUBDIRS(srfi)
#--------------------------------------------------------------------
#
#--------------------------------------------------------------------
AC_ARG_ENABLE(debug-freelist,
- [ --enable-debug-freelist include garbage collector freelist debugging code],
+ [ --enable-debug-freelist include garbage collector freelist debugging code],
if test "$enable_debug_freelist" = y || test "$enable_debug_freelist" = yes; then
AC_DEFINE(GUILE_DEBUG_FREELIST)
fi)
AC_ARG_ENABLE(debug-malloc,
- [ --enable-debug-malloc include malloc debugging code],
+ [ --enable-debug-malloc include malloc debugging code],
if test "$enable_debug_malloc" = y || test "$enable_debug_malloc" = yes; then
AC_DEFINE(GUILE_DEBUG_MALLOC)
fi)
AM_CONDITIONAL(HTMLDOC, test x$htmldoc_enabled = xyes)
+AC_ARG_ENABLE(deprecated,
+ [ --disable-deprecated omit deprecated features [no]])
+
+if test "$enable_deprecated" = no; then
+ AC_DEFINE(SCM_DEBUG_DEPRECATED, 1)
+else
+ if test "$enable_deprecated" = yes || test "$enable_deprecated" = ""; then
+ warn_default=summary
+ elif test "$enable_deprecated" = shutup; then
+ warn_default=no
+ else
+ warn_default=$enable_deprecated
+ fi
+ AC_DEFINE(SCM_DEBUG_DEPRECATED, 0)
+ AC_DEFINE_UNQUOTED(SCM_WARN_DEPRECATED_DEFAULT, "$warn_default")
+fi
+
dnl The --disable-debug used to control these two. But now they are
dnl a required part of the distribution.
AC_DEFINE(DEBUG_EXTENSIONS)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
+
+dnl by the pre C9X ANSI C standards, size_t & ptrdiff_t have to be
+dnl representable by a standard integral type. since the largest
+dnl integer type in the pre-C9X ANSI C standards is long...
+AC_CHECK_TYPE(ptrdiff_t, long)
+
AC_CACHE_CHECK([for long longs], scm_cv_long_longs,
AC_TRY_COMPILE(,
[long long a],
scm_cv_long_longs=no))
if test "$scm_cv_long_longs" = yes; then
AC_DEFINE(HAVE_LONG_LONGS)
+ AC_CHECK_SIZEOF(long long)
+fi
+
+AC_CHECK_SIZEOF(void *)
+
+if test "$ac_cv_sizeof_long" -ne "$ac_cv_sizeof_void_p"; then
+ AC_MSG_ERROR(sizes of long and void* are not identical)
fi
AC_HEADER_STDC
AC_HEADER_DIRENT
AC_HEADER_TIME
AC_HEADER_SYS_WAIT
-AC_CHECK_HEADERS(io.h libc.h limits.h malloc.h memory.h string.h regex.h rxposix.h rx/rxposix.h sys/ioctl.h sys/select.h sys/time.h sys/timeb.h sys/times.h sys/types.h sys/utime.h time.h unistd.h utime.h)
+AC_CHECK_HEADERS(io.h libc.h limits.h malloc.h memory.h string.h regex.h rxposix.h rx/rxposix.h sys/ioctl.h sys/select.h sys/time.h sys/timeb.h sys/times.h sys/stdtypes.h sys/types.h sys/utime.h time.h unistd.h utime.h)
GUILE_HEADER_LIBC_WITH_UNISTD
AC_TYPE_GETGROUPS
AC_DEFUN(GUILE_FUNC_DECLARED, [
AC_CACHE_CHECK(for $1 declaration, guile_cv_func_$1_declared,
AC_EGREP_HEADER($1, $2,
- guile_cv_func_$1_declared=yes,
+ guile_cv_func_$1_declared=yes,
guile_cv_func_$1_declared=no))
if test [x$guile_cv_func_]$1[_declared] = xno; then
AC_DEFINE([MISSING_]translit($1, [a-z], [A-Z])[_DECL])
AC_DEFINE(HAVE_H_ERRNO)
fi
+AC_MSG_CHECKING(whether netdb.h defines uint32_t)
+AC_CACHE_VAL(guile_cv_have_uint32_t,
+[AC_TRY_COMPILE([#include <netdb.h>],
+[uint32_t a;],
+guile_cv_have_uint32_t=yes, guile_cv_have_uint32_t=no)])
+AC_MSG_RESULT($guile_cv_have_uint32_t)
+if test $guile_cv_have_uint32_t = yes; then
+ AC_DEFINE(HAVE_UINT32_T)
+fi
+
+AC_MSG_CHECKING(for working IPv6 support)
+AC_CACHE_VAL(guile_cv_have_ipv6,
+[AC_TRY_COMPILE([#include <netinet/in.h>
+#include <sys/socket.h>],
+[struct sockaddr_in6 a; a.sin6_family = AF_INET6;],
+guile_cv_have_ipv6=yes, guile_cv_have_ipv6=no)])
+AC_MSG_RESULT($guile_cv_have_ipv6)
+if test $guile_cv_have_ipv6 = yes; then
+ AC_DEFINE(HAVE_IPV6)
+fi
+
# included in rfc2553 but not in older implementations, e.g., glibc 2.1.3.
AC_MSG_CHECKING(whether sockaddr_in6 has sin6_scope_id)
AC_CACHE_VAL(guile_cv_have_sin6_scope_id,
AC_STRUCT_ST_BLKSIZE
# We could use AC_STRUCT_ST_BLOCKS here, but that adds fileblocks.o to
-# LIBOBJS, which we don't need. This seems more direct.
+# LIBOBJS, which we don't need. This seems more direct.
AC_CACHE_CHECK([for st_blocks in struct stat], ac_cv_struct_st_blocks,
[AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/stat.h>], [struct stat s; s.st_blocks;],
AC_TRY_RUN(aux (l) unsigned long l;
{ int x; exit (l >= ((unsigned long)&x)); }
- main () { int q; aux((unsigned long)&q); },
+ 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_CACHE_CHECK([whether floats fit in longs], guile_cv_type_float_fits_long,
AC_SUBST(GUILE_MAJOR_VERSION)
AC_SUBST(GUILE_MINOR_VERSION)
+AC_SUBST(GUILE_MICRO_VERSION)
AC_SUBST(GUILE_VERSION)
AC_SUBST(LIBGUILE_MAJOR_VERSION)
AC_SUBST(LIBGUILE_MINOR_VERSION)
AC_SUBST(EXTRA_DOT_DOC_FILES)
AC_SUBST(EXTRA_DOT_X_FILES)
-AC_OUTPUT([Makefile libguile/Makefile libguile/guile-snarf libguile/guile-doc-snarf libguile/guile-func-name-check libguile/guile-snarf.awk libguile/versiondat.h ice-9/Makefile oop/Makefile oop/goops/Makefile qt/Makefile qt/qt.h qt/md/Makefile qt/time/Makefile guile-config/Makefile doc/Makefile check-guile], [chmod +x libguile/guile-snarf libguile/guile-doc-snarf libguile/guile-func-name-check check-guile])
+AC_OUTPUT([Makefile
+ libguile/Makefile
+ libguile/guile-snarf
+ libguile/guile-doc-snarf
+ libguile/guile-func-name-check
+ libguile/guile-snarf.awk
+ libguile/versiondat.h
+ ice-9/Makefile
+ oop/Makefile
+ oop/goops/Makefile
+ scripts/Makefile
+ srfi/Makefile
+ qt/Makefile
+ qt/qt.h
+ qt/md/Makefile
+ qt/time/Makefile
+ guile-config/Makefile
+ doc/Makefile
+ check-guile
+ guile-tools],
+ [chmod +x libguile/guile-snarf libguile/guile-doc-snarf libguile/guile-func-name-check check-guile guile-tools])
dnl Local Variables:
dnl comment-start: "dnl "