X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=configure.ac;h=547f864f94021ce9e62857924b4b1da4976ad751;hb=a69327edb251674e7828445fbf1263ffc55823a2;hp=a1ff632a07d15e4bd1cb512ae25e7183b37bb0a4;hpb=b38fc90a990ebdc9bb30525e1656f7fc80c3c170;p=ghc-hetmet.git diff --git a/configure.ac b/configure.ac index a1ff632..547f864 100644 --- a/configure.ac +++ b/configure.ac @@ -452,11 +452,16 @@ dnl Find 'hardtop_plat', the native format for 'hardtop' (i.e., right kind of \d dnl case $HostPlatform in i386-unknown-mingw32 | i386-unknown-cygwin32) - # convert $hardtop to a path that mingw will understand too - cyghardtop=${hardtop} - hardtop=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@/@g'` - hardtop_plat=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@\\\\\\\\@g'` - ;; + if test ${OSTYPE} != "msys" + then + # convert $hardtop to a path that mingw will understand too + cyghardtop=${hardtop} + hardtop=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@/@g'` + hardtop_plat=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@\\\\\\\\@g'` + else + hardtop_plat=${hardtop} + fi + ;; *) hardtop_plat=${hardtop} ;; @@ -478,24 +483,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,13 +517,16 @@ 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 - withval=`cygpath -w ${withval} | sed -e 's@\\\\@/@g' ` + if test "x$HostPlatform" = "xi386-unknown-mingw32" + then + if test ${OSTYPE} != "msys" + then + # Canonicalise to :/path/to/gcc + withval=`cygpath -w ${withval} | sed -e 's@\\\\@/@g' ` + fi fi; CC="$withval"], [WhatGccIsCalled="gcc"] @@ -531,11 +536,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 +552,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 +580,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,10 +628,14 @@ 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) @@ -624,21 +645,26 @@ dnl -------------------------------------------------------------- AC_ARG_ENABLE([openal], AC_HELP_STRING([--enable-openal], [Build OpenAL binding [[default=autodetect]]]), - [GhcLibsWithOpenAL=$enableval], + [ if test x"$enableval" = x"yes"; then + GhcLibsWithOpenAL=YES + else + GhcLibsWithOpenAL=NO + fi + ], [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 -------------------------------------------------------------- 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) @@ -757,7 +783,12 @@ case $Catalog in glafp*) case $HostOS_CPP in mingw32) - Catalog=`cygpath -w $hardtop/$Catalog` + if test ${OSTYPE} == "msys" + then + Catalog=$hardtop/$Catalog + else + Catalog=`cygpath -w $hardtop/$Catalog` + fi ;; *) Catalog=$hardtop/$Catalog ;; @@ -779,9 +810,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) @@ -789,10 +819,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 @@ -802,20 +837,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 @@ -864,14 +909,14 @@ AC_CHECK_HEADERS(windows.h) dnl ** check for OpenGL/GLUT include paths and libraries FP_CHECK_GLUT -if test x"$no_glu" = xyes; then +if test x"$no_GLU" = xyes; then GhcLibsWithOpenGL=NO else GhcLibsWithOpenGL=YES fi AC_SUBST([GhcLibsWithOpenGL]) -if test x"$no_glut" = xyes; then +if test x"$no_GLUT" = xyes; then GhcLibsWithGLUT=NO else GhcLibsWithGLUT=YES @@ -1030,41 +1075,11 @@ FP_CHECK_CONSTS([E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EADV EAFNOSUPPORT EAGAIN dnl ** can we open files in binary mode? FP_CHECK_CONST([O_BINARY], [#include ], [0]) -dnl ** check for GetModuleFileName and WinExec (windows only) -dnl Old: AC_CHECK_FUNCS(WinExec GetModuleFileName) dnl Windows -dnl Doesn't work because the linker can't see the functions if -dnl you omit the #include . (I've no idea why not...) - -FPTOOLS_TRY_LINK_NOWARN(,[ -#if HAVE_WINDOWS_H -#include -#endif -main() { - WinExec("",0); - exit(0); -} -], -[have_winexec=1], -[have_winexec=0]) -if test "$have_winexec" = "1"; then - AC_DEFINE([HAVE_WINEXEC], [1], [Define to 1 if you have the WinExec function.]) -fi +FP_CHECK_FUNC([WinExec], + [@%:@include ], [WinExec("",0)]) -FPTOOLS_TRY_LINK_NOWARN(,[ -#if HAVE_WINDOWS_H -#include -#endif -main() { - char* dir; - GetModuleFileName((HMODULE)0,dir,0); - exit(0); -} -], -[have_getmodulefilename=1], -[have_getmodulefilename=0]) -if test "$have_getmodulefilename" = "1"; then -AC_DEFINE([HAVE_GETMODULEFILENAME], [1], [Define to 1 if you have the GetModuleFileName function.]) -fi +FP_CHECK_FUNC([GetModuleFileName], + [@%:@include ], [GetModuleFileName((HMODULE)0,(LPTSTR)0,0)]) dnl ** check return type of signal handlers dnl Foo: assumes we can use prototypes. @@ -1197,7 +1212,7 @@ else fi dnl ** check for math library -AC_CHECK_LIB([m], [main], [LIBM="-lm"], [LIBM=]) +AC_CHECK_LIB([m], [atan], [LIBS="-lm $LIBS"; LIBM="-lm"], [LIBM=]) AC_SUBST([LIBM]) dnl ** check for X Window System @@ -1308,8 +1323,6 @@ else AC_SUBST(HaveRtldNow) fi -FPTOOLS_CHECK_LIB_NOWARN(m, atan) - dnl ---------- usleep ---------- dnl --- stolen from guile configure --- dnl --- FIXME: /usr/include/unistd.h can't be right? @@ -1387,7 +1400,13 @@ FPTOOLS_UNDERSCORE dnl ** check for ld, and whether ld has -x option AC_PATH_PROG(LdCmdRaw, ld) case $HostOS_CPP in - mingw32) LdCmd=`cygpath -w ${LdCmdRaw} | sed -e 's@\\\\@/@g' ` + mingw32) + if test ${OSTYPE} == "msys" + then + LdCmd=${LdCmdRaw} + else + LdCmd=`cygpath -w ${LdCmdRaw} | sed -e 's@\\\\@/@g' ` + fi ;; *) LdCmd=${LdCmdRaw} ;;