[PATCH] msys2 detection in autoconf

Alex Kashchenko akashche at redhat.com
Mon May 20 14:29:18 UTC 2019


Hi,

We've got an unusual build scenario, when user has a jdk-windows build 
setup with a pre-configured cygwin environment (and a batch script to 
run the build), but want to start this build on a remote machine that 
runs SSH server inside msys2 environment.

In this scenario, with batch script started over msys2 SSH, autoconf 
fails on OS detection, and the patch below (submitted by github user 
quanah) is needed to fix that.

If someone thinks that such change is a good idea - I can file a Jira 
issue and prepare a webrev for it.

Please note, that this patch is not intended to enable msys2 to actually 
run jdk build - msys2 environment is used only to start the build that 
uses cygwin.

Some details on a relationship between msys, msysgit, msys2 and cygwin: 
https://stackoverflow.com/a/53572628/314015


diff --git a/make/autoconf/build-aux/autoconf-config.sub 
b/make/autoconf/build-aux/autoconf-config.sub
index 1aab2b303..8c1d24db7 100644
--- a/make/autoconf/build-aux/autoconf-config.sub
+++ b/make/autoconf/build-aux/autoconf-config.sub
@@ -1274,7 +1274,7 @@ case $os in
               | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
               | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
               | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-             | -chorusos* | -chorusrdb* \
+             | -chorusos* | -chorusrdb* | -msys* \
               | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
               | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
               | -uxpv* | -beos* | -mpeix* | -udk* \
diff --git a/make/autoconf/platform.m4 b/make/autoconf/platform.m4
index 39134d121..ded491c64 100644
--- a/make/autoconf/platform.m4
+++ b/make/autoconf/platform.m4
@@ -192,6 +192,10 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_OS],
        VAR_OS=windows
        VAR_OS_ENV=windows.msys
        ;;
+    *msys*)
+      VAR_OS=windows
+      VAR_OS_ENV=windows.cygwin
+      ;;
      *aix*)
        VAR_OS=aix
        VAR_OS_TYPE=unix


-- 
-Alex



More information about the build-dev mailing list