X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=configure.ac;h=600317dd04a9ccd9d2b66a1d542391fe3581961d;hp=c0ca1687875bca7f6efb28889d000f604242f0a8;hb=5de363ca9ebdb7d85e3c353c1cffdf0a1c11128e;hpb=88223168614ea60a5d76a264f6c11837b6c5a443 diff --git a/configure.ac b/configure.ac index c0ca168..600317d 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.13], [glasgow-haskell-bugs@haskell.org], [ghc]) +AC_INIT([The Glorious Glasgow Haskell Compilation System], [7.1], [glasgow-haskell-bugs@haskell.org], [ghc]) # Set this to YES for a released version, otherwise NO : ${RELEASE=NO} @@ -313,17 +313,9 @@ case $host in ;; i386-apple-darwin|powerpc-apple-darwin) soext='.dylib' - CFLAGS="$CFLAGS -m32" - LDFLAGS="$LDFLAGS -m32" - CONF_CC_OPTS="$CONF_CC_OPTS -m32" - CONF_LD_OPTS="$CONF_LD_OPTS -m32" ;; x86_64-apple-darwin) soext='.dylib' - CFLAGS="$CFLAGS -m64" - LDFLAGS="$LDFLAGS -m64" - CONF_CC_OPTS="$CONF_CC_OPTS -m64" - CONF_LD_OPTS="$CONF_LD_OPTS -m64" ;; esac @@ -434,28 +426,38 @@ then NM="$hardtop/inplace/mingw/bin/nm.exe" fp_prog_ar_raw="$hardtop/inplace/mingw/bin/ar.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/gcc-g++*.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/w32api*.tar.gz + test inplace/mingw -ot ghc-tarballs/mingw/binutils*.tar.lzma || + test inplace/mingw -ot ghc-tarballs/mingw/gcc-core*.tar.lzma || + test inplace/mingw -ot ghc-tarballs/mingw/gcc-c++*.tar.lzma || + test inplace/mingw -ot ghc-tarballs/mingw/libgmp*.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/libmpc*.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/libmpfr*.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/mingwrt*-dev.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/mingwrt*-dll.tar.gz || + test inplace/mingw -ot ghc-tarballs/mingw/w32api*.tar.lzma then AC_MSG_NOTICE([Making in-tree mingw tree]) rm -rf inplace/mingw - mkdir inplace + test -d inplace || 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 -zxf ../../ghc-tarballs/mingw/gcc-g++*.tar.gz && - tar -jxf ../../ghc-tarballs/mingw/libcrypt*.tar.bz2 && - tar -zxf ../../ghc-tarballs/mingw/mingw-runtime*.tar.gz && - tar -zxf ../../ghc-tarballs/mingw/w32api*.tar.gz && + tar --lzma -xf ../../ghc-tarballs/mingw/binutils*.tar.lzma && + tar --lzma -xf ../../ghc-tarballs/mingw/gcc-core*.tar.lzma && + tar --lzma -xf ../../ghc-tarballs/mingw/gcc-c++*.tar.lzma && + tar --lzma -xf ../../ghc-tarballs/mingw/libgmp*.tar.lzma && + tar --lzma -xf ../../ghc-tarballs/mingw/libmpc*.tar.lzma && + tar --lzma -xf ../../ghc-tarballs/mingw/libmpfr*.tar.lzma && + tar -z -xf ../../ghc-tarballs/mingw/mingwrt*-dev.tar.gz && + tar -z -xf ../../ghc-tarballs/mingw/mingwrt*-dll.tar.gz && + tar --lzma -xf ../../ghc-tarballs/mingw/w32api*.tar.lzma && mv bin/gcc.exe bin/realgcc.exe ) - inplace/mingw/bin/realgcc.exe driver/gcc/gcc.c driver/utils/cwrapper.c driver/utils/getLocation.c -Idriver/utils -o inplace/mingw/bin/gcc.exe + PATH=`pwd`/inplace/mingw/bin:$PATH inplace/mingw/bin/realgcc.exe driver/gcc/gcc.c driver/utils/cwrapper.c driver/utils/getLocation.c -Idriver/utils -o inplace/mingw/bin/gcc.exe + if ! test -e inplace/mingw/bin/gcc.exe + then + AC_MSG_ERROR([GHC is required unless bootstrapping from .hc files.]) + fi AC_MSG_NOTICE([In-tree mingw tree created]) fi if ! test -d inplace/perl || @@ -564,13 +566,24 @@ 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 + +FPTOOLS_SET_C_LD_FLAGS([target],[CFLAGS],[LDFLAGS]) +FPTOOLS_SET_C_LD_FLAGS([build],[CONF_CC_OPTS_STAGE0],[CONF_LD_OPTS_STAGE0]) +FPTOOLS_SET_C_LD_FLAGS([target],[CONF_CC_OPTS_STAGE1],[CONF_LD_OPTS_STAGE1]) +# Stage 3 won't be supported by cross-compilation +FPTOOLS_SET_C_LD_FLAGS([target],[CONF_CC_OPTS_STAGE2],[CONF_LD_OPTS_STAGE2]) + FP_GCC_EXTRA_FLAGS dnl ** figure out how to invoke cpp directly (gcc -E is no good) AC_PROG_CPP -AC_SUBST(CONF_CC_OPTS) -AC_SUBST(CONF_LD_OPTS) +AC_SUBST(CONF_CC_OPTS_STAGE0) +AC_SUBST(CONF_CC_OPTS_STAGE1) +AC_SUBST(CONF_CC_OPTS_STAGE2) +AC_SUBST(CONF_LD_OPTS_STAGE0) +AC_SUBST(CONF_LD_OPTS_STAGE1) +AC_SUBST(CONF_LD_OPTS_STAGE2) dnl ** figure out how to do context diffs FP_PROG_CONTEXT_DIFF @@ -666,7 +679,7 @@ dnl off_t, because it will affect the result of that test. 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/select.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 sched.h]) +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/cpuset.h sys/mman.h sys/resource.h sys/select.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 sched.h]) dnl ** check if it is safe to include both and AC_HEADER_TIME @@ -778,8 +791,11 @@ dnl Keep that check as early as possible. dnl as we need to know whether we need libm dnl for math functions or not dnl (see http://hackage.haskell.org/trac/ghc/ticket/3730) -AC_SEARCH_LIBS(atan, m, - [AC_DEFINE([HAVE_LIBM], [1], [Define to 1 if you need to link with libm])]) +AC_CHECK_LIB(m, atan, HaveLibM=YES, HaveLibM=NO) +if test $HaveLibM = YES +then + AC_DEFINE([HAVE_LIBM], [1], [Define to 1 if you need to link with libm]) +fi dnl ** check whether this machine has BFD and liberty installed (used for debugging) dnl the order of these tests matters: bfd needs liberty @@ -873,6 +889,10 @@ AC_TRY_LINK_FUNC(printf\$LDBLStub, [Define to 1 if we have printf$LDBLStub (Apple Mac OS >= 10.4, PPC).]) ]) +dnl ** check for eventfd which is needed by the I/O manager +AC_CHECK_HEADERS([sys/eventfd.h]) +AC_CHECK_FUNCS([eventfd]) + # test for GTK+ AC_PATH_PROGS([GTK_CONFIG], [pkg-config]) if test -n "$GTK_CONFIG"; then