X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=configure.ac;h=9bcbe615f15f0431e09c6ad819f509dd657b4842;hp=6bbaa35aaa504f7fb974f4966c6c8525bb98f74a;hb=e2c936e2c47429d43b8d39ad9b9c3a05ffb8e722;hpb=f5d11ad4c5cd0c1e4f5fc95c43ba68da4e399bbe diff --git a/configure.ac b/configure.ac index 6bbaa35..9bcbe61 100644 --- a/configure.ac +++ b/configure.ac @@ -478,24 +478,21 @@ dnl ** What command to use to compile compiler sources ? dnl -------------------------------------------------------------- AC_ARG_WITH(ghc, -[ --with-ghc= - Use a command different from 'ghc' to compile GHC-specific Haskell code - (including GHC itself). -], +[AC_HELP_STRING([--with-ghc=ARG], + [Use ARG as the path to GHC [default=autodetect]])], [ WithGhc="$withval" ], [ if test "$GHC" = ""; then AC_PATH_PROG(GHC,ghc) fi WithGhc=$GHC -] -) +]) AC_SUBST(WithGhc) AC_ARG_WITH(hc, -[ --with-hc= - Use a command different from 'ghc' to compile generic Haskell code. -], +[AC_HELP_STRING([--with-hc=ARG], + [Use ARG as the path to the compiler for compiling ordinary + Haskell code (default= value of --with-ghc)])], [WithHc="$withval"], [WithHc=$WithGhc] ) @@ -515,9 +512,8 @@ AC_PATH_PROG(HBC,hbc) dnl ** Which gcc to use? dnl -------------------------------------------------------------- AC_ARG_WITH(gcc, -[ --with-gcc= - Use a different command instead of 'gcc' for the GNU C compiler. -], +[AC_HELP_STRING([--with-gcc=ARG], + [Use ARG as the path to GCC [default=autodetect]])], [WhatGccIsCalled="$withval" if test "x$HostPlatform" = "xi386-unknown-mingw32"; then # Canonicalise to :/path/to/gcc @@ -531,11 +527,15 @@ AC_SUBST(WhatGccIsCalled) dnl ** Booting from .hc files? dnl -------------------------------------------------------------- AC_ARG_ENABLE(hc-boot, -[ --enable-hc-boot - Boot the Glasgow Haskell Compiler from intermediate .hc files. - (This option is mostly of interest to porters.) +[AC_HELP_STRING([--enable-hc-boot], +[Boot the Glasgow Haskell Compiler from intermediate .hc files. + (This option is mostly of interest to porters.) [default=no]])], +[ if test x"$enableval" = x"yes"; then + BootingFromHc=YES + else + BootingFromHc=NO + fi ], -[BootingFromHc=YES], [BootingFromHc=NO] ) AC_SUBST(BootingFromHc) @@ -543,12 +543,16 @@ AC_SUBST(BootingFromHc) dnl ** Booting from unregisterised .hc files? dnl -------------------------------------------------------------- AC_ARG_ENABLE(hc-boot-unregisterised, -[ --enable-hc-boot-unregisterised - With --enable-hc-boot, treat the intermediate .hc files as - unregisterised rather than registerised code. - (This option is mostly of interest to porters.) +[AC_HELP_STRING([--enable-hc-boot-unregisterised], +[ With --enable-hc-boot, treat the intermediate .hc files as + unregisterised rather than registerised code. + (This option is mostly of interest to porters.) [default=no]])], +[ if test x"$enableval" = x"yes"; then + BootingFromUnregisterisedHc=YES + else + BootingFromUnregisterisedHc=NO + fi ], -[BootingFromUnregisterisedHc=YES], [BootingFromUnregisterisedHc=NO] ) AC_SUBST(BootingFromUnregisterisedHc) @@ -567,10 +571,14 @@ fi; dnl ** Enable multi-thread friendly RTS? dnl -------------------------------------------------------------- AC_ARG_ENABLE(threaded-rts, -[ --enable-threaded-rts - Support better interop with OS threads. +[AC_HELP_STRING([--enable-threaded-rts], +[Support better interop with OS threads. [default=no]])], +[ if test x"$enableval" = x"yes"; then + ThreadedRts=YES + else + ThreadedRts=NO + fi ], -[ThreadedRts=YES], [ThreadedRts=NO] ) AC_SUBST(ThreadedRts) @@ -611,43 +619,43 @@ dnl fi dnl ** Enable the building of the ObjectIO? dnl -------------------------------------------------------------- AC_ARG_ENABLE(objectio, -[ --enable-objectio - Build ObjectIO, a portable GUI library for Haskell. +[AC_HELP_STRING([--enable-objectio], +[Build ObjectIO, a portable GUI library for Haskell. [default=no]])], +[ if test x"$enableval" = x"yes"; then + GhcLibsWithObjectIO=YES + else + GhcLibsWithObjectIO=NO + fi ], -[GhcLibsWithObjectIO=YES], [GhcLibsWithObjectIO=NO] ) 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_SUBST(GhcLibsWithHOpenGL) +AC_ARG_ENABLE([openal], + AC_HELP_STRING([--enable-openal], + [Build OpenAL binding [[default=autodetect]]]), + [ if test x"$enableval" = x"yes"; then + GhcLibsWithOpenAL=YES + else + GhcLibsWithOpenAL=NO + fi + ], + [GhcLibsWithOpenAL=yes]) + +AC_SUBST([GhcLibsWithOpenAL]) dnl ** .NET interop support? dnl -------------------------------------------------------------- AC_ARG_ENABLE(dotnet, -[ --enable-dotnet - Build .NET interop layer. -], -[DotnetSupport=YES; AC_DEFINE([WANT_DOTNET_SUPPORT], [1], [Define to 1 if you want to include .NET interop support.])], +[AC_HELP_STRING([--enable-dotnet], +[Build .NET interop layer. [default=no]])], +[ if test x"$enableval" = x"yes"; then + DotnetSupport=YES; AC_DEFINE([WANT_DOTNET_SUPPORT], [1], [Define to 1 if you want to include .NET interop support.]) + else + DotnetSupport=NO + fi], [DotnetSupport=NO] ) AC_SUBST(DotnetSupport) @@ -661,6 +669,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() @@ -778,9 +796,8 @@ else fi AC_ARG_WITH(greencard, -[ --with-greencard= - Use a command different from 'greencard' to compile GreenCard files -], +[AC_HELP_STRING([--with-greencard=ARG], + [Use ARG as the path to greencard [default=autodetct]])], [ GreenCardCmd=$withval; FPTOOLS_GREENCARD(3.00) @@ -788,10 +805,15 @@ FPTOOLS_GREENCARD(3.00) ) AC_ARG_ENABLE(src-tree-happy, -[ --enable-src-tree-happy - Build and use source tree (fptools/happy) version of Happy. +[AC_HELP_STRING([--enable-src-tree-happy], + [Build and use source tree (fptools/happy) version of Happy. + [default=autodetect]])], +[ if test x"$enableval" = x"yes"; then + UseSrcTreeHappy=YES + else + UseSrcTreeHappy=NO + fi ], -[UseSrcTreeHappy=YES], [UseSrcTreeHappy=NO] ) dnl ** check for installed happy binary + version @@ -801,20 +823,30 @@ FPTOOLS_HAPPY fi; AC_ARG_ENABLE(src-tree-haddock, -[ --enable-src-tree-haddock - Build and use source tree (fptools/haddock) version of Haddock. +[AC_HELP_STRING([--enable-src-tree-haddock], + [Build and use source tree (fptools/haddock) version of Haddock. + [default=autodetect]])], +[ if test x"$enableval" = x"yes"; then + UseSrcTreeHaddock=YES + else + UseSrcTreeHaddock=NO + fi ], -[UseSrcTreeHaddock=YES], [UseSrcTreeHaddock=NO] ) dnl ** check for installed haddock FPTOOLS_HADDOCK AC_ARG_ENABLE(src-tree-alex, -[ --enable-src-tree-alex - Build and use source tree (fptools/alex) version of Alex. +[AC_HELP_STRING([--enable-src-tree-alex], + [Build and use source tree (fptools/alex) version of Alex. + [default=autodetect]])], +[ if test x"$enableval" = x"yes"; then + UseSrcTreeAlex=YES + else + UseSrcTreeAlex=NO + fi ], -[UseSrcTreeAlex=YES], [UseSrcTreeAlex=NO] ) dnl ** check for installed alex binary + version @@ -846,13 +878,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 +892,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 @@ -986,7 +1038,7 @@ 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) @@ -1124,8 +1176,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; @@ -1176,28 +1228,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 ################################################################ @@ -1350,25 +1386,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 @@ -1400,6 +1426,8 @@ esac AC_SUBST(LdCmd) FPTOOLS_LD_X +FP_EMPTY_STRUCTS + AC_MSG_CHECKING([for SIGPOLL]) AC_EGREP_CPP(we_have_sigpoll, [#include