msysgit: Add the --large-address-aware linker directive to the makefile.
This has the effect of increasing the address space from 2GB to 4GB under 64-bit Windows, reducing the likelihood of an "out of memory" error when e.g. repacking a large repository. The test suite passes with this patch, with and without the MEM_TOP_DOWN flag added to all VirtualAlloc calls. While this is no guarantee that there are no issues with large memory support (it could break Git on other setups than mine, for example), it at least increases the chance that nothing obvious goes wrong (such as errors introduced by faulty sign extension, say, with ssize_t). [PT: Resolves github issue #12] Signed-off-by: Pierre le Riche <github@pleasedontspam.me> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
Pierre le Riche committed
May 28, 2012 at 09:46 UTC
fb99070303e8e8af4438c0bad76d459af80d3bba
1 file changed
+1
config.mak.uname
+1
@@ -505,6 +505,7 @@ ifneq (,$(findstring MINGW,$(uname_S)))
505
COMPAT_OBJS += compat/mingw.o compat/winansi.o \
506
compat/win32/pthread.o compat/win32/syslog.o \
507
compat/win32/dirent.o
508
+ BASIC_LDFLAGS += -Wl,--large-address-aware
509
EXTLIBS += -lws2_32
510
PTHREAD_LIBS =
511
NATIVE_CRLF = YesPlease