X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=configure.ac;h=734dbd75138ddabc5e279011f437399cbb09d9ec;hp=cac3d38e4bc4337f15b95cccb0fc52b2b33a7102;hb=a999a72ed635ca95806b4fe3e15fa2b1a6fea967;hpb=224a7fa07de24c67f52bc613f31ae1bf453cd7b8 diff --git a/configure.ac b/configure.ac index cac3d38..734dbd7 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.7], [glasgow-haskell-bugs@haskell.org], [ghc]) +AC_INIT([The Glorious Glasgow Haskell Compilation System], [6.9], [glasgow-haskell-bugs@haskell.org], [ghc]) # Set this to YES for a released version, otherwise NO : ${RELEASE=NO} @@ -161,7 +161,7 @@ amd64-*-openbsd*|x86_64-*-openbsd*) HostVendor_CPP='unknown' HostOS_CPP='openbsd' ;; -amd64-*-freebsd*) +amd64-*-freebsd*|x86_64-*-freebsd*) HostPlatform=x86_64-unknown-freebsd TargetPlatform=x86_64-unknown-freebsd BuildPlatform=x86_64-unknown-freebsd @@ -170,6 +170,15 @@ amd64-*-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,10 +644,16 @@ 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]) -FP_FIND_ROOT - AC_ARG_WITH(hc, [AC_HELP_STRING([--with-hc=ARG], [Use ARG as the path to the compiler for compiling ordinary @@ -656,20 +671,16 @@ if test "$WithGhc" != ""; then AC_SUBST(GhcPatchLevel)dnl GhcMinVersion2=`echo "$GhcMinVersion" | sed 's/^\\(.\\)$/0\\1/'` GhcCanonVersion="$GhcMajVersion$GhcMinVersion2" - if test $GhcCanonVersion -ge 601; then ghc_ge_601=YES; else ghc_ge_601=NO; fi - if test $GhcCanonVersion -ge 602; then ghc_ge_602=YES; else ghc_ge_602=NO; fi - if test $GhcCanonVersion -ge 603; then ghc_ge_603=YES; else ghc_ge_603=NO; fi 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_601)dnl - AC_SUBST(ghc_ge_602)dnl - AC_SUBST(ghc_ge_603)dnl + if test $GhcCanonVersion -ge 609; then ghc_ge_609=YES; else ghc_ge_609=NO; fi AC_SUBST(ghc_ge_605)dnl 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 AC_PATH_PROGS(NHC,nhc nhc98) AC_PATH_PROG(HBC,hbc) @@ -680,13 +691,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 @@ -700,13 +710,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]) @@ -714,6 +723,35 @@ 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. [default=no]])], +[ if test x"$enableval" = x"yes"; then + 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, @@ -754,10 +792,17 @@ fi; fi; dnl ** Must have GHC to build GHC, unless --enable-hc-boot is on -if test "$BootingFromHc" = "NO" -a "$WithGhc" = "" -a -d "$srcdir/compiler"; then -AC_MSG_ERROR([GHC is required unless bootstrapping from .hc files.]) +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 fi; +# This uses GHC, so put it after the "GHC is required" check above: +FP_FIND_ROOT + dnl ** Enable the construction of Win32 DLLs? dnl -------------------------------------------------------------- dnl @@ -791,21 +836,6 @@ 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, @@ -820,6 +850,23 @@ AC_ARG_ENABLE(dotnet, ) AC_SUBST(DotnetSupport) +dnl ** Mac OS X: explicit deployment target +dnl -------------------------------------------------------------- +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([--macosx-deployment-target is only available on Mac OS X]) + FP_MACOSX_DEPLOYMENT_TARGET=none + fi], +[FP_MACOSX_DEPLOYMENT_TARGET=none] +) +FP_CHECK_MACOSX_DEPLOYMENT_TARGET +AC_SUBST(MACOSX_DEPLOYMENT_VERSION) +AC_SUBST(MACOSX_DEPLOYMENT_SDK) + dnl -------------------------------------------------------------- dnl End of configure script option section dnl -------------------------------------------------------------- @@ -884,10 +931,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 @@ -899,11 +942,11 @@ FP_PROG_FIND dnl ** Find sort command (for the benefit of Win32 environs) FP_PROG_SORT -dnl ** figure out how to do a BSD-ish install -AC_PROG_INSTALL dnl Let's make sure install-sh is executable here. If we got it from dnl a darcs repo, it might not be (see bug #978). chmod +x install-sh +dnl ** figure out how to do a BSD-ish install +AC_PROG_INSTALL dnl If you can run configure, you certainly have /bin/sh AC_DEFINE([HAVE_BIN_SH], [1], [Define to 1 if you have /bin/sh.]) @@ -927,9 +970,19 @@ dnl ** check for tar dnl if GNU tar is named gtar, look for it first. 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" && \ + test "${OSTYPE}" != "msys" && \ + test "${HSCOLOUR}" != "" +then + # Canonicalise to :/path/to/gcc + HSCOLOUR=`cygpath -m ${HSCOLOUR}` +fi + dnl ** check for DocBook toolchain FP_CHECK_DOCBOOK_DTD -FP_DIR_DOCBOOK_XSL([/usr/share/xml/docbook/stylesheet/nwalsh/current /usr/share/xml/docbook/stylesheet/nwalsh /usr/share/sgml/docbook/docbook-xsl-stylesheets* /usr/share/sgml/docbook/xsl-stylesheets* /opt/kde?/share/apps/ksgmltools2/docbook/xsl /usr/share/docbook-xsl /usr/share/sgml/docbkxsl /usr/local/share/xsl/docbook /sw/share/xml/xsl/docbook-xsl /opt/local/share/xsl/docbook-xsl]) +FP_DIR_DOCBOOK_XSL([/usr/share/xml/docbook/stylesheet/nwalsh/current /usr/share/xml/docbook/stylesheet/nwalsh /usr/share/xml/docbook/xsl-stylesheets* /usr/share/sgml/docbook/docbook-xsl-stylesheets* /usr/share/sgml/docbook/xsl-stylesheets* /opt/kde?/share/apps/ksgmltools2/docbook/xsl /usr/share/docbook-xsl /usr/share/sgml/docbkxsl /usr/local/share/xsl/docbook /sw/share/xml/xsl/docbook-xsl /opt/local/share/xsl/docbook-xsl]) FP_PROG_FO_PROCESSOR dnl ** check for ghc-pkg command @@ -977,18 +1030,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