X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=configure.ac;h=ea5e292c1e3f4c37445f2b83846476acf538aa32;hb=4be58768d4974fd1bddae44f12a0fde1f7fe6b30;hp=64ae59c2a544e6a65d2e4592aca019e1d6befaf2;hpb=81cb7610337b33508066dd400cd371ff6033c987;p=ghc-hetmet.git diff --git a/configure.ac b/configure.ac index 64ae59c..ea5e292 100644 --- a/configure.ac +++ b/configure.ac @@ -16,8 +16,10 @@ dnl # First off, a distrib sanity check.. AC_INIT(mk/config.mk.in) -dnl * We require autoconf version 2.50 due to the use of AC_SYS_LARGEFILE and AC_MSG_NOTICE -AC_PREREQ(2.50) +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) dnl * Declare subdirectories that have a private configure script dnl @@ -570,7 +572,8 @@ AC_ARG_ENABLE(hopengl, UseQuartzOpenGL=NO if test x"$TargetOS_CPP" = x"darwin"; then if test x"$enable_hopengl" != x"x11"; then - AC_DEFINE(USE_QUARTZ_OPENGL) + AC_DEFINE([USE_QUARTZ_OPENGL], [1], + [Define to 1 if native OpenGL should be used on Mac OS X]) UseQuartzOpenGL=YES fi fi @@ -583,7 +586,7 @@ AC_ARG_ENABLE(dotnet, [ --enable-dotnet Build .NET interop layer. ], -[DotnetSupport=YES; AC_DEFINE(WANT_DOTNET_SUPPORT)], +[DotnetSupport=YES; AC_DEFINE([WANT_DOTNET_SUPPORT], [1], [Define to 1 if you want to include .NET interop support.])], [DotnetSupport=NO] ) AC_SUBST(DotnetSupport) @@ -642,29 +645,23 @@ AC_PROG_CPP dnl ** Without optimization some INLINE trickery fails for GHCi SRC_CC_OPTS="-O" -dnl ** Try to add -mno-cygwin to the C compiler options for mingw32 targets -if test x"$TargetOS_CPP" = x"mingw32"; then - FPTOOLS_CC_FLAG(-mno-cygwin,CC_SUPPORTS_MNO_CYGWIN) - SRC_CC_OPTS="$CC_SUPPORTS_MNO_CYGWIN $SRC_CC_OPTS" - CPPFLAGS="$CC_SUPPORTS_MNO_CYGWIN $CPPFLAGS" -fi +dnl ** Try to add -mno-cygwin to the C compiler options +FP_CHECK_FLAG([-mno-cygwin], [ +SRC_CC_OPTS="-mno-cygwin $SRC_CC_OPTS" +CPPFLAGS="-mno-cygwin $CPPFLAGS"]) AC_SUBST(SRC_CC_OPTS) dnl ** figure out how to do context diffs -FPTOOLS_PROG_DIFF +FP_PROG_CONTEXT_DIFF dnl ** Find find command (for Win32's benefit) FPTOOLS_FIND_FIND -dnl ** Find lex command (flex or lex) -AC_PROG_LEX -test -z "$LEX" && AC_MSG_WARN(['flex' or 'lex' not found]) - dnl ** figure out how to do a BSD-ish install AC_PROG_INSTALL dnl If you can run configure, you certainly have /bin/sh -AC_DEFINE(HAVE_BIN_SH) +AC_DEFINE([HAVE_BIN_SH], [1], [Define to 1 if you have /bin/sh.]) dnl ** how to invoke `ar' and `ranlib' FPTOOLS_PROG_AR_AND_RANLIB @@ -793,7 +790,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(Files.h arpa/inet.h assert.h console.h ctype.h dirent.h errno.h fcntl.h float.h ftw.h grp.h ieee754.h inttypes.h limits.h malloc.h memory.h nlist.h pascal.h pwd.h sgtty.h siginfo.h signal.h stat.h stdint.h stdlib.h stddef.h stdarg.h string.h sys/fault.h sys/file.h sys/ioctl.h sys/limits.h sys/mman.h sys/param.h sys/procfs.h sys/resource.h sys/signal.h sys/socket.h netdb.h netinet/in.h netinet/tcp.h sys/stat.h sys/syscall.h sys/time.h sys/timeb.h sys/timers.h sys/times.h sys/types.h sys/un.h sys/utsname.h sys/vadvise.h sys/wait.h termio.h termios.h time.h types.h unistd.h utime.h values.h bfd.h winsock.h pthread.h sys/uio.h) +AC_CHECK_HEADERS(Files.h arpa/inet.h assert.h console.h ctype.h dirent.h errno.h fcntl.h float.h ftw.h grp.h ieee754.h inttypes.h limits.h locale.h malloc.h memory.h nlist.h pascal.h pwd.h sgtty.h siginfo.h signal.h stat.h stdint.h stdlib.h stddef.h stdarg.h string.h sys/fault.h sys/file.h sys/ioctl.h sys/limits.h sys/mman.h sys/param.h sys/procfs.h sys/resource.h sys/signal.h sys/socket.h netdb.h netinet/in.h netinet/tcp.h sys/stat.h sys/syscall.h sys/time.h sys/timeb.h sys/timers.h sys/times.h sys/types.h sys/un.h sys/utsname.h sys/vadvise.h sys/wait.h termio.h termios.h time.h types.h unistd.h utime.h values.h bfd.h winsock.h pthread.h sys/uio.h) AC_CHECK_HEADER(unistd.h,[AC_CHECK_FUNCS(lchown)]) AC_CHECK_HEADER(readline/readline.h, [HaveReadlineReadlineH=YES], [HaveReadlineReadlineH=NO]) @@ -801,10 +798,10 @@ AC_CHECK_HEADER(readline/history.h, [HaveReadlineHistoryH=YES], [HaveReadlineHis if test $HaveReadlineReadlineH = YES && test $HaveReadlineHistoryH = YES ; then HaveReadlineHeaders=YES - AC_DEFINE(HAVE_READLINE_HEADERS,1) + AC_DEFINE([HAVE_READLINE_HEADERS], [1], [Define to 1 if readline/readline.h and readline/history.h exist.]) else HaveReadlineHeaders=NO - AC_DEFINE(HAVE_READLINE_HEADERS,0) + AC_DEFINE([HAVE_READLINE_HEADERS], [0], [Define to 1 if readline/readline.h and readline/history.h exist.]) fi AC_SUBST(HaveReadlineHeaders) @@ -842,56 +839,63 @@ dnl ** how do we get a timezone name, and UTC offset ? AC_STRUCT_TIMEZONE dnl ** do we have altzone? -FP_ALTZONE +FP_DECL_ALTZONE dnl ** does struct stat contain st_blksize? AC_STRUCT_ST_BLKSIZE dnl ** do we have long longs? -FPTOOLS_C_LONG_LONG +AC_CHECK_TYPES([long long]) dnl ** check what fields struct msghdr contains -FPTOOLS_MSGHDR_MSG_ACCRIGHTS -FPTOOLS_MSGHDR_MSG_CONTROL +AC_CHECK_HEADERS([sys/types.h sys/socket.h sys/uio.h]) +AC_CHECK_MEMBERS([struct msghdr.msg_control, struct msghdr.msg_accrights], [], [], [#if HAVE_SYS_TYPES_H +# include +#endif +#if HAVE_SYS_SOCKET_H +# include +#endif +#if HAVE_SYS_UIO_H +# include +#endif]) dnl ** what are the sizes of various types -dnl (these must come before GHC_CHECK_ALIGNMENT) AC_CHECK_SIZEOF(char, 1) AC_CHECK_SIZEOF(double, 8) AC_CHECK_SIZEOF(float, 4) AC_CHECK_SIZEOF(int, 4) AC_CHECK_SIZEOF(long, 4) -if test "$fptools_cv_have_long_long" = yes; then +if test "$ac_cv_type_long_long" = yes; then AC_CHECK_SIZEOF(long long, 8) fi AC_CHECK_SIZEOF(short, 2) AC_CHECK_SIZEOF(unsigned char, 1) AC_CHECK_SIZEOF(unsigned int, 4) AC_CHECK_SIZEOF(unsigned long, 4) -if test "$fptools_cv_have_long_long" = yes; then +if test "$ac_cv_type_long_long" = yes; then AC_CHECK_SIZEOF(unsigned long long, 8) fi AC_CHECK_SIZEOF(unsigned short, 2) AC_CHECK_SIZEOF(void *, 4) dnl ** what are alignment constraints on various types -FPTOOLS_CHECK_ALIGNMENT(char) -FPTOOLS_CHECK_ALIGNMENT(double) -FPTOOLS_CHECK_ALIGNMENT(float) -FPTOOLS_CHECK_ALIGNMENT(int) -FPTOOLS_CHECK_ALIGNMENT(long) -if test "$fptools_cv_have_long_long" = yes; then -FPTOOLS_CHECK_ALIGNMENT(long long) +FP_CHECK_ALIGNMENT(char) +FP_CHECK_ALIGNMENT(double) +FP_CHECK_ALIGNMENT(float) +FP_CHECK_ALIGNMENT(int) +FP_CHECK_ALIGNMENT(long) +if test "$ac_cv_type_long_long" = yes; then +FP_CHECK_ALIGNMENT(long long) fi -FPTOOLS_CHECK_ALIGNMENT(short) -FPTOOLS_CHECK_ALIGNMENT(unsigned char) -FPTOOLS_CHECK_ALIGNMENT(unsigned int) -FPTOOLS_CHECK_ALIGNMENT(unsigned long) -if test "$fptools_cv_have_long_long" = yes; then -FPTOOLS_CHECK_ALIGNMENT(unsigned long long) +FP_CHECK_ALIGNMENT(short) +FP_CHECK_ALIGNMENT(unsigned char) +FP_CHECK_ALIGNMENT(unsigned int) +FP_CHECK_ALIGNMENT(unsigned long) +if test "$ac_cv_type_long_long" = yes; then +FP_CHECK_ALIGNMENT(unsigned long long) fi -FPTOOLS_CHECK_ALIGNMENT(unsigned short) -FPTOOLS_CHECK_ALIGNMENT(void *) +FP_CHECK_ALIGNMENT(unsigned short) +FP_CHECK_ALIGNMENT(void *) dnl ** map standard C types and ISO types to Haskell types FPTOOLS_CHECK_HTYPE(char) @@ -903,7 +907,7 @@ FPTOOLS_CHECK_HTYPE(int) FPTOOLS_CHECK_HTYPE(unsigned int) FPTOOLS_CHECK_HTYPE(long) FPTOOLS_CHECK_HTYPE(unsigned long) -if test "$fptools_cv_have_long_long" = yes; then +if test "$ac_cv_type_long_long" = yes; then FPTOOLS_CHECK_HTYPE(long long) FPTOOLS_CHECK_HTYPE(unsigned long long) fi @@ -971,7 +975,7 @@ main() { [have_winexec=1], [have_winexec=0]) if test "$have_winexec" = "1"; then -AC_DEFINE(HAVE_WINEXEC) + AC_DEFINE([HAVE_WINEXEC], [1], [Define to 1 if you have the WinExec function.]) fi FPTOOLS_TRY_LINK_NOWARN(,[ @@ -987,7 +991,7 @@ main() { [have_getmodulefilename=1], [have_getmodulefilename=0]) if test "$have_getmodulefilename" = "1"; then -AC_DEFINE(HAVE_GETMODULEFILENAME) +AC_DEFINE([HAVE_GETMODULEFILENAME], [1], [Define to 1 if you have the GetModuleFileName function.]) fi dnl ** check return type of signal handlers @@ -1011,7 +1015,7 @@ dnl fi dnl On BCC, signal handlers have type "int(void)", elsewhere its "void(int)". AC_TYPE_SIGNAL if test "$ac_cv_type_signal" = void; then -AC_DEFINE(VOID_INT_SIGNALS) + AC_DEFINE([VOID_INT_SIGNALS], [1], [Define to 1 if signal handlers have type void (*)(int). Otherwise, they're assumed to have type int (*)(void).]) fi dnl ** check for more functions @@ -1053,7 +1057,7 @@ if test $HostPlatform = "powerpc-apple-darwin"; then LIBS="-framework HaskellSupport" AC_TRY_LINK_FUNC(__gmpz_fdiv_qr, HaveFrameworkHaskellSupport=YES,) if test $HaveFrameworkHaskellSupport = YES; then - AC_DEFINE(HAVE_FRAMEWORK_HASKELLSUPPORT) + AC_DEFINE([HAVE_FRAMEWORK_HASKELLSUPPORT], [1], [Define to 1 if the HaskellSupport.framework is installed (Mac OS X only).]) fi; LIBS="$save_libs" AC_MSG_RESULT([$HaveFrameworkHaskellSupport]) @@ -1065,7 +1069,7 @@ AC_CHECK_LIB(mingwex, closedir, HaveLibMingwEx=YES, HaveLibMingwEx=NO) AC_SUBST(HaveLibMingwEx) if test $HaveLibMingwEx = YES ; then - AC_DEFINE(HAVE_MINGWEX) + AC_DEFINE([HAVE_MINGWEX], [1], [Define to 1 if you have the mingwex library.]) fi if test "$HaveLibGmp" = "NO"; then @@ -1079,6 +1083,9 @@ dnl the order of these tests matters: bfd needs liberty AC_CHECK_LIB(iberty, xmalloc) AC_CHECK_LIB(bfd, bfd_init) +dnl ** check for wide-char classifications +AC_CHECK_HEADERS(wctype.h) + dnl ** check for readline, for Hugs and hslibs' Readline dnl ncurses supersedes termcap and curses, but for compatibility, dnl we have to check for all... @@ -1093,24 +1100,24 @@ if test $HaveLibTermcap = YES ; then fi if test $HaveLibTermcap = YES && test x"$HaveLibReadline" = xYES ; then - AC_DEFINE(HAVE_READLINE_LIBS,1) + AC_DEFINE([HAVE_READLINE_LIBS], [1], [Define to 1 if readline plus any additional libs needed for it exist.]) LibsReadline="readline $LibTermcap" else - AC_DEFINE(HAVE_READLINE_LIBS,0) + AC_DEFINE([HAVE_READLINE_LIBS], [0], [Define to 1 if readline plus any additional libs needed for it exist.]) LibsReadline= fi AC_SUBST(LibsReadline) if test "$HaveLibReadline"; then AC_CHECK_LIB(readline, rl_erase_empty_line, - [AC_DEFINE(HAVE_READLINE_4, 1)], - [AC_DEFINE(HAVE_READLINE_4, 0)]) + [AC_DEFINE([HAVE_READLINE_4], [1], [Define to 1 if readline has version >= 4.0.])], + [AC_DEFINE([HAVE_READLINE_4], [0], [Define to 1 if readline has version >= 4.0.])]) AC_CHECK_LIB(readline, rl_free_undo_list, - [AC_DEFINE(HAVE_READLINE_4_2, 1)], - [AC_DEFINE(HAVE_READLINE_4_2, 0)]) + [AC_DEFINE([HAVE_READLINE_4_2], [1], [Define to 1 if readline has version >= 4.2.])], + [AC_DEFINE([HAVE_READLINE_4_2], [0], [Define to 1 if readline has version >= 4.2.])]) else - AC_DEFINE(HAVE_READLINE_4, 0) - AC_DEFINE(HAVE_READLINE_4_2, 0) + AC_DEFINE([HAVE_READLINE_4], [0], [Define to 1 if readline has version >= 4.0.]) + AC_DEFINE([HAVE_READLINE_4_2], [0], [Define to 1 if readline has version >= 4.2.]) fi dnl ** check for math library @@ -1149,11 +1156,11 @@ if test $HaveFrameworkHaskellSupport = YES; then HaveLibDL=NO HaveRtldNext=NO HaveRtldLocal=YES - AC_DEFINE(HAVE_RTLDLOCAL) + AC_DEFINE([HAVE_RTLDLOCAL], [1], [Define to 1 if RTLD_LOCAL is available.]) HaveRtldGlobal=YES - AC_DEFINE(HAVE_RTLDGLOBAL) + AC_DEFINE([HAVE_RTLDGLOBAL], [1], [Define to 1 if RTLD_GLOBAL is available.]) HaveRtldNow=YES - AC_DEFINE(HAVE_RTLDNOW) + AC_DEFINE([HAVE_RTLDNOW], [1], [Define to 1 if we can see RTLD_NOW in dlfcn.h.]) AC_SUBST(HaveLibDL) AC_SUBST(HaveRtldNext) AC_SUBST(HaveRtldLocal) @@ -1162,7 +1169,7 @@ if test $HaveFrameworkHaskellSupport = YES; then else AC_CHECK_LIB(dl, dlopen, [HaveLibDL=YES - AC_DEFINE(HAVE_LIBDL) + AC_DEFINE([HAVE_LIBDL], [1], [Define to 1 if you need -ldl to get dlopen().]) LIBS="$LIBS -ldl"], [HaveLibDL=NO]) AC_CHECK_FUNCS(dlopen) @@ -1178,7 +1185,7 @@ else #endif ], [ AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_RTLDNEXT) + AC_DEFINE([HAVE_RTLDNEXT], [1], [Define to 1 if we can see RTLD_NEXT in dlfcn.h.]) HaveRtldNext=YES ], [ AC_MSG_RESULT(no) @@ -1256,8 +1263,7 @@ AC_CACHE_CHECK([return type of usleep], cv_func_usleep_return_type, [cv_func_usleep_return_type=int])]) case "$cv_func_usleep_return_type" in "void" ) - AC_DEFINE(USLEEP_RETURNS_VOID, 1, - [Define if the system headers declare usleep to return void.]) + AC_DEFINE([USLEEP_RETURNS_VOID], [1], [Define if the system headers declare usleep to return void.]) ;; esac @@ -1266,7 +1272,7 @@ 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) AC_MSG_RESULT(yes) ], + [ 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 -------------------------------------------------- @@ -1274,7 +1280,7 @@ 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) AC_MSG_RESULT(yes) ], + [ 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 -------------------------------------------------- @@ -1282,7 +1288,7 @@ 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) AC_MSG_RESULT(yes) ], + [ 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 -------------------------------------------------- @@ -1322,9 +1328,6 @@ AC_FUNC_VFORK dnl ** determine whether or not const works AC_C_CONST -dnl ** determine whether ANSI-function prototypes work? -AC_C_PROTOTYPES - dnl ** are we big endian? AC_C_BIGENDIAN @@ -1348,7 +1351,7 @@ AC_EGREP_CPP(we_have_sigpoll, #ifdef SIGPOLL we_have_sigpoll #endif -], AC_DEFINE(HAVE_SIGPOLL) haveSIGPOLL=yes, haveSIGPOLL=no) +], 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]) @@ -1360,7 +1363,7 @@ we_have_that_sysconf_thing #endif ], [AC_MSG_RESULT([yes]) -AC_DEFINE(HAVE_SC_GETGR_R_SIZE_MAX)], +AC_DEFINE([HAVE_SC_GETGR_R_SIZE_MAX], [1], [Define to 1 if defines _SC_GETGR_R_SIZE_MAX.])], [AC_MSG_RESULT([no])]) AC_MSG_CHECKING([for _SC_GETPW_R_SIZE_MAX]) @@ -1372,7 +1375,7 @@ we_have_that_sysconf_thing #endif ], [AC_MSG_RESULT([yes]) -AC_DEFINE(HAVE_SC_GETPW_R_SIZE_MAX)], +AC_DEFINE([HAVE_SC_GETPW_R_SIZE_MAX], [1], [Define to 1 if defines _SC_GETPW_R_SIZE_MAX.])], [AC_MSG_RESULT([no])]) AC_OUTPUT(mk/config.mk, echo timestamp > mk/stamp-h )