X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=configure.ac;h=8d41ac79a206703108c03fe995ad93abf102eea9;hp=5387c839723452a41da111e67faf648c80ff4503;hb=6cf8982ac30be6836a0cdd8be5a6ac1a1a144213;hpb=d210b148c72c7fa97e87214d38608ef011657271 diff --git a/configure.ac b/configure.ac index 5387c83..8d41ac7 100644 --- a/configure.ac +++ b/configure.ac @@ -13,11 +13,13 @@ dnl # see what flags are available. (Better yet, read the documentation!) # -AC_INIT([The Glorious Glasgow Haskell Compilation System], [6.11], [glasgow-haskell-bugs@haskell.org], [ghc]) +AC_INIT([The Glorious Glasgow Haskell Compilation System], [6.13], [glasgow-haskell-bugs@haskell.org], [ghc]) # Set this to YES for a released version, otherwise NO : ${RELEASE=NO} +set -e + # The primary version (e.g. 6.7, 6.6.1) is set in the AC_INIT line # above. If this is not a released version, then we will append the # date to the version number (e.g. 6.7.20070204). The date is @@ -378,79 +380,58 @@ AC_SUBST(WithHc) AC_PATH_PROGS(NHC,nhc nhc98) AC_PATH_PROG(HBC,hbc) +# This uses GHC, so put it after the "GHC is required" check above: +FP_FIND_ROOT + +if test "$HostOS" = "mingw32" +then + CC="$hardtop/inplace/mingw/bin/gcc.exe" + LD="$hardtop/inplace/mingw/bin/ld.exe" + NM="$hardtop/inplace/mingw/bin/nm.exe" + if ! test -d inplace/mingw || + test inplace/mingw -ot ghc-tarballs/mingw/binutils*.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/gcc-core*.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/libcrypt*.tar.bz2 || + test inplace/mingw -ot ghc-tarballs/mingw/mingw-runtime*.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/perl*.tar.bz2 || + test inplace/mingw -ot ghc-tarballs/mingw/w32api*.tar.gz + then + AC_MSG_NOTICE([Making in-tree mingw tree]) + rm -rf inplace/mingw + mkdir inplace + mkdir inplace/mingw + cd inplace/mingw + tar -zxf ../../ghc-tarballs/mingw/binutils*.tar.gz + tar -zxf ../../ghc-tarballs/mingw/gcc-core*.tar.gz + tar -jxf ../../ghc-tarballs/mingw/libcrypt*.tar.bz2 + tar -zxf ../../ghc-tarballs/mingw/mingw-runtime*.tar.gz + tar -jxf ../../ghc-tarballs/mingw/perl*.tar.bz2 + tar -zxf ../../ghc-tarballs/mingw/w32api*.tar.gz + mv bin/gcc.exe bin/realgcc.exe + cd ../.. + inplace/mingw/bin/realgcc.exe driver/gcc/gcc.c driver/utils/getLocation.c -Idriver/utils -o inplace/mingw/bin/gcc.exe + AC_MSG_NOTICE([In-tree mingw tree created]) + fi +fi + dnl ** Which gcc to use? dnl -------------------------------------------------------------- -AC_ARG_WITH(gcc, -[AC_HELP_STRING([--with-gcc=ARG], - [Use ARG as the path to GCC [default=autodetect]])], -[WhatGccIsCalled="$withval" - if test "x$HostPlatform" = "xi386-unknown-mingw32" && \ - test "${OSTYPE}" != "msys" && \ - test "${withval}" != "" - then - # Canonicalise to :/path/to/gcc - withval=`cygpath -m ${withval}` - fi; - CC="$withval" - export CC - ], -[WhatGccIsCalled="gcc"] -) +FP_ARG_WITH_PATH_GNU_PROG([CC], [gcc]) +export CC +WhatGccIsCalled="$CC" AC_SUBST(WhatGccIsCalled) dnl ** Which ld to use? dnl -------------------------------------------------------------- -AC_ARG_WITH(ld, -[AC_HELP_STRING([--with-ld=ARG], - [Use ARG as the path to LD [default=autodetect]])], -[if test "x$HostPlatform" = "xi386-unknown-mingw32" && \ - test "${OSTYPE}" != "msys" && \ - test "${withval}" != "" - then - # Canonicalise to :/path/to/ld - withval=`cygpath -m ${withval}` - fi; - LD=$withval - FP_PROG_LD([$LD]) - ], - [FP_PROG_LD()] -) - -# This uses GHC, so put it after the "GHC is required" check above: -FP_FIND_ROOT +FP_ARG_WITH_PATH_GNU_PROG([LD], [ld]) +LdCmd="$LD" +AC_SUBST([LdCmd]) -dnl ** Enable the construction of Win32 DLLs? +dnl ** Which nm to use? dnl -------------------------------------------------------------- -dnl -dnl [ The ability to build the RTS and libraries as separate DLLs used -dnl to be supported, but isn't currently (updates to the RTS, compiler -dnl and build system would be required to bring it back again.) -dnl Hence, exposing it as an option is false advertisement, so better -dnl disable it to avoid confusion (but leave it commented-out rather -dnl than removed in order to remind ourselves to bring back the -dnl feature at some stage.) ] -dnl -dnl AC_ARG_ENABLE(win32-dlls, -dnl [ --enable-win32-dlls -dnl If on a Win32 platform running mingw32/cygwin, enable the -dnl construction of DLLs containing ghc-compiled code. -dnl ], -dnl [ -dnl case $HostOS_CPP in -dnl cygwin32) ;; -dnl mingw32) ;; -dnl *) echo "Unrecognised win32 platform: $HostPlatform" -dnl exit 1 -dnl ;; -dnl esac -dnl EnableWin32DLLs=YES -dnl ], -dnl [EnableWin32DLLs=NO] -dnl ) -dnl AC_SUBST(EnableWin32DLLs) -dnl if test x"$EnableWin32DLLs" = "xYES" ; then -dnl AC_DEFINE(HAVE_WIN32_DLL_SUPPORT) -dnl fi +FP_ARG_WITH_PATH_GNU_PROG([NM], [nm]) +NmCmd="$NM" +AC_SUBST([NmCmd]) dnl ** Mac OS X: explicit deployment target dnl -------------------------------------------------------------- @@ -524,7 +505,6 @@ dnl Figure out which C compiler to use. Gcc is preferred. dnl If gcc, make sure it's at least 2.1 dnl FP_HAVE_GCC -FP_MINGW_GCC FP_GCC_EXTRA_FLAGS dnl ** figure out how to invoke cpp directly (gcc -E is no good) @@ -600,9 +580,6 @@ if test "$BootingFromHc" = "NO"; then FPTOOLS_ALEX fi; -dnl Check we have an acceptable version of windres -FPTOOLS_WINDRES - dnl -------------------------------------------------- dnl ### program checking section ends here ### dnl -------------------------------------------------- @@ -870,7 +847,7 @@ if grep ' ' compiler/ghc.cabal.in 2>&1 >/dev/null; then AC_MSG_ERROR([compiler/ghc.cabal.in contains tab characters; please remove them]) fi -AC_CONFIG_FILES([mk/config.mk mk/install.mk mk/project.mk compiler/ghc.cabal ghc/ghc-bin.cabal ghc.spec extra-gcc-opts docs/users_guide/ug-book.xml distrib/ghc.iss]) +AC_CONFIG_FILES([mk/config.mk mk/install.mk mk/project.mk compiler/ghc.cabal ghc/ghc-bin.cabal ghc.spec extra-gcc-opts docs/users_guide/ug-book.xml distrib/ghc.iss distrib/configure-bin.ac]) AC_CONFIG_COMMANDS([mk/stamp-h],[echo timestamp > mk/stamp-h]) AC_OUTPUT