Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/3275b7bd2a803a3adc0b952b6fbfeb738fc15a74 >--------------------------------------------------------------- commit 3275b7bd2a803a3adc0b952b6fbfeb738fc15a74 Author: Ian Lynagh <[email protected]> Date: Sun Nov 27 00:20:59 2011 +0000 Pass "--hash-size=31 --reduce-memory-overhead" to ld; fixes trac #5240 These reduce the amount of memory that ld takes when linking. >--------------------------------------------------------------- aclocal.m4 | 9 +++++++-- rules/build-package-way.mk | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/aclocal.m4 b/aclocal.m4 index 2bba7b7..f6f1f2b 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -354,14 +354,14 @@ AC_DEFUN([FP_SETTINGS], if test "$windows" = YES then SettingsCCompilerCommand='$topdir/../mingw/bin/gcc.exe' - SettingsCCompilerFlags='' + SettingsCCompilerFlags="$CONF_CC_OPTS_STAGE2 $CONF_GCC_LINKER_OPTS_STAGE2" SettingsPerlCommand='$topdir/../perl/perl.exe' SettingsDllWrapCommand='$topdir/../mingw/bin/dllwrap.exe' SettingsWindresCommand='$topdir/../mingw/bin/windres.exe' SettingsTouchCommand='$topdir/touchy.exe' else SettingsCCompilerCommand="$WhatGccIsCalled" - SettingsCCompilerFlags="$CONF_CC_OPTS_STAGE2" + SettingsCCompilerFlags="$CONF_CC_OPTS_STAGE2 $CONF_GCC_LINKER_OPTS_STAGE2" SettingsPerlCommand="$PerlCmd" SettingsDllWrapCommand="/bin/false" SettingsWindresCommand="/bin/false" @@ -424,6 +424,11 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS], then $2="$$2 -fno-stack-protector" fi + + # Reduce memory usage when linking. See trac #5240. + $3="$$3 -Wl,--hash-size=31 -Wl,--reduce-memory-overheads" + $4="$$4 --hash-size=31 --reduce-memory-overheads" + rm -f conftest.c conftest.o AC_MSG_RESULT([done]) ]) diff --git a/rules/build-package-way.mk b/rules/build-package-way.mk index 00ce065..de1b713 100644 --- a/rules/build-package-way.mk +++ b/rules/build-package-way.mk @@ -114,7 +114,7 @@ BINDIST_LIBS += $$($1_$2_GHCI_LIB) endif endif $$($1_$2_GHCI_LIB) : $$($1_$2_$3_HS_OBJS) $$($1_$2_$3_CMM_OBJS) $$($1_$2_$3_C_OBJS) $$($1_$2_$3_S_OBJS) $$($1_$2_EXTRA_OBJS) - "$$(LD)" -r -o $$@ $$(EXTRA_LD_OPTS) $$($1_$2_$3_HS_OBJS) $$($1_$2_$3_CMM_OBJS) $$($1_$2_$3_C_OBJS) $$($1_$2_$3_S_OBJS) $$($1_$2_EXTRA_OBJS) + "$$(LD)" $$(CONF_LD_LINKER_OPTS_STAGE$4) -r -o $$@ $$(EXTRA_LD_OPTS) $$($1_$2_$3_HS_OBJS) $$($1_$2_$3_CMM_OBJS) $$($1_$2_$3_C_OBJS) $$($1_$2_$3_S_OBJS) $$($1_$2_EXTRA_OBJS) ifeq "$$($1_$2_BUILD_GHCI_LIB)" "YES" # Don't bother making ghci libs for bootstrapping packages _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
