From 2987407f3c7eed909cc57b4d4a93260b0be7e29f Mon Sep 17 00:00:00 2001 From: Harshil-Jani Date: Thu, 2 Feb 2023 03:51:38 +0000 Subject: mingw: remove msysGit/MSYS1 support MSys has long fallen behind MSYS2 in features like Unicode or x86_64 support or even security bug fixes, and is therefore no longer used by anyone in the Git developer community. The Git for Windows project itself started switching from MSys to MSYS2 early in 2015, i.e. about eight years ago. Let's drop supporting MSys as a development platform. Signed-off-by: Harshil-Jani Acked-by: Johannes Schindelin Signed-off-by: Junio C Hamano --- config.mak.uname | 85 +++++++++++++++++++++++--------------------------------- 1 file changed, 35 insertions(+), 50 deletions(-) (limited to 'config.mak.uname') diff --git a/config.mak.uname b/config.mak.uname index 377667c4bb..965ec53083 100644 --- a/config.mak.uname +++ b/config.mak.uname @@ -623,6 +623,9 @@ ifeq ($(uname_S),NONSTOP_KERNEL) SHELL_PATH = /usr/coreutils/bin/bash endif ifeq ($(uname_S),MINGW) + ifeq ($(shell expr "$(uname_R)" : '1\.'),2) + $(error "Building with MSys is no longer supported") + endif pathsep = ; HAVE_ALLOCA_H = YesPlease NO_PREAD = YesPlease @@ -676,61 +679,43 @@ ifeq ($(uname_S),MINGW) RC = windres -O coff NATIVE_CRLF = YesPlease X = .exe -ifneq (,$(wildcard ../THIS_IS_MSYSGIT)) - htmldir = doc/git/html/ - prefix = + # MSys2 + prefix = /usr/ + # Enable DEP + BASIC_LDFLAGS += -Wl,--nxcompat + # Enable ASLR (unless debugging) + ifneq (,$(findstring -O,$(filter-out -O0 -Og,$(CFLAGS)))) + BASIC_LDFLAGS += -Wl,--dynamicbase + endif + 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 + endif + CC = gcc + COMPAT_CFLAGS += -D__USE_MINGW_ANSI_STDIO=0 -DDETECT_MSYS_TTY \ + -fstack-protector-strong + EXTLIBS += -lntdll INSTALL = /bin/install - EXTLIBS += /mingw/lib/libz.a INTERNAL_QSORT = YesPlease HAVE_LIBCHARSET_H = YesPlease - NO_GETTEXT = YesPlease - NO_PYTHON = YesPlease - COMPAT_CFLAGS += -D__USE_MINGW_ACCESS -else - ifneq ($(shell expr "$(uname_R)" : '1\.'),2) - # MSys2 - prefix = /usr/ - # Enable DEP - BASIC_LDFLAGS += -Wl,--nxcompat - # Enable ASLR (unless debugging) - ifneq (,$(findstring -O,$(filter-out -O0 -Og,$(CFLAGS)))) - BASIC_LDFLAGS += -Wl,--dynamicbase - endif - 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 - endif - CC = gcc - COMPAT_CFLAGS += -D__USE_MINGW_ANSI_STDIO=0 -DDETECT_MSYS_TTY \ - -fstack-protector-strong - EXTLIBS += -lntdll - INSTALL = /bin/install - INTERNAL_QSORT = YesPlease - HAVE_LIBCHARSET_H = YesPlease - USE_GETTEXT_SCHEME = fallthrough - USE_LIBPCRE = YesPlease - USE_NED_ALLOCATOR = YesPlease - ifeq (/mingw64,$(subst 32,64,$(prefix))) - # Move system config into top-level /etc/ - ETC_GITCONFIG = ../etc/gitconfig - ETC_GITATTRIBUTES = ../etc/gitattributes - endif - else - COMPAT_CFLAGS += -D__USE_MINGW_ANSI_STDIO - NO_CURL = YesPlease - NO_PYTHON = YesPlease + USE_GETTEXT_SCHEME = fallthrough + USE_LIBPCRE = YesPlease + USE_NED_ALLOCATOR = YesPlease + ifeq (/mingw64,$(subst 32,64,$(prefix))) + # Move system config into top-level /etc/ + ETC_GITCONFIG = ../etc/gitconfig + ETC_GITATTRIBUTES = ../etc/gitattributes endif endif -endif ifeq ($(uname_S),QNX) COMPAT_CFLAGS += -DSA_RESTART=0 EXPAT_NEEDS_XMLPARSE_H = YesPlease -- cgit v1.2.3