* hooks.c (scm_create_hook): deprecated.
[bpt/guile.git] / configure.in
index 0b72428..92d1c54 100644 (file)
@@ -41,13 +41,13 @@ AC_CONFIG_SUBDIRS(guile-readline)
 #--------------------------------------------------------------------
 
 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)
@@ -96,6 +96,23 @@ AC_ARG_ENABLE(htmldoc,
 
 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)
@@ -140,8 +157,16 @@ AM_PROG_LIBTOOL
 
 AC_C_CONST
 AC_C_INLINE
+AC_C_BIGENDIAN
+
 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],
@@ -149,13 +174,20 @@ AC_CACHE_CHECK([for long longs], scm_cv_long_longs,
                              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
@@ -211,7 +243,7 @@ AC_CHECK_LIB(crypt, crypt)
 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])
@@ -247,7 +279,8 @@ AC_CHECK_FUNCS(sethostent   gethostent   endhostent   dnl
                setprotoent  getprotoent  endprotoent  dnl
                setservent   getservent   endservent   dnl
                getnetbyaddr getnetbyname dnl
-              inet_lnaof inet_makeaddr inet_netof hstrerror)
+              inet_lnaof inet_makeaddr inet_netof hstrerror dnl
+              inet_pton inet_ntop)
 
 dnl Some systems do not declare this.  Some systems do declare it, as a
 dnl macro.  With cygwin it may be in a DLL.
@@ -262,6 +295,38 @@ if test $guile_cv_have_h_errno = yes; then
   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_TRY_COMPILE([#include <netinet/in.h>],
+[struct sockaddr_in6 sok;  sok.sin6_scope_id = 0;],
+guile_cv_have_sin6_scope_id=yes, guile_cv_have_sin6_scope_id=no)])
+AC_MSG_RESULT($guile_cv_have_sin6_scope_id)
+if test $guile_cv_have_sin6_scope_id = yes; then
+  AC_DEFINE(HAVE_SIN6_SCOPE_ID)
+fi
+
 AC_MSG_CHECKING(whether localtime caches TZ)
 AC_CACHE_VAL(guile_cv_localtime_cache,
 [if test x$ac_cv_func_tzset = xyes; then
@@ -350,7 +415,7 @@ AC_STRUCT_ST_RDEV
 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;],
@@ -381,7 +446,7 @@ GUILE_STRUCT_UTIMBUF
 
 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,
@@ -493,6 +558,10 @@ if test "${THREAD_PACKAGE}" != "" ; then
     AC_CHECK_LIB(pthread, main)
   fi
 fi
+AC_SUBST(LIBGUILEQTHREADS_MAJOR_VERSION)
+AC_SUBST(LIBGUILEQTHREADS_MINOR_VERSION)
+AC_SUBST(LIBGUILEQTHREADS_REVISION_VERSION)
+AC_SUBST(LIBGUILEQTHREADS_VERSION)
 
 ## If we're using GCC, ask for aggressive warnings.
 case "$GCC" in
@@ -518,6 +587,7 @@ EXTRA_DOT_X_FILES="`echo ${LIBOBJS} | sed 's/\.o/.x/g'`"
 
 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)
@@ -533,7 +603,27 @@ AC_SUBST(LIBLOBJS)
 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 "