[project @ 2004-11-03 12:31:42 by ross]
[ghc-hetmet.git] / configure.ac
index 7c25aad..491e596 100644 (file)
@@ -13,13 +13,15 @@ dnl
 # see what flags are available. (Better yet, read the documentation!)
 #
 
+AC_INIT([fptools build system], [1.0], [cvs-fptools@haskell.org], [fptools])
+
 # First off, a distrib sanity check..
-AC_INIT(mk/config.mk.in)
+AC_CONFIG_SRCDIR([mk/config.mk.in])
 
 dnl * We require autoconf version 2.52
 dnl We need 2.50 due to the use of AC_SYS_LARGEFILE and AC_MSG_NOTICE.
 dnl We need 2.52 due to the use of AS_TR_CPP and AS_TR_SH.
-AC_PREREQ(2.52)
+AC_PREREQ([2.52])
 
 dnl * Declare subdirectories that have a private configure script
 dnl
@@ -45,7 +47,7 @@ dnl * Choose host(/target/build) platform
 dnl--------------------------------------------------------------------
 
 dnl Guess host/target/build platform(s) if necessary.
-AC_CANONICAL_SYSTEM
+AC_CANONICAL_TARGET
 
 # "$host" defaults to "$target"
 if test "x$host" = xNONE ; then
@@ -735,7 +737,7 @@ AC_ARG_ENABLE([openal],
        GhcLibsWithOpenAL=NO
     fi
   ],
-  [GhcLibsWithOpenAL=yes])
+  [GhcLibsWithOpenAL=YES])
 
 AC_SUBST([GhcLibsWithOpenAL])
 
@@ -862,6 +864,9 @@ FP_PROG_FO_PROCESSOR
 dnl ** check for ghc-pkg command
 FP_PROG_GHC_PKG
 
+dnl Check whether this GHC has readline installed
+FPTOOLS_GHC_HAS_READLINE
+
 AC_ARG_WITH(greencard,
 [AC_HELP_STRING([--with-greencard=ARG],
         [Use ARG as the path to greencard  [default=autodetct]])],
@@ -938,7 +943,7 @@ dnl    off_t, because it will affect the result of that test.
 AC_SYS_LARGEFILE
 
 dnl ** check for specific header (.h) files that we are interested in
-AC_CHECK_HEADERS([arpa/inet.h bfd.h ctype.h dirent.h dlfcn.h errno.h fcntl.h grp.h limits.h locale.h netdb.h netinet/in.h netinet/tcp.h nlist.h pthread.h pwd.h signal.h sys/mman.h sys/resource.h sys/socket.h sys/time.h sys/timeb.h sys/timers.h sys/times.h sys/uio.h sys/un.h sys/utsname.h sys/wait.h termios.h time.h utime.h windows.h winsock.h])
+AC_CHECK_HEADERS([bfd.h ctype.h dirent.h dlfcn.h errno.h fcntl.h grp.h limits.h locale.h nlist.h pthread.h pwd.h signal.h sys/mman.h sys/resource.h sys/time.h sys/timeb.h sys/timers.h sys/times.h sys/utsname.h sys/wait.h termios.h time.h utime.h windows.h winsock.h])
 
 AC_CHECK_HEADER([unistd.h], [AC_CHECK_FUNCS(lchown)])
 
@@ -995,23 +1000,9 @@ AC_STRUCT_TIMEZONE
 dnl ** do we have altzone?
 FP_DECL_ALTZONE
 
-dnl ** does struct stat contain st_blksize?
-AC_STRUCT_ST_BLKSIZE
-
 dnl ** do we have long longs?
 AC_CHECK_TYPES([long long])
 
-dnl ** check what fields struct msghdr contains
-AC_CHECK_MEMBERS([struct msghdr.msg_control, struct msghdr.msg_accrights], [], [], [#if HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#if HAVE_SYS_SOCKET_H
-# include <sys/socket.h>
-#endif
-#if HAVE_SYS_UIO_H
-# include <sys/uio.h>
-#endif])
-
 dnl ** what are the sizes of various types
 AC_CHECK_SIZEOF(char,               1)
 AC_CHECK_SIZEOF(double,             8)
@@ -1123,16 +1114,16 @@ dnl ** check return type of signal handlers
 dnl Foo: assumes we can use prototypes.
 dnl On BCC, signal handlers have type "int(void)", elsewhere its "void(int)".
 dnl AC_CACHE_CHECK([type of signal handlers], ac_cv_type_signal_handler,
-dnl [AC_TRY_COMPILE([#include <sys/types.h>
+dnl [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
 dnl #include <signal.h>
 dnl #ifdef signal
 dnl #undef signal
 dnl #endif
 dnl void (*signal (int, void (*)(int)))(int);
-dnl ],
-dnl [int i;], 
-dnl ac_cv_type_signal_handler=void_int,
-dnl ac_cv_type_signal_handler=int_void)])
+dnl ]],
+dnl [[int i;]])],
+dnl [ac_cv_type_signal_handler=void_int],
+dnl [ac_cv_type_signal_handler=int_void])])
 dnl if test "$ac_cv_type_signal_handler" = void_int; then
 dnl AC_DEFINE(VOID_INT_SIGNALS)
 dnl fi
@@ -1144,7 +1135,7 @@ if test "$ac_cv_type_signal" = void; then
 fi
 
 dnl ** check for more functions
-AC_CHECK_FUNCS([ftime getclock getgrgid_r getgrnam_r getpagesize getpwnam_r getpwuid_r getrusage gettimeofday gmtime_r localtime_r lstat readdir_r readlink setenv setitimer siginterrupt symlink sysconf times unsetenv])
+AC_CHECK_FUNCS([ftime getclock getgrgid_r getgrnam_r getpagesize getpwnam_r getpwuid_r getpwnam getpwuid getrusage gettimeofday gmtime_r localtime_r lstat readdir_r readlink setenv setitimer siginterrupt symlink sysconf times unsetenv])
 
 dnl ** Solaris2 needs additionl flag for getpw*_r()
 case "$TargetPlatform" in
@@ -1370,30 +1361,6 @@ case "$cv_func_usleep_return_type" in
 esac
 
 dnl --------------------------------------------------
-dnl * test for in_addr_t
-dnl --------------------------------------------------
-AC_MSG_CHECKING(for in_addr_t in netinet/in.h)
-AC_EGREP_HEADER(in_addr_t, netinet/in.h,
- [ AC_DEFINE([HAVE_IN_ADDR_T], [1], [Define to 1 if in_addr_t is available.]) AC_MSG_RESULT(yes) ],
- AC_MSG_RESULT(no))
-
-dnl --------------------------------------------------
-dnl * test for Linux sendfile(2)
-dnl --------------------------------------------------
-AC_MSG_CHECKING(for sendfile in sys/sendfile.h)
-AC_EGREP_HEADER(sendfile, sys/sendfile.h,
- [ AC_DEFINE([HAVE_LINUX_SENDFILE], [1], [Define to 1 if you have a Linux sendfile(2) implementation.]) AC_MSG_RESULT(yes) ],
- AC_MSG_RESULT(no))
-
-dnl --------------------------------------------------
-dnl * test for BSD sendfile(2)
-dnl --------------------------------------------------
-AC_MSG_CHECKING(for sendfile in sys/socket.h)
-AC_EGREP_HEADER(sendfile, sys/socket.h,
- [ AC_DEFINE([HAVE_BSD_SENDFILE], [1], [Define to 1 if you have a BSDish sendfile(2) implementation.]) AC_MSG_RESULT(yes) ],
- AC_MSG_RESULT(no))
-
-dnl --------------------------------------------------
 dnl * test for GTK+
 dnl --------------------------------------------------
 
@@ -1415,7 +1382,7 @@ dnl ** can we get alloca?
 AC_FUNC_ALLOCA
 
 dnl ** Working vfork?
-AC_FUNC_VFORK
+AC_FUNC_FORK
 
 dnl ** determine whether or not const works
 AC_C_CONST
@@ -1445,37 +1412,6 @@ FPTOOLS_LD_X
 
 FP_EMPTY_STRUCTS
 
-AC_MSG_CHECKING([for SIGPOLL])
-AC_EGREP_CPP(we_have_sigpoll,
-[#include <signal.h>
-#ifdef SIGPOLL
-we_have_sigpoll
-#endif
-], AC_DEFINE([HAVE_SIGPOLL], [1], [Define to 1 if you have the sigpoll() function.]) haveSIGPOLL=yes, haveSIGPOLL=no)
-AC_MSG_RESULT([$haveSIGPOLL])
-
-AC_MSG_CHECKING([for _SC_GETGR_R_SIZE_MAX])
-AC_EGREP_CPP(we_have_that_sysconf_thing,
-[
-#include <unistd.h>
-#ifdef _SC_GETGR_R_SIZE_MAX
-we_have_that_sysconf_thing
-#endif
-],
-[AC_MSG_RESULT([yes])
-AC_DEFINE([HAVE_SC_GETGR_R_SIZE_MAX], [1], [Define to 1 if <unistd.h> defines _SC_GETGR_R_SIZE_MAX.])],
-[AC_MSG_RESULT([no])])
-
-AC_MSG_CHECKING([for _SC_GETPW_R_SIZE_MAX])
-AC_EGREP_CPP(we_have_that_sysconf_thing,
-[
-#include <unistd.h>
-#ifdef _SC_GETPW_R_SIZE_MAX
-we_have_that_sysconf_thing
-#endif
-],
-[AC_MSG_RESULT([yes])
-AC_DEFINE([HAVE_SC_GETPW_R_SIZE_MAX], [1], [Define to 1 if <unistd.h> defines _SC_GETPW_R_SIZE_MAX.])],
-[AC_MSG_RESULT([no])])
-
-AC_OUTPUT(mk/config.mk, echo timestamp > mk/stamp-h )
+AC_CONFIG_FILES([mk/config.mk])
+AC_CONFIG_COMMANDS([mk/stamp-h],[echo timestamp > mk/stamp-h])
+AC_OUTPUT