)
AC_SUBST(GhcLibsWithObjectIO)
-dnl ** Enable the building of the OpenGL/GLUT binding in hslibs?
+dnl ** Enable the building of the OpenGL/GLUT binding?
dnl --------------------------------------------------------------
AC_ARG_ENABLE(hopengl,
[ --enable-hopengl
On Mac OS X, use --enable-hopengl=x11 to use X11 instead
of the "native" libraries.
],
-[GhcLibsWithHOpenGL=YES],
-[GhcLibsWithHOpenGL=NO]
+[GhcLibsWithOpenGL=YES; GhcLibsWithGLUT=YES],
+[GhcLibsWithOpenGL=NO; GhcLibsWithGLUT=NO]
)
UseQuartzOpenGL=NO
if test x"$TargetOS_CPP" = x"darwin"; then
fi
fi
-AC_SUBST(GhcLibsWithHOpenGL)
+AC_SUBST([GhcLibsWithOpenGL])
+AC_SUBST([GhcLibsWithGLUT])
+
+dnl ** Enable the building of the OpenAL binding?
+dnl --------------------------------------------------------------
+AC_ARG_ENABLE([openal],
+ AC_HELP_STRING([--enable-openal],
+ [Build OpenAL binding [[default=autodetect]]]),
+ [GhcLibsWithOpenAL=$enableval],
+ [GhcLibsWithOpenAL=yes])
+
+# This is silly! Alas, "YES" and "NO" are currently our standard...
+GhcLibsWithOpenAL=`echo $GhcLibsWithOpenGL | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+
+AC_SUBST([GhcLibsWithOpenAL])
dnl ** .NET interop support?
dnl --------------------------------------------------------------
dnl * General configuration checks
dnl --------------------------------------------------------------
+dnl ** Can the unix package be built?
+dnl --------------------------------------------------------------
+
+if test x"$TargetPlatform" = x"i386-unknown-mingw32"; then
+ GhcLibsWithUnix=NO
+else
+ GhcLibsWithUnix=YES
+fi
+AC_SUBST([GhcLibsWithUnix])
+
dnl ** does #! work?
AC_SYS_INTERPRETER()
FP_PROG_CONTEXT_DIFF
dnl ** Find find command (for Win32's benefit)
-FPTOOLS_FIND_FIND
+FP_PROG_FIND
dnl ** figure out how to do a BSD-ish install
AC_PROG_INSTALL
AC_CHECK_HEADER(readline/history.h, [HaveReadlineHistoryH=YES], [HaveReadlineHistoryH=NO])
if test $HaveReadlineReadlineH = YES && test $HaveReadlineHistoryH = YES ; then
- HaveReadlineHeaders=YES
+ GhcLibsWithReadline=YES
AC_DEFINE([HAVE_READLINE_HEADERS], [1], [Define to 1 if readline/readline.h and readline/history.h exist.])
else
- HaveReadlineHeaders=NO
+ GhcLibsWithReadline=NO
AC_DEFINE([HAVE_READLINE_HEADERS], [0], [Define to 1 if readline/readline.h and readline/history.h exist.])
fi
-AC_SUBST(HaveReadlineHeaders)
+AC_SUBST(GhcLibsWithReadline)
dnl ** check for DOS include files
AC_CHECK_HEADERS(dos.h conio.h io.h std.h)
AC_CHECK_HEADERS(windows.h)
dnl ** check for OpenGL include files
+fp_save_cppflags="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS $X_CFLAGS"
if test $UseQuartzOpenGL = YES ; then
AC_CHECK_HEADERS(OpenGL/gl.h)
else
AC_CHECK_HEADERS(GL/gl.h)
fi
+CPPFLAGS="$fp_save_cppflags"
dnl ** check if it is safe to include both <time.h> and <sys/time.h>
AC_HEADER_TIME
dnl ** check for POSIX regex
HavePosixRegex=NO
-AC_CHECK_HEADER(regex.h,[AC_CHECK_FUNC(regcomp, [HavePosixRegex=YES])])
+AC_CHECK_HEADERS(regex.h,[AC_CHECK_FUNC(regcomp, [HavePosixRegex=YES])])
AC_SUBST(HavePosixRegex)
dnl ** how do we get a timezone name, and UTC offset ?
FPTOOLS_CHECK_HTYPE(nlink_t)
FPTOOLS_CHECK_HTYPE(ssize_t)
FPTOOLS_CHECK_HTYPE(rlim_t)
+FPTOOLS_CHECK_HTYPE(wint_t)
dnl ** Map OpenGL data types to Haskell types
-if test $GhcLibsWithHOpenGL = YES ; then
+if test $GhcLibsWithOpenGL = YES ; then
FPTOOLS_CHECK_HTYPE(GLboolean)
FPTOOLS_CHECK_HTYPE(GLbyte)
FPTOOLS_CHECK_HTYPE(GLubyte)
dnl ** check for specific library functions that we are interested in
-AC_CHECK_FUNCS(access ftime getclock getpagesize getrusage gettimeofday mktime mprotect readlink setitimer stat lstat symlink sysconf timelocal times vadvise localtime_r gmtime_r readdir_r getgrgid_r getgrnam_r getpwuid_r getpwnam_r)
+AC_CHECK_FUNCS(access ftime getclock getpagesize getrusage gettimeofday mktime mprotect readlink setitimer stat lstat siginterrupt symlink sysconf timelocal times vadvise localtime_r gmtime_r readdir_r getgrgid_r getgrnam_r getpwuid_r getpwnam_r)
dnl ** Solaris2 needs additionl flag for getpw*_r()
case "$TargetPlatform" in
fi
if test "$HaveLibGmp" = "NO"; then
-if test "$HostArch_CPP" = "ia64"; then
-AC_MSG_ERROR([You need to install libgmp (the in-tree version does not work on IA64).])
+if test "$HostArch_CPP" = "ia64" -o "$HostArch_CPP" = "mipseb" ; then
+AC_MSG_ERROR([You need to install libgmp (the in-tree version does not work on IA64 or mips64).])
fi;
fi;
AC_PATH_XTRA()
dnl ** check for OpenGL/GLUT/GLX include paths and libraries
-if test $GhcLibsWithHOpenGL = YES ; then
+if test $GhcLibsWithOpenGL = YES ; then
if test $UseQuartzOpenGL = YES ; then
dnl Take a shortcut for Mac OS X native OpenGL:
dnl It's in a non-standard location, but it's always there
dnl * test for GTK+
dnl --------------------------------------------------
-AC_PATH_PROGS(GTK_CONFIG, gtk-config gtk12-config)
-if test "$GTK_CONFIG" != ""; then
- AC_CACHE_CHECK([for version of GTK+], fptools_cv_gtk_version, [
- fptools_cv_gtk_version=`$GTK_CONFIG --version`
- ])
- GTK_VERSION=$fptools_cv_gtk_version
-else
- GTK_VERSION=
+AC_PATH_PROGS([GTK_CONFIG], [gtk-config gtk12-config])
+if test -n "$GTK_CONFIG"; then
+ AC_CACHE_CHECK([for version of GTK+], [fp_cv_gtk_version],
+ [fp_cv_gtk_version=`$GTK_CONFIG --version`])
+ FP_COMPARE_VERSIONS([$fp_cv_gtk_version], [-lt], [1.2],
+ [AC_MSG_WARN([GTK+ not usable, need at least version 1.2])
+ GTK_CONFIG=])
fi
-
-case $fptools_cv_gtk_version in
- 1.[[23]].*) ;;
- *) AC_MSG_WARN([GTK+ not usable; need at least version 1.2])
- GTK_CONFIG=
- ;;
-esac
-
-AC_SUBST(GTK_CONFIG)
-AC_SUBST(GTK_VERSION)
+AC_SUBST([GTK_CONFIG])
dnl --------------------------------------------------
dnl * Miscellaneous feature tests
AC_SUBST(LdCmd)
FPTOOLS_LD_X
+FP_EMPTY_STRUCTS
+
AC_MSG_CHECKING([for SIGPOLL])
AC_EGREP_CPP(we_have_sigpoll,
[#include <signal.h>