AC_DEFINE(DEBUG_EXTENSIONS)
AC_DEFINE(READER_EXTENSIONS)
+AC_ARG_ENABLE(elisp,
+ [ --disable-elisp omit Emacs Lisp support],,
+ enable_elisp=yes)
+
dnl files which are destined for separate modules.
if test "$enable_arrays" = yes; then
LIBOBJS="$LIBOBJS debug-malloc.o"
fi
+if test "$enable_elisp" = yes; then
+ AC_DEFINE(SCM_ENABLE_ELISP)
+fi
+
#--------------------------------------------------------------------
dnl Some more checks for Win32
AC_MINGW32
AC_LIBTOOL_WIN32_DLL
-AC_LIBLTDL_CONVENIENCE
+AC_LIBLTDL_INSTALLABLE
AC_CONFIG_SUBDIRS(libltdl)
AC_PROG_INSTALL
AM_PROG_CC_STDC
AM_PROG_LIBTOOL
+AC_CHECK_PROG(have_makeinfo, makeinfo, yes, no)
+AM_CONDITIONAL(HAVE_MAKEINFO, test "$have_makeinfo" = yes)
+
AC_C_CONST
AC_C_INLINE
AC_C_BIGENDIAN
+if test "$ac_cv_c_inline" != no; then
+ AC_DEFINE(HAVE_INLINE)
+fi
+
+AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
+AC_CHECK_SIZEOF(size_t)
dnl Check for integral types that can represent the range of pointers.
dnl If these types don't exist on this platform, they are replaced by
AC_CHECK_HEADERS(stdint.h)
AC_CHECK_HEADERS(inttypes.h)
-AC_CHECK_TYPES([uintptr_t, ptrdiff_t])
-
-AC_CACHE_CHECK([for long longs], scm_cv_long_longs,
- AC_TRY_COMPILE(,
- [long long a],
- scm_cv_long_longs=yes,
- 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(uintptr_t)
+AC_CHECK_SIZEOF(ptrdiff_t)
+
+AC_CHECK_SIZEOF(long long)
AC_CHECK_SIZEOF(void *)
dnl Check for Winsock and other functionality on Win32 (*not* CygWin)
dnl
EXTRA_DEFS=""
-EXTRA_LIB_DEFS=""
if test "$MINGW32" = "yes" ; then
- AC_CHECK_HEADER(winsock2.h, [AC_DEFINE([HAVE_WINSOCK2_H], 1,
+ AC_CHECK_HEADER(winsock2.h, [AC_DEFINE([HAVE_WINSOCK2_H], 1,
[Define if you have the <winsock2.h> header file.])])
AC_CHECK_LIB(ws2_32, main)
- LIBOBJS="$LIBOBJS uname.o dirent.o"
- if test $enable_shared = yes ; then
- EXTRA_DEFS="-D__SCM_IMPORT__ -D__REGEX_IMPORT__ -D__CRYPT_IMPORT__"
- EXTRA_LIB_DEFS="-D__REGEX_IMPORT__ -D__CRYPT_IMPORT__"
+ LIBOBJS="$LIBOBJS win32-uname.o win32-dirent.o"
+ if test "$enable_networking" = yes ; then
+ LIBOBJS="$LIBOBJS win32-socket.o"
+ fi
+ if test "$enable_shared" = yes ; then
+ EXTRA_DEFS="-DSCM_IMPORT"
+ AC_DEFINE(USE_DLL_IMPORT, 1,
+ [Define if you need additional CPP macros on Win32 platforms.])
+ fi
+ if test x"$enable_ltdl_install" = x"yes" ; then
+ INCLTDL="-DLIBLTDL_DLL_IMPORT $INCLTDL"
fi
fi
AC_SUBST(EXTRA_DEFS)
-AC_SUBST(EXTRA_LIB_DEFS)
dnl Check for dynamic linking
done
fi
fi
+
AC_SUBST(INCLTDL)
AC_SUBST(LIBLTDL)
AC_SUBST(DLPREOPEN)
AC_MSG_CHECKING(whether uint32_t is defined)
AC_CACHE_VAL(guile_cv_have_uint32_t,
[AC_TRY_COMPILE([#include <sys/types.h>
- #include <netdb.h>],
+ #if HAVE_STDINT_H
+ #include <stdint.h>
+ #endif
+ #ifndef __MINGW32__
+ #include <netdb.h>
+ #endif],
[uint32_t a;],
guile_cv_have_uint32_t=yes, guile_cv_have_uint32_t=no)])
AC_MSG_RESULT($guile_cv_have_uint32_t)
AC_CHECK_LIB(pthread, main)
fi
fi
-AC_SUBST(LIBGUILEQTHREADS_INTERFACE_CURRENT)
-AC_SUBST(LIBGUILEQTHREADS_INTERFACE_REVISION)
-AC_SUBST(LIBGUILEQTHREADS_INTERFACE_AGE)
-AC_SUBST(LIBGUILEQTHREADS_INTERFACE)
## If we're using GCC, ask for aggressive warnings.
case "$GCC" in
AC_PROG_AWK
+## Remove fileblocks.o from the object list. This file gets added by
+## the Autoconf macro AC_STRUCT_ST_BLOCKS. But there is no need.
+LIBOBJS="`echo ${LIBOBJS} | sed 's/fileblocks\.o//g'`"
+
## If we're creating a shared library (using libtool!), then we'll
## need to generate a list of .lo files corresponding to the .o files
## given in LIBOBJS. We'll call it LIBLOBJS.
AC_SUBST(GUILE_MICRO_VERSION)
AC_SUBST(GUILE_VERSION)
+#######################################################################
+# library versioning
+
+AC_SUBST(LIBQTHREADS_INTERFACE_CURRENT)
+AC_SUBST(LIBQTHREADS_INTERFACE_REVISION)
+AC_SUBST(LIBQTHREADS_INTERFACE_AGE)
+AC_SUBST(LIBQTHREADS_INTERFACE)
+
AC_SUBST(LIBGUILE_INTERFACE_CURRENT)
AC_SUBST(LIBGUILE_INTERFACE_REVISION)
AC_SUBST(LIBGUILE_INTERFACE_AGE)
AC_SUBST(LIBGUILE_INTERFACE)
+AC_SUBST(LIBGUILE_SRFI_SRFI_4_INTERFACE_CURRENT)
+AC_SUBST(LIBGUILE_SRFI_SRFI_4_INTERFACE_REVISION)
+AC_SUBST(LIBGUILE_SRFI_SRFI_4_INTERFACE_AGE)
+AC_SUBST(LIBGUILE_SRFI_SRFI_4_INTERFACE)
+
+AC_SUBST(LIBGUILE_SRFI_SRFI_13_14_INTERFACE_CURRENT)
+AC_SUBST(LIBGUILE_SRFI_SRFI_13_14_INTERFACE_REVISION)
+AC_SUBST(LIBGUILE_SRFI_SRFI_13_14_INTERFACE_AGE)
+AC_SUBST(LIBGUILE_SRFI_SRFI_13_14_INTERFACE)
+
+#######################################################################
+
dnl Tell guile-config what flags guile users should link against.
GUILE_LIBS="$LDFLAGS $THREAD_LIBS_INSTALLED $LIBS"
AC_SUBST(GUILE_LIBS)
AC_SUBST(EXTRA_DOT_DOC_FILES)
AC_SUBST(EXTRA_DOT_X_FILES)
+dnl See also top_builddir in info node: (libtool)AC_PROG_LIBTOOL
+top_builddir_absolute=`pwd`
+AC_SUBST(top_builddir_absolute)
+top_srcdir_absolute=`(cd $srcdir ; pwd)`
+AC_SUBST(top_srcdir_absolute)
+
AC_CONFIG_FILES([
Makefile
+ am/Makefile
libguile/Makefile
libguile/guile-snarf
libguile/guile-doc-snarf
libguile/guile-func-name-check
libguile/guile-snarf-docs
- libguile/guile-snarf-docs-texi
libguile/version.h
ice-9/Makefile
+ lang/Makefile
+ lang/elisp/Makefile
+ lang/elisp/internals/Makefile
+ lang/elisp/primitives/Makefile
oop/Makefile
oop/goops/Makefile
scripts/Makefile
examples/safe/Makefile
test-suite/Makefile
check-guile
- guile-tools])
+ guile-tools
+ pre-inst-guile])
AC_CONFIG_COMMANDS(default,
[ chmod +x libguile/guile-snarf \
libguile/guile-doc-snarf \
libguile/guile-func-name-check \
libguile/guile-snarf-docs \
- libguile/guile-snarf-docs-texi \
check-guile \
- guile-tools])
+ guile-tools \
+ pre-inst-guile])
AC_OUTPUT