1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
|
dnl Part of Scheme 48 1.9. See file COPYING for notices and license.
dnl
dnl Authors: Richard Kelsey, Jonathan Rees, Mike Sperber, Marcus
dnl Crestani, Eric Knauel, David Frese, Ivan Shmakov, Taylor Campbell,
dnl Will Noble
dnl
dnl Process this file with autoconf >= 2.60 to produce a configure script.
dnl To do this, run:
dnl env ACLOCAL="aclocal -I m4" autoreconf -v -i
dnl
AC_PREREQ([2.60])dnl
dnl
dnl We might want AC_WORDS_BIGENDIAN in the future.
dnl We might want AC_CHAR_UNSIGNED in the future.
dnl
dnl
dnl
dnl
AC_INIT(c/prescheme.h)
AC_CONFIG_HEADER(c/sysdep.h)
AC_CONFIG_HEADER(c/scheme48arch.h)
AC_CANONICAL_HOST
dnl set the cross-compile flag before we try anything.
AC_TRY_RUN([int main() { return 0;}], [], [], [true])
S48_CC
S48_PICK_GC
S48_ENABLE_FORCE_32BIT
S48_DETERMINE_BITS_PER_BYTE
S48_DETERMINE_POINTER_SIZE
S48_DETERMINE_BIT_SUFFIX
S48_ENABLE_UNIVERSAL_BINARY
S48_OSX_ARCH_FLAGS($S48_BUILD_UNIVERSAL_P,$S48_FORCE_32_P)
S48_PIC_OPTION_NAME
S48_CREATE_BUILD_DIRS
S48_LDFLAGS
AC_ISC_POSIX
AC_SYS_LARGEFILE
S48_INLINE
AC_PROG_INSTALL
AC_CHECK_LIB(m, main)
AC_CHECK_LIB(dl, main)
AC_CHECK_LIB(mld, main)
AC_CHECK_LIB(nsl, main)
AC_CHECK_LIB(gen, main)
AC_CHECK_LIB(socket, main)
AC_CHECK_LIB(sun, getpwnam)
S48_POSIX_LIBC
S48_TM_GMTOFF
AC_CONST
AC_MSG_CHECKING(for socklen_t)
AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>
socklen_t x;
],[],
[AC_MSG_RESULT(yes)],
[AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>
int accept (int,
struct sockaddr *,
size_t *);
],[],
[AC_MSG_RESULT(size_t)
AC_DEFINE(socklen_t,size_t)],
[AC_MSG_RESULT(int)
AC_DEFINE(socklen_t,int)])])
AC_RETSIGTYPE
AC_TYPE_UINTPTR_T
AC_TYPE_UINT16_T
AC_CHECK_HEADERS(libgen.h sys/timeb.h posix/time.h)
AC_CHECK_HEADERS(sys/select.h)
AC_CHECK_HEADERS(sysexits.h)
AC_CHECK_HEADERS(langinfo.h)
AC_CHECK_FUNC(nl_langinfo, [], [AC_LIBOBJ([c/fake/langinfo])])
AC_CHECK_FUNCS(gettimeofday ftime select setitimer sigaction execvpe)
AC_CHECK_HEADERS(poll.h)
AC_CHECK_FUNCS(poll)
S48_GLIB
AC_CHECK_FUNCS(dlopen)
AC_CHECK_FUNCS(socket chroot)
AC_CHECK_FUNC(strerror,
[AC_DEFINE(HAVE_STRERROR, 1,
[Define to 1 if you have the `strerror'
function.])],
[AC_LIBOBJ([c/fake/strerror.o])])
dnl Some idiot renamed `environ' as `__environ' in some versions of Linux.
dnl POSIX says it's `environ'.
AC_MSG_CHECKING([environ])
AC_TRY_LINK([],
[extern char **environ;
if (environ)
return 0;
else
return 1;],
dnl Have `environ'
[AC_DEFINE(ENVIRON_NAME,environ)
AC_MSG_RESULT([using environ])],
dnl Do not have `environ'
[AC_TRY_LINK([],
[extern char **__environ;
if (__environ)
return 0;
else
return 1;],
dnl Have `__environ'
[AC_DEFINE(ENVIRON_NAME,__environ)
AC_MSG_RESULT([using __environ])],
dnl Do not have `__environ'
[AC_MSG_WARN([no environ variable found])
AC_LIBOBJ([c/fake/environ.o])])])
S48_IEEE_ENDIANNESS($S48_BUILD_UNIVERSAL_P)
S48_NATIVE_CODE
S48_DYNAMIC_EXTERNALS
S48_PTHREADS
S48_MISALIGNED_DOUBLES
AC_SUBST(CFLAGS)
AC_SUBST(CPPFLAGS)
AC_SUBST(LDFLAGS)
AC_SUBST(LD)
AC_SUBST(DYNAMIC_EXTERNALS_CFLAGS)
AC_SUBST(DYNAMIC_EXTERNALS_LDFLAGS)
AC_SUBST(DYNAMIC_EXTERNALS_LDFLAGS_IN_PLACE)
AC_SUBST(GC_OBJS)
AC_SUBST(ADDITIONAL_EXTERNALS)
AC_SUBST(ADDITIONAL_EXTERNAL_OBJS)
AC_SUBST(BIT_SUFFIX)
dnl More payload for Autoheader
AH_TEMPLATE([ENVIRON_NAME],
[Define to the name of the `environ' variable.])
AH_TEMPLATE([HAVE_GLIB],
[Define to 1 if you have the `glib' library.])
AH_TEMPLATE([socklen_t],
[Define to the type to be used instead of `socklen_t'
if the system does not define the latter.])
AH_BOTTOM([
#include "fake/sigact.h"
#include "fake/strerror.h"
#include "fake/sys-select.h"
#include "fake/environ.h"
#include "fake/sysexits.h"
#include "fake/langinfo.h"])
AC_OUTPUT(Makefile)
|