X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=aclocal.m4;h=bee5085b4ba5b5b93646235a0d04fa7a7659137a;hp=53bd165bec50facecef493a0d1a45c3bc4a30cff;hb=5de363ca9ebdb7d85e3c353c1cffdf0a1c11128e;hpb=30fad70245d9ddfae0b781460bc51468a01f92f6 diff --git a/aclocal.m4 b/aclocal.m4 index 53bd165..bee5085 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -10,15 +10,28 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS], [ case $$1 in - i386-apple-darwin|powerpc-apple-darwin) - $2="$$2 -m32" - $3="$$3 -m32" + i386-apple-darwin) + # By default, gcc on OS X will generate SSE + # instructions, which need things 16-byte aligned, + # but we don't 16-byte align things. Thus drop + # back to generic i686 compatibility. Trac #2983. + $2="$$2 -march=i686 -m32" + $3="$$3 -march=i686 -m32" ;; x86_64-apple-darwin) $2="$$2 -m64" $3="$$3 -m64" ;; esac + + # If gcc knows about the stack protector, turn it off. + # Otherwise the stack-smash handler gets triggered. + echo 'int main(void) {return 0;}' > conftest.c + if $CC -c conftest.c -fno-stack-protector > /dev/null 2>&1 + then + $2="$$2 -fno-stack-protector" + fi + rm conftest.c conftest.o ]) @@ -141,7 +154,7 @@ AC_DEFUN([FP_COMPUTE_INT], # A variation of AC_CHECK_SIZEOF for computing the alignment restrictions of a # given type. Defines ALIGNMENT_TYPE. AC_DEFUN([FP_CHECK_ALIGNMENT], -[AS_LITERAL_IF([$1], [], +[AS_LITERAL_IF(m4_translit([[$1]], [*], [p]), [], [AC_FATAL([$0: requires literal arguments])])[]dnl AC_CHECK_TYPE([$1], [], [], [$3])[]dnl m4_pushdef([fp_Cache], [AS_TR_SH([fp_cv_alignment_$1])])[]dnl @@ -1253,7 +1266,7 @@ if test ! -f utils/ghc-pwd/ghc-pwd && test ! -f utils/ghc-pwd/ghc-pwd.exe; then rm -f *.hi rm -f ghc-pwd rm -f ghc-pwd.exe - "$WithGhc" -v0 --make ghc-pwd -o ghc-pwd + "$WithGhc" -v0 -no-user-package-conf --make ghc-pwd -o ghc-pwd cd ../.. fi