Re: [PATCH 1/1] mingw: allow building with an MSYS2 runtime v3.x
- Date: Sun, 10 Mar 2019 10:09:44 +0900
- From: Junio C Hamano <gitster@xxxxxxxxx>
- Subject: Re: [PATCH 1/1] mingw: allow building with an MSYS2 runtime v3.x
"Johannes Schindelin via GitGitGadget" <gitgitgadget@xxxxxxxxx>
> So let's invert that test case to test for *anything else* than a
> version starting with "1" (for MSys). That should safeguard us for the
> future, even if Cygwin ends up releasing versionsl like 314.272.65536.
An obvious alternative is to do "2" -> "" *and* update the else
to an explicit check for "1", *and* add an else that fails the build
when it sees "4" and other unknown ones.
I do not know how compatible MSYS2 runtime v4.x will be with the
settings the part inside the ifneq() we see here protects, but you
probably do, so I think this would be good enough. The only case
that makes any difference is when v4.x _mostly_ satisifies but
slightly differs, affecting the built binary in a subtle way that is
not discovered right away. But in such a case, the more cautious
"fail on '4' that we do not recognize" will not help much, as the
first reaction after seeing the error would be to copy the settings
that used to be OK with v2.x and v3.x anyway (which is what is being
done here---we start with the assumption that the support needed for
v3.x is largely the same as v2.x).
Will queue directly on top of... 'maint'? 'master'?
Let's say 'maint' and merge that up to 'master'.
> Signed-off-by: Johannes Schindelin <johannes.schindelin@xxxxxx>
> config.mak.uname | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> diff --git a/config.mak.uname b/config.mak.uname
> index c8b0e34c31..0207e895a4 100644
> --- a/config.mak.uname
> +++ b/config.mak.uname
> @@ -569,7 +569,7 @@ ifneq (,$(wildcard ../THIS_IS_MSYSGIT))
> NO_GETTEXT = YesPlease
> COMPAT_CLFAGS += -D__USE_MINGW_ACCESS
> - ifeq ($(shell expr "$(uname_R)" : '2\.'),2)
> + ifneq ($(shell expr "$(uname_R)" : '1\.'),2)
> # MSys2
> prefix = /usr/
> ifeq (MINGW32,$(MSYSTEM))