diff options
author | İsmail Dönmez <ismail@i10z.com> | 2019-05-08 04:30:58 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-05-13 10:55:18 +0900 |
commit | 598b6c3a9270e7bd2379fc6084a6ddf694c0f8ea (patch) | |
tree | f14374cf74096b9c47da2f37f5eeef68884d5abd /config.mak.uname | |
parent | 6a6c0f10a70a6eb101c213b09ae82a9cad252743 (diff) | |
download | git-598b6c3a9270e7bd2379fc6084a6ddf694c0f8ea.tar.gz |
mingw: do not let ld strip relocations
This is the first step for enabling ASLR (Address Space Layout
Randomization) support. We want to enable ASLR for better protection
against exploiting security holes in Git: it makes it harder to attack
software by making code addresses unpredictable.
The problem fixed by this commit is that `ld.exe` seems to be stripping
relocations which in turn will break ASLR support. We just make sure
it's not stripping the main executable entry.
Signed-off-by: İsmail Dönmez <ismail@i10z.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'config.mak.uname')
-rw-r--r-- | config.mak.uname | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/config.mak.uname b/config.mak.uname index d916d1dc7a..01b390c043 100644 --- a/config.mak.uname +++ b/config.mak.uname @@ -578,10 +578,12 @@ else ifeq (MINGW32,$(MSYSTEM)) prefix = /mingw32 HOST_CPU = i686 + BASIC_LDFLAGS += -Wl,--pic-executable,-e,_mainCRTStartup endif ifeq (MINGW64,$(MSYSTEM)) prefix = /mingw64 HOST_CPU = x86_64 + BASIC_LDFLAGS += -Wl,--pic-executable,-e,mainCRTStartup else COMPAT_CFLAGS += -D_USE_32BIT_TIME_T BASIC_LDFLAGS += -Wl,--large-address-aware |