Re-enable MINGW32-specific compile options#5470
Conversation
This reverts a mistake of mine: My change to introduce an "else ifeq" chain missed that there is an `else` clause that should be used for MINGW32 (to add large-address-awareness and use 32-bit `time_t`) but not for CLANGARM64 nor for MINGW64. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
Why would you still want 32-bit |
Good question. I instinctively wanted to reinstate what I had mistakenly removed. Now, there's this: #if defined (_WIN32) && !defined (_WIN64) && !defined (__MINGW_USE_VC2005_COMPAT) && !defined (_UCRT)
#ifndef _USE_32BIT_TIME_T
#define _USE_32BIT_TIME_T
#endif
#endifBut that's mingw-w64's headers, and historically I did not mean to rely on those for the MINGW builds. I guess the more important idea was to maintain backwards-compatibility because I thought that Git's on-disk representation might be careless enough to use So I guess for the 32-bit A more important issue here, then, is the large address aware stuff. I cannot find the documentation rn but I vaguely remember that without this option, you cannot allocate regions larger than 2GB on i686, and we very much want to be able to do that. |
|
ok. yes, the large address aware flag does opt a process into addresses with the most significant bit set. It is not necessary to set it for msys though, it seems to be set by default already. |
It also does not do any harm and my thinking was the this |
This reverts a mistake of mine: My change to introduce an "else ifeq" in #5439 chain missed that there is an
elseclause that should be used for MINGW32 and MSys (to add large-address-awareness and use 32-bittime_t) but not for CLANGARM64 nor for MINGW64.