X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=configure.ac;h=af3a1fa7788bfb6e70cbe0435fcd381c10fc545a;hb=71284101f862a5fd9d9fea85497e3eb8cd7d9720;hp=1fdfd125bc3b835162479c6047ca1af4fe74302e;hpb=a608f147289d14c60764562962bde04053a0ad55;p=ghc-hetmet.git diff --git a/configure.ac b/configure.ac index 1fdfd12..af3a1fa 100644 --- a/configure.ac +++ b/configure.ac @@ -619,27 +619,18 @@ AC_ARG_ENABLE(objectio, ) AC_SUBST(GhcLibsWithObjectIO) -dnl ** Enable the building of the OpenGL/GLUT binding in hslibs? +dnl ** Enable the building of the OpenAL binding? dnl -------------------------------------------------------------- -AC_ARG_ENABLE(hopengl, -[ --enable-hopengl - Build HOpenGL, a Haskell binding for OpenGL/GLUT. - On Mac OS X, use --enable-hopengl=x11 to use X11 instead - of the "native" libraries. -], -[GhcLibsWithHOpenGL=YES], -[GhcLibsWithHOpenGL=NO] -) -UseQuartzOpenGL=NO -if test x"$TargetOS_CPP" = x"darwin"; then - if test x"$enable_hopengl" != x"x11"; then - AC_DEFINE([USE_QUARTZ_OPENGL], [1], - [Define to 1 if native OpenGL should be used on Mac OS X]) - UseQuartzOpenGL=YES - fi -fi +AC_ARG_ENABLE([openal], + AC_HELP_STRING([--enable-openal], + [Build OpenAL binding [[default=autodetect]]]), + [GhcLibsWithOpenAL=$enableval], + [GhcLibsWithOpenAL=yes]) -AC_SUBST(GhcLibsWithHOpenGL) +# This is silly! Alas, "YES" and "NO" are currently our standard... +GhcLibsWithOpenAL=`echo $GhcLibsWithOpenAL | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + +AC_SUBST([GhcLibsWithOpenAL]) dnl ** .NET interop support? dnl -------------------------------------------------------------- @@ -661,6 +652,16 @@ 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() @@ -716,7 +717,7 @@ dnl ** figure out how to do context diffs 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 @@ -846,13 +847,13 @@ AC_CHECK_HEADER(readline/readline.h, [HaveReadlineReadlineH=YES], [HaveReadlineR 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) @@ -860,12 +861,32 @@ AC_CHECK_HEADERS(dos.h conio.h io.h std.h) dnl ** check for Windows include files AC_CHECK_HEADERS(windows.h) +dnl ** check for OpenGL/GLUT include paths and libraries +FP_CHECK_GLUT + +if test x"$no_glu" = xyes; then + GhcLibsWithOpenGL=NO +else + GhcLibsWithOpenGL=YES +fi +AC_SUBST([GhcLibsWithOpenGL]) + +if test x"$no_glut" = xyes; then + GhcLibsWithGLUT=NO +else + GhcLibsWithGLUT=YES +fi +AC_SUBST([GhcLibsWithGLUT]) + dnl ** check for OpenGL include files -if test $UseQuartzOpenGL = YES ; then - AC_CHECK_HEADERS(OpenGL/gl.h) +fp_save_cppflags="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $X_CFLAGS" +if test x"$use_quartz_opengl" = xyes; then + AC_CHECK_HEADERS([OpenGL/gl.h]) else - AC_CHECK_HEADERS(GL/gl.h) + AC_CHECK_HEADERS([GL/gl.h]) fi +CPPFLAGS="$fp_save_cppflags" dnl ** check if it is safe to include both and AC_HEADER_TIME @@ -881,7 +902,7 @@ AC_CHECK_HEADER(malloc.h,[AC_CHECK_FUNCS(valloc)]) 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 ? @@ -983,9 +1004,10 @@ FPTOOLS_CHECK_HTYPE(blkcnt_t) 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) @@ -1082,7 +1104,7 @@ AC_CHECK_FUNCS(setenv unsetenv) 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 @@ -1123,8 +1145,8 @@ if test $HaveLibMingwEx = YES ; then 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; @@ -1134,7 +1156,11 @@ AC_CHECK_LIB(iberty, xmalloc) AC_CHECK_LIB(bfd, bfd_init) dnl ** check for wide-char classifications -AC_CHECK_HEADERS(wctype.h) +dnl FreeBSD has an emtpy wctype.h, so test one of the affected +dnl functions if it's really there. +AC_CHECK_HEADERS(wctype.h, + [AC_CHECK_FUNCS(iswspace)] +) dnl ** check for readline, for Hugs and hslibs' Readline dnl ncurses supersedes termcap and curses, but for compatibility, @@ -1171,28 +1197,12 @@ else fi dnl ** check for math library -FPTOOLS_CHECK_LIBM() -AC_SUBST(LIBM) +AC_CHECK_LIB([m], [main], [LIBM="-lm"], [LIBM=]) +AC_SUBST([LIBM]) dnl ** check for X Window System AC_PATH_XTRA() -dnl ** check for OpenGL/GLUT/GLX include paths and libraries -if test $GhcLibsWithHOpenGL = 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 - GL_CFLAGS= - GL_LIBS= - GLUT_LIBS= - AC_SUBST(GL_CFLAGS) - AC_SUBST(GL_LIBS) - AC_SUBST(GLUT_LIBS) - else - FPTOOLS_HAVE_OPENGL - fi -fi - dnl ################################################################ dnl Check for libraries dnl ################################################################ @@ -1345,25 +1355,15 @@ dnl -------------------------------------------------- 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 @@ -1395,6 +1395,8 @@ esac AC_SUBST(LdCmd) FPTOOLS_LD_X +FP_EMPTY_STRUCTS + AC_MSG_CHECKING([for SIGPOLL]) AC_EGREP_CPP(we_have_sigpoll, [#include