Re: [PATCH 2/2] mingw: remove msysGit/MSYS1 support
"Harshil-Jani via GitGitGadget" <gitgitgadget@gmail.com> writes:
> From: Harshil-Jani <harshiljani2002@gmail.com>
>
> The msysGit (i.e. Git for Windows 1.x' SDK) is no longer used and the
> last known user for MSys1 + MinGW has switched to MSys2.
It is curious that we can speak with such a certainty of the lack of users of such a popular project. References?
Show 8 quoted lines
> So there was no
> reason to keep the msysGit/MSys1 config section. This Patch intends to
> remove the support of both the builds and throw an error on
> execution.
>
> The output of `uname -r` if returns us with '1.' then it relates with MSys1
> build environment and msysGit which we don't want to continue ahead and thus
> an error can be expected.
The above clearly explains what is written in the patch text, but the proposed log message does not explain what ../THIS_IS_MSYSGIT used to guard and why now we can remove it.
Show 7 quoted lines
> The MSYS2 is currently used into the MinGW so we can get that part
> running directly without any conditionals required.
>
> Signed-off-by: Harshil-Jani <harshiljani2002@gmail.com>
> ---
> config.mak.uname | 85 ++++++++++++++++++++----------------------------
> 1 file changed, 35 insertions(+), 50 deletions(-)
Thanks. It always is good to see more lines go away ;-) but these two patches need to be explained a bit better and supported by folks who have been active on Windows port of the project.
Show 108 quoted lines
> diff --git a/config.mak.uname b/config.mak.uname
> index 377667c4bbc..965ec530837 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