X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=configure.ac;h=38ba4b7ba82b45551a8eb5cb16dfb62dd8c1cbd3;hp=cab4f1902a83c47cd2601b8ac56256abd16aa3a0;hb=aedb94f5f220b5e442b23ecc445fd38c8d9b6ba0;hpb=15575cf8f17fee0fdd3151c5dbb0a0f89b01c708 diff --git a/configure.ac b/configure.ac index cab4f19..38ba4b7 100644 --- a/configure.ac +++ b/configure.ac @@ -13,7 +13,7 @@ dnl # see what flags are available. (Better yet, read the documentation!) # -AC_INIT([The Glorious Glasgow Haskell Compilation System], [6.9], [glasgow-haskell-bugs@haskell.org], [ghc]) +AC_INIT([The Glorious Glasgow Haskell Compilation System], [6.11], [glasgow-haskell-bugs@haskell.org], [ghc]) # Set this to YES for a released version, otherwise NO : ${RELEASE=NO} @@ -170,6 +170,15 @@ amd64-*-freebsd*|x86_64-*-freebsd*) HostVendor_CPP='unknown' HostOS_CPP='freebsd' ;; +amd64-*-netbsd*|x86_64-*-netbsd*) + HostPlatform=x86_64-unknown-netbsd + TargetPlatform=x86_64-unknown-netbsd + BuildPlatform=x86_64-unknown-netbsd + HostPlatform_CPP='x86_64_unknown_netbsd' + HostArch_CPP='x86_64' + HostVendor_CPP='unknown' + HostOS_CPP='netbsd' + ;; arm*-linux*) HostPlatform=arm-unknown-linux # hack again TargetPlatform=arm-unknown-linux @@ -635,6 +644,14 @@ AC_ARG_WITH([ghc], AC_PATH_PROG([GHC], [ghc]) fi WithGhc="$GHC"]) +# GHC is passed to Cabal, so we need a native path +if test "x$HostPlatform" = "xi386-unknown-mingw32" && \ + test "${OSTYPE}" != "msys" && \ + test "${WithGhc}" != "" +then + # Canonicalise to :/path/to/ghc + WithGhc=`cygpath -m ${WithGhc}` +fi AC_SUBST([WithGhc]) AC_ARG_WITH(hc, @@ -654,14 +671,30 @@ if test "$WithGhc" != ""; then AC_SUBST(GhcPatchLevel)dnl GhcMinVersion2=`echo "$GhcMinVersion" | sed 's/^\\(.\\)$/0\\1/'` GhcCanonVersion="$GhcMajVersion$GhcMinVersion2" - if test $GhcCanonVersion -ge 605; then ghc_ge_605=YES; else ghc_ge_605=NO; fi if test $GhcCanonVersion -ge 607; then ghc_ge_607=YES; else ghc_ge_607=NO; fi - AC_SUBST(ghc_ge_605)dnl + if test $GhcCanonVersion -ge 609; then ghc_ge_609=YES; else ghc_ge_609=NO; fi AC_SUBST(ghc_ge_607)dnl + AC_SUBST(ghc_ge_609)dnl fi -# Check whether this GHC has readline installed -FP_GHC_HAS_READLINE +# Check whether this GHC has editline installed +FP_GHC_HAS_EDITLINE + +# Dummy arguments to print help for --with-editline-* arguments. +# Those are actually passed to the editline package's configure script +# via the CONFIGURE_ARGS variable in mk/config.mk +AC_ARG_WITH(dummy-editline-includes, + [AC_HELP_STRING([--with-editline-includes], + [directory containing editline/editline.h or editline/readline.h])], + [], + []) + +AC_ARG_WITH(dummy-editline-libraries, + [AC_HELP_STRING([--with-editline-libraries], + [directory containing the editline library])], + [], + []) + AC_PATH_PROGS(NHC,nhc nhc98) AC_PATH_PROG(HBC,hbc) @@ -672,13 +705,12 @@ 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" - then - if test "${OSTYPE}" != "msys" - then - # Canonicalise to :/path/to/gcc - withval=`cygpath -w ${withval} | sed -e 's@\\\\@/@g' ` - fi + 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 @@ -692,13 +724,12 @@ 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" - then - if test "${OSTYPE}" != "msys" - then - # Canonicalise to :/path/to/ld - withval=`cygpath -w ${withval} | sed -e 's@\\\\@/@g' ` - fi +[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]) @@ -706,6 +737,36 @@ AC_ARG_WITH(ld, [FP_PROG_LD()] ) +dnl ** Build shared and/or static libs? +dnl -------------------------------------------------------------- +AC_ARG_ENABLE(shared, +[AC_HELP_STRING([--enable-shared], +[Build shared libraries, if available (EXPERIMENTAL, non-working). [default=no]])], +[ if test x"$enableval" = x"yes"; then + AC_MSG_WARN([--enable-shared is experimental and not fully supported at this time]) + BuildSharedLibs=YES + else + BuildSharedLibs=NO + fi +], +[BuildSharedLibs=NO] +) +AC_SUBST(BuildSharedLibs) + +# ToDo later: +# AC_ARG_ENABLE(static, +# [AC_HELP_STRING([--enable-static], +# [Build static libraries. [default=yes]])], +# [ if test x"$enableval" = x"yes"; then +# BuildStaticLibs=YES +# else +# BuildStaticLibs=NO +# fi +# ], +# [BuildStaticLibs=YES] +# ) +# AC_SUBST(BuildStaticLibs) + dnl ** Booting from .hc files? dnl -------------------------------------------------------------- AC_ARG_ENABLE(hc-boot, @@ -750,8 +811,8 @@ if test "$BootingFromHc" = "NO" -a -d "$srcdir/compiler"; then if test "$WithGhc" = ""; then AC_MSG_ERROR([GHC is required unless bootstrapping from .hc files.]) fi - FP_COMPARE_VERSIONS([$GhcVersion],[-lt],[6.4], - [AC_MSG_ERROR([GHC version 6.4 or later is required to compile GHC.])])dnl + FP_COMPARE_VERSIONS([$GhcVersion],[-lt],[6.6], + [AC_MSG_ERROR([GHC version 6.6 or later is required to compile GHC.])])dnl fi; # This uses GHC, so put it after the "GHC is required" check above: @@ -790,51 +851,22 @@ dnl if test x"$EnableWin32DLLs" = "xYES" ; then dnl AC_DEFINE(HAVE_WIN32_DLL_SUPPORT) dnl fi -dnl ** Enable the building of the ObjectIO? -dnl -------------------------------------------------------------- -AC_ARG_ENABLE(objectio, -[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=NO] -) -AC_SUBST(GhcLibsWithObjectIO) - -dnl ** .NET interop support? -dnl -------------------------------------------------------------- -AC_ARG_ENABLE(dotnet, -[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) - dnl ** Mac OS X: explicit deployment target dnl -------------------------------------------------------------- -AC_ARG_WITH([macos-deployment-target], -[AC_HELP_STRING([--macos-deployment-target=VERSION], - [Build for Mac OS VERSION and higher [default= version of build host]])], -[MACOS_DEPLOYMENT_TARGET="$withval" +AC_ARG_WITH([macosx-deployment-target], +[AC_HELP_STRING([--with-macosx-deployment-target=VERSION], + [Build for Mac OS VERSION and higher (default= version of build host)])], +[FP_MACOSX_DEPLOYMENT_TARGET="$withval" if test "x$TargetOS_CPP-$TargetVendor_CPP" != "xdarwin-apple"; then # ignore everywhere, but on Mac OS - AC_MSG_WARN([--macos-deployment-target is only available on Mac OS X]) - MACOS_DEPLOYMENT_TARGET=none + AC_MSG_WARN([--macosx-deployment-target is only available on Mac OS X]) + FP_MACOSX_DEPLOYMENT_TARGET=none fi], -[MACOS_DEPLOYMENT_TARGET=none] +[FP_MACOSX_DEPLOYMENT_TARGET=none] ) -FP_MACOS_DEPLOYMENT_TARGET -AC_SUBST(MACOS_DEPLOYMENT_VERSION) -AC_SUBST(MACOS_DEPLOYMENT_SDK) +FP_CHECK_MACOSX_DEPLOYMENT_TARGET +AC_SUBST(MACOSX_DEPLOYMENT_VERSION) +AC_SUBST(MACOSX_DEPLOYMENT_SDK) dnl -------------------------------------------------------------- dnl End of configure script option section @@ -900,10 +932,6 @@ AC_PROG_CPP dnl ** Without optimization some INLINE trickery fails for GHCi SRC_CC_OPTS="-O" -dnl ** Try to add -mno-cygwin to the C compiler options -FP_CHECK_FLAG([-mno-cygwin], [ -SRC_CC_OPTS="-mno-cygwin $SRC_CC_OPTS" -CPPFLAGS="-mno-cygwin $CPPFLAGS"]) AC_SUBST(SRC_CC_OPTS) dnl ** figure out how to do context diffs @@ -945,13 +973,12 @@ AC_PATH_PROGS(TarCmd,gtar tar,tar) AC_PATH_PROG(HSCOLOUR,HsColour) # HsColour is passed to Cabal, so we need a native path -if test "x$HostPlatform" = "xi386-unknown-mingw32" - then - if test "${OSTYPE}" != "msys" - then - # Canonicalise to :/path/to/gcc - HSCOLOUR=`cygpath -w ${HSCOLOUR} | sed -e 's@\\\\@/@g' ` - fi +if test "x$HostPlatform" = "xi386-unknown-mingw32" && \ + test "${OSTYPE}" != "msys" && \ + test "${HSCOLOUR}" != "" +then + # Canonicalise to :/path/to/gcc + HSCOLOUR=`cygpath -m ${HSCOLOUR}` fi dnl ** check for DocBook toolchain @@ -977,15 +1004,15 @@ if test "$BootingFromHc" = "NO"; then FPTOOLS_HAPPY fi; -dnl ** check for installed haddock -FPTOOLS_HADDOCK - dnl ** check for installed alex binary + version dnl (don't do it if we're booting from .hc files though.) 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 -------------------------------------------------- @@ -1004,18 +1031,6 @@ AC_SYS_LARGEFILE dnl ** check for specific header (.h) files that we are interested in AC_CHECK_HEADERS([bfd.h ctype.h dirent.h dlfcn.h errno.h fcntl.h grp.h limits.h locale.h nlist.h pthread.h pwd.h signal.h sys/mman.h sys/resource.h sys/time.h sys/timeb.h sys/timers.h sys/times.h sys/utsname.h sys/wait.h termios.h time.h utime.h windows.h winsock.h]) -AC_CHECK_HEADER([readline/readline.h], [HaveReadlineReadlineH=YES], [HaveReadlineReadlineH=NO]) -AC_CHECK_HEADER([readline/history.h], [HaveReadlineHistoryH=YES], [HaveReadlineHistoryH=NO]) - -if test $HaveReadlineReadlineH = YES && test $HaveReadlineHistoryH = YES ; then - GhcLibsWithReadline=YES - AC_DEFINE([HAVE_READLINE_HEADERS], [1], [Define to 1 if readline/readline.h and readline/history.h exist.]) -else - GhcLibsWithReadline=NO - AC_DEFINE([HAVE_READLINE_HEADERS], [0], [Define to 1 if readline/readline.h and readline/history.h exist.]) -fi -AC_SUBST(GhcLibsWithReadline) - dnl ** check if it is safe to include both and AC_HEADER_TIME @@ -1262,6 +1277,6 @@ else fi AC_SUBST(HavePapi) -AC_CONFIG_FILES([mk/config.mk ghc.spec extra-gcc-opts docs/users_guide/ug-book.xml]) +AC_CONFIG_FILES([mk/config.mk compiler/ghc.cabal ghc/ghc-bin.cabal ghc.spec extra-gcc-opts docs/users_guide/ug-book.xml]) AC_CONFIG_COMMANDS([mk/stamp-h],[echo timestamp > mk/stamp-h]) AC_OUTPUT