diff -aurp cmake-3.9.3/bootstrap.orig cmake-3.9.3/bootstrap --- cmake-3.9.3/bootstrap.orig 2017-09-20 07:49:57.000000000 -0400 +++ cmake-3.9.3/bootstrap 2017-10-03 01:15:09.115997900 -0400 @@ -92,8 +92,15 @@ else cmake_system_cygwin=false fi +# Determine whether this is a MSYS environment. +if echo "${cmake_system}" | grep MSYS >/dev/null 2>&1; then + cmake_system_msys=true +else + cmake_system_msys=false +fi + # Determine whether this is a MinGW environment. -if echo "${cmake_system}" | grep 'MINGW\|MSYS' >/dev/null 2>&1; then +if echo "${cmake_system}" | grep 'MINGW' >/dev/null 2>&1; then cmake_system_mingw=true else cmake_system_mingw=false @@ -846,6 +853,10 @@ if ${cmake_system_cygwin}; then cmake_ld_flags="${LDFLAGS} -Wl,--enable-auto-import" fi +if ${cmake_system_msys}; then + cmake_ld_flags="${LDFLAGS} -Wl,--enable-auto-import" +fi + # Add CoreFoundation framework on Darwin if ${cmake_system_darwin}; then cmake_ld_flags="${LDFLAGS} -framework CoreFoundation" @@ -877,6 +888,7 @@ cmake_toolchains='' case "${cmake_system}" in *AIX*) cmake_toolchains='XL GNU' ;; *CYGWIN*) cmake_toolchains='GNU' ;; + *MSYS*) cmake_toolchains='GNU' ;; *Darwin*) cmake_toolchains='Clang GNU' ;; *Linux*) cmake_toolchains='GNU Clang XL PGI PathScale' ;; *MINGW*) cmake_toolchains='GNU' ;; diff -aurp cmake-3.9.3/CMakeCPack.cmake.orig cmake-3.9.3/CMakeCPack.cmake --- cmake-3.9.3/CMakeCPack.cmake.orig 2017-10-02 11:27:41.637071400 -0400 +++ cmake-3.9.3/CMakeCPack.cmake 2017-10-02 11:38:56.302332900 -0400 @@ -41,6 +41,8 @@ if(NOT DEFINED CPACK_SYSTEM_NAME) # cygwin is good for the system name if("x${CMAKE_SYSTEM_NAME}" STREQUAL "xCYGWIN") set(CPACK_SYSTEM_NAME Cygwin) + elseif("x${CMAKE_SYSTEM_NAME}" STREQUAL "xMSYS") + set(CPACK_SYSTEM_NAME MSYS) else() set(CPACK_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}) endif() @@ -210,7 +212,7 @@ if(NOT DEFINED CPACK_PACKAGE_FILE_NAME) # if the CPACK_PACKAGE_FILE_NAME is not defined by the cache # default to source package - system, on cygwin system is not # needed - if(CYGWIN) + if(CYGWIN OR MSYS) set(CPACK_PACKAGE_FILE_NAME "${CPACK_SOURCE_PACKAGE_FILE_NAME}") else() set(CPACK_PACKAGE_FILE_NAME diff -aur cmake-3.9.3/Modules/CMakeCCompiler.cmake.in.orig cmake-3.9.3/Modules/CMakeCCompiler.cmake.in --- cmake-3.9.3/Modules/CMakeCCompiler.cmake.in.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeCCompiler.cmake.in 2017-10-04 20:14:08.902901300 -0400 @@ -25,10 +25,15 @@ set(CMAKE_C_COMPILER_WORKS @CMAKE_C_COMP set(CMAKE_C_ABI_COMPILED @CMAKE_C_ABI_COMPILED@) set(CMAKE_COMPILER_IS_MINGW @CMAKE_COMPILER_IS_MINGW@) set(CMAKE_COMPILER_IS_CYGWIN @CMAKE_COMPILER_IS_CYGWIN@) +set(CMAKE_COMPILER_IS_MSYS @CMAKE_COMPILER_IS_MSYS@) if(CMAKE_COMPILER_IS_CYGWIN) set(CYGWIN 1) set(UNIX 1) endif() +if(CMAKE_COMPILER_IS_MSYS) + set(MSYS 1) + set(UNIX 1) +endif() set(CMAKE_C_COMPILER_ENV_VAR "CC") diff -aur cmake-3.9.3/Modules/CMakeCXXCompiler.cmake.in.orig cmake-3.9.3/Modules/CMakeCXXCompiler.cmake.in --- cmake-3.9.3/Modules/CMakeCXXCompiler.cmake.in.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeCXXCompiler.cmake.in 2017-10-04 21:23:05.811334500 -0400 @@ -26,10 +26,15 @@ set(CMAKE_CXX_COMPILER_WORKS @CMAKE_CXX_ set(CMAKE_CXX_ABI_COMPILED @CMAKE_CXX_ABI_COMPILED@) set(CMAKE_COMPILER_IS_MINGW @CMAKE_COMPILER_IS_MINGW@) set(CMAKE_COMPILER_IS_CYGWIN @CMAKE_COMPILER_IS_CYGWIN@) +set(CMAKE_COMPILER_IS_MSYS @CMAKE_COMPILER_IS_MSYS@) if(CMAKE_COMPILER_IS_CYGWIN) set(CYGWIN 1) set(UNIX 1) endif() +if(CMAKE_COMPILER_IS_MSYS) + set(MSYS 1) + set(UNIX 1) +endif() set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") diff -Naurp cmake-3.9.3/Modules/CMakeDetermineCCompiler.cmake.orig cmake-3.9.3/Modules/CMakeDetermineCCompiler.cmake --- cmake-3.9.3/Modules/CMakeDetermineCCompiler.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeDetermineCCompiler.cmake 2017-10-04 21:20:49.246516700 -0400 @@ -119,6 +119,8 @@ if(NOT CMAKE_C_COMPILER_ID_RUN) set(CMAKE_COMPILER_IS_MINGW 1) elseif(CMAKE_C_PLATFORM_ID MATCHES "Cygwin") set(CMAKE_COMPILER_IS_CYGWIN 1) + elseif(CMAKE_C_PLATFORM_ID MATCHES "MSYS") + set(CMAKE_COMPILER_IS_MSYS 1) endif() endif() diff -Naurp cmake-3.9.3/Modules/CMakeDetermineCXXCompiler.cmake.orig cmake-3.9.3/Modules/CMakeDetermineCXXCompiler.cmake --- cmake-3.9.3/Modules/CMakeDetermineCXXCompiler.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeDetermineCXXCompiler.cmake 2017-10-04 21:20:49.256518300 -0400 @@ -111,6 +111,8 @@ if(NOT CMAKE_CXX_COMPILER_ID_RUN) set(CMAKE_COMPILER_IS_MINGW 1) elseif(CMAKE_CXX_PLATFORM_ID MATCHES "Cygwin") set(CMAKE_COMPILER_IS_CYGWIN 1) + elseif(CMAKE_CXX_PLATFORM_ID MATCHES "MSYS") + set(CMAKE_COMPILER_IS_MSYS 1) endif() endif() diff -aurp cmake-3.9.3/Modules/CMakeDetermineFortranCompiler.cmake.orig cmake-3.9.3/Modules/CMakeDetermineFortranCompiler.cmake --- cmake-3.9.3/Modules/CMakeDetermineFortranCompiler.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeDetermineFortranCompiler.cmake 2017-10-04 21:40:45.862911700 -0400 @@ -198,6 +198,9 @@ if(NOT CMAKE_Fortran_COMPILER_ID_RUN) if(CMAKE_COMPILER_OUTPUT MATCHES "THIS_IS_CYGWIN") set(CMAKE_Fortran_PLATFORM_ID "Cygwin") endif() + if("${CMAKE_COMPILER_OUTPUT}" MATCHES ".*THIS_IS_MSYS.*" ) + set(CMAKE_Fortran_PLATFORM_ID "MSYS") + endif() endif() endif() endif() @@ -214,6 +217,9 @@ if(NOT CMAKE_Fortran_COMPILER_ID_RUN) if(CMAKE_COMPILER_OUTPUT MATCHES "THIS_IS_CYGWIN") set(CMAKE_Fortran_PLATFORM_ID "Cygwin") endif() + if(CMAKE_COMPILER_OUTPUT MATCHES "THIS_IS_MSYS") + set(CMAKE_Fortran_PLATFORM_ID "MSYS") + endif() endif() endif() @@ -225,6 +231,8 @@ if(NOT CMAKE_Fortran_COMPILER_ID_RUN) set(CMAKE_COMPILER_IS_MINGW 1) elseif(CMAKE_Fortran_PLATFORM_ID MATCHES "Cygwin") set(CMAKE_COMPILER_IS_CYGWIN 1) + elseif(CMAKE_Fortran_PLATFORM_ID MATCHES "MSYS") + set(CMAKE_COMPILER_IS_MSYS 1) endif() endif() diff -aur cmake-3.6.0/Modules/CMakeDetermineSystem.cmake.orig cmake-3.6.0/Modules/CMakeDetermineSystem.cmake --- cmake-3.9.3/Modules/CMakeDetermineSystem.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeDetermineSystem.cmake 2017-10-02 12:00:07.680428900 -0400 @@ -28,6 +28,7 @@ # Tru64 Tru64 # Ultrix ULTRIX # cygwin CYGWIN_NT-5.1 +# MSYS MSYS_NT-6.1 # MacOSX Darwin @@ -44,7 +45,7 @@ if(CMAKE_HOST_UNIX) else() exec_program(${CMAKE_UNAME} ARGS -r OUTPUT_VARIABLE CMAKE_HOST_SYSTEM_VERSION) endif() - if(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux|CYGWIN.*|Darwin|^GNU$") + if(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux|CYGWIN.*|MSYS.*|Darwin|^GNU$") exec_program(${CMAKE_UNAME} ARGS -m OUTPUT_VARIABLE CMAKE_HOST_SYSTEM_PROCESSOR RETURN_VALUE val) if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin" AND @@ -149,6 +150,11 @@ macro(ADJUST_CMAKE_SYSTEM_VARIABLES _PRE set(${_PREFIX}_NAME CYGWIN) endif() + # fix for MSYS which has windows version in it + if(${_PREFIX}_NAME MATCHES MSYS) + set(${_PREFIX}_NAME MSYS) + endif() + # set CMAKE_SYSTEM to the CMAKE_SYSTEM_NAME set(${_PREFIX} ${${_PREFIX}_NAME}) # if there is a CMAKE_SYSTEM_VERSION then add a -${CMAKE_SYSTEM_VERSION} diff -aurp cmake-3.9.3/Modules/CMakeFortranCompiler.cmake.in.orig cmake-3.9.3/Modules/CMakeFortranCompiler.cmake.in --- cmake-3.9.3/Modules/CMakeFortranCompiler.cmake.in.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeFortranCompiler.cmake.in 2017-10-04 21:45:40.120047800 -0400 @@ -17,11 +17,17 @@ set(CMAKE_Fortran_COMPILER_WORKS @CMAKE_ set(CMAKE_Fortran_ABI_COMPILED @CMAKE_Fortran_ABI_COMPILED@) set(CMAKE_COMPILER_IS_MINGW @CMAKE_COMPILER_IS_MINGW@) set(CMAKE_COMPILER_IS_CYGWIN @CMAKE_COMPILER_IS_CYGWIN@) +set(CMAKE_COMPILER_IS_CYGWIN @CMAKE_COMPILER_IS_MSYS@) if(CMAKE_COMPILER_IS_CYGWIN) set(CYGWIN 1) set(UNIX 1) endif() +if(CMAKE_COMPILER_IS_MSYS) + set(MSYS 1) + set(UNIX 1) +endif() + set(CMAKE_Fortran_COMPILER_ENV_VAR "FC") set(CMAKE_Fortran_COMPILER_SUPPORTS_F90 @CMAKE_Fortran_COMPILER_SUPPORTS_F90@) diff -aurp cmake-3.9.3/Modules/CMakeFortranCompilerId.F.in.orig cmake-3.9.3/Modules/CMakeFortranCompilerId.F.in --- cmake-3.9.3/Modules/CMakeFortranCompilerId.F.in.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeFortranCompilerId.F.in 2017-10-04 21:33:56.632877600 -0400 @@ -124,6 +124,8 @@ #endif #if defined(__linux) || defined(__linux__) || defined(linux) PRINT *, 'INFO:platform[Linux]' +#elif defined(__MSYS__) + PRINT *, 'INFO:platform[MSYS]' #elif defined(__CYGWIN__) PRINT *, 'INFO:platform[Cygwin]' #elif defined(__MINGW32__) diff -Naur cmake-3.9.3/Modules/CMakeJavaInformation.cmake.orig cmake-3.9.3/Modules/CMakeJavaInformation.cmake --- cmake-3.9.3/Modules/CMakeJavaInformation.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeJavaInformation.cmake 2017-10-04 22:18:29.727966700 -0400 @@ -42,7 +42,7 @@ endif() # set java include flag option and the separator for multiple include paths set(CMAKE_INCLUDE_FLAG_Java "-classpath ") -if(WIN32 AND NOT CYGWIN) +if(WIN32 AND NOT CYGWIN AND NOT MSYS) set(CMAKE_INCLUDE_FLAG_SEP_Java ";") else() set(CMAKE_INCLUDE_FLAG_SEP_Java ":") diff -aur cmake-3.6.0/Modules/CMakePlatformId.h.in.orig cmake-3.6.0/Modules/CMakePlatformId.h.in --- cmake-3.6.0/Modules/CMakePlatformId.h.in.orig 2016-04-15 09:41:20.000000000 -0400 +++ cmake-3.6.0/Modules/CMakePlatformId.h.in 2016-05-22 12:50:42.935082200 -0400 @@ -5,6 +5,9 @@ #if defined(__linux) || defined(__linux__) || defined(linux) # define PLATFORM_ID "Linux" +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + #elif defined(__CYGWIN__) # define PLATFORM_ID "Cygwin" diff -Naurp cmake-3.9.3/Modules/CMakeSystemSpecificInformation.cmake.orig cmake-3.9.3/Modules/CMakeSystemSpecificInformation.cmake --- cmake-3.9.3/Modules/CMakeSystemSpecificInformation.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CMakeSystemSpecificInformation.cmake 2017-10-04 20:50:07.445167300 -0400 @@ -14,6 +14,7 @@ set(APPLE ) set(UNIX ) set(CYGWIN ) +set(MSYS ) set(WIN32 ) diff -Naur cmake-3.6.0/Modules/CMakeTestGNU.c cmake-3.6.0-msys/Modules/CMakeTestGNU.c --- cmake-3.6.0/Modules/CMakeTestGNU.c 2013-07-02 17:41:39.000000000 +0400 +++ cmake-3.6.0-msys/Modules/CMakeTestGNU.c 2014-04-06 22:30:05.906600000 +0400 @@ -4,6 +4,8 @@ #ifdef __MINGW32__ void THIS_IS_MINGW(); #endif +#if defined(__MSYS__) +void THIS_IS_MSYS(); +#elif defined(__CYGWIN__) -#ifdef __CYGWIN__ void THIS_IS_CYGWIN(); #endif diff -aur cmake-3.9.3/Modules/CPack.cmake.orig cmake-3.9.3/Modules/CPack.cmake --- cmake-3.9.3/Modules/CPack.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CPack.cmake 2017-10-02 12:07:56.851684600 -0400 @@ -460,6 +460,8 @@ if(NOT CPACK_GENERATOR) if(UNIX) if(CYGWIN) option(CPACK_BINARY_CYGWIN "Enable to build Cygwin binary packages" ON) + elseif(MSYS) + option(CPACK_BINARY_MSYS "Enable to build MSYS binary packages" ON) else() if(APPLE) option(CPACK_BINARY_BUNDLE "Enable to build OSX bundles" OFF) @@ -489,6 +491,7 @@ if(NOT CPACK_GENERATOR) cpack_optional_append(CPACK_GENERATOR CPACK_BINARY_7Z 7Z) cpack_optional_append(CPACK_GENERATOR CPACK_BINARY_BUNDLE Bundle) cpack_optional_append(CPACK_GENERATOR CPACK_BINARY_CYGWIN CygwinBinary) + cpack_optional_append(CPACK_GENERATOR CPACK_BINARY_MSYS MsysBinary) cpack_optional_append(CPACK_GENERATOR CPACK_BINARY_DEB DEB) cpack_optional_append(CPACK_GENERATOR CPACK_BINARY_DRAGNDROP DragNDrop) cpack_optional_append(CPACK_GENERATOR CPACK_BINARY_IFW IFW) @@ -512,6 +515,8 @@ if(NOT CPACK_SOURCE_GENERATOR) if(UNIX) if(CYGWIN) option(CPACK_SOURCE_CYGWIN "Enable to build Cygwin source packages" ON) + elseif(MSYS) + option(CPACK_SOURCE_MSYS "Enable to build MSYS source packages" ON) else() option(CPACK_SOURCE_RPM "Enable to build RPM source packages" OFF) option(CPACK_SOURCE_TBZ2 "Enable to build TBZ2 source packages" ON) @@ -540,6 +545,7 @@ mark_as_advanced( CPACK_BINARY_7Z CPACK_BINARY_BUNDLE CPACK_BINARY_CYGWIN + CPACK_BINARY_MSYS CPACK_BINARY_DEB CPACK_BINARY_DRAGNDROP CPACK_BINARY_IFW @@ -557,6 +563,7 @@ mark_as_advanced( CPACK_BINARY_ZIP CPACK_SOURCE_7Z CPACK_SOURCE_CYGWIN + CPACK_SOURCE_MSYS CPACK_SOURCE_RPM CPACK_SOURCE_TBZ2 CPACK_SOURCE_TGZ diff -Naur cmake-3.6.0/Modules/CPackMsys.cmake cmake-3.6.0-msys/Modules/CPackMsys.cmake --- cmake-3.6.0/Modules/CPackMsys.cmake 1970-01-01 03:00:00.000000000 +0300 +++ cmake-3.6.0-msys/Modules/CPackMsys.cmake 2014-04-06 22:36:05.586600000 +0400 @@ -0,0 +1,33 @@ +##section Variables specific to CPack MSYS generator +##end +##module +# - MSYS CPack generator (MSYS). +# The following variable is specific to installers build on +# and/or for MSYS: +##end +# +##variable +# CPACK_MSYS_PATCH_NUMBER - The MSYS patch number. +# FIXME: This documentation is incomplete. +##end +##variable +# CPACK_MSYS_PATCH_FILE - The MSYS patch file. +# FIXME: This documentation is incomplete. +##end +##variable +# CPACK_MSYS_BUILD_SCRIPT - The MSYS build script. +# FIXME: This documentation is incomplete. +##end + +#============================================================================= +# Copyright 2006-2012 Kitware, Inc. +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) diff -Naur cmake-3.6.0/Modules/CPackZIP.cmake cmake-3.6.0-msys/Modules/CPackZIP.cmake --- cmake-3.9.3/Modules/CPackZIP.cmake.orig 2017-09-20 07:49:55.000000000 -0400 +++ cmake-3.9.3/Modules/CPackZIP.cmake 2017-10-04 20:28:17.263467100 -0400 @@ -21,6 +21,15 @@ if(NOT ZIP_EXECUTABLE) endif() if(NOT ZIP_EXECUTABLE) + find_package(Msys) + find_program(ZIP_EXECUTABLE zip PATHS "${MSYS_INSTALL_PATH}/usr/bin") + if(ZIP_EXECUTABLE) + set(CPACK_ZIP_COMMAND "\"${ZIP_EXECUTABLE}\" -r \"\" . -i@") + set(CPACK_ZIP_NEED_QUOTES FALSE) + endif() +endif() + +if(NOT ZIP_EXECUTABLE) find_package(Cygwin) find_program(ZIP_EXECUTABLE zip PATHS "${CYGWIN_INSTALL_PATH}/bin") if(ZIP_EXECUTABLE) diff -aur cmake-3.9.3/Modules/ExternalProject.cmake.orig cmake-3.9.3/Modules/ExternalProject.cmake --- cmake-3.9.3/Modules/ExternalProject.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/ExternalProject.cmake 2017-10-04 20:34:25.159664800 -0400 @@ -1354,7 +1354,7 @@ function(_ep_write_log_script name step string(REGEX REPLACE "^\\$\\(MAKE\\)" "\${make}" command "${command}") set(make "-Dmake=$(MAKE)") - if(WIN32 AND NOT CYGWIN) + if(WIN32 AND NOT CYGWIN AND NOT MSYS) set(code_cygpath_make " if(\${make} MATCHES \"^/\") execute_process( diff -aur cmake-3.9.3/Modules/FindBoost.cmake.orig cmake-3.9.3/Modules/FindBoost.cmake --- cmake-3.9.3/Modules/FindBoost.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindBoost.cmake 2017-10-04 20:28:17.314476900 -0400 @@ -1314,7 +1314,7 @@ endif() set(Boost_LIB_PREFIX "") if ( (GHSMULTI AND Boost_USE_STATIC_LIBS) OR - (WIN32 AND Boost_USE_STATIC_LIBS AND NOT CYGWIN) ) + ( WIN32 AND Boost_USE_STATIC_LIBS AND NOT CYGWIN AND NOT MSYS) ) set(Boost_LIB_PREFIX "lib") endif() diff -aur cmake-3.9.3/Modules/FindCoin3D.cmake.orig cmake-3.9.3/Modules/FindCoin3D.cmake --- cmake-3.9.3/Modules/FindCoin3D.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindCoin3D.cmake 2017-10-05 00:03:18.424930100 -0400 @@ -19,7 +19,7 @@ # COIN3D_LIBRARIES - Link to this to use Coin3D if (WIN32) - if (CYGWIN) + if (CYGWIN OR MSYS) find_path(COIN3D_INCLUDE_DIRS Inventor/So.h) find_library(COIN3D_LIBRARIES Coin) diff -aur cmake-3.9.3/Modules/FindCurses.cmake.orig cmake-3.9.3/Modules/FindCurses.cmake --- cmake-3.9.3/Modules/FindCurses.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindCurses.cmake 2017-10-05 00:03:18.435930000 -0400 @@ -54,7 +54,7 @@ endif() # cygwin ncurses stopped providing curses.h symlinks see above # message. Cygwin is an ncurses package, so force ncurses on # cygwin if the curses.h is missing -if(CYGWIN) +if(CYGWIN OR MSYS) if(NOT EXISTS /usr/include/curses.h) set(CURSES_USE_NCURSES TRUE) endif() diff -aur cmake-3.9.3/Modules/FindFLTK.cmake.orig cmake-3.9.3/Modules/FindFLTK.cmake --- cmake-3.9.3/Modules/FindFLTK.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindFLTK.cmake 2017-10-05 00:03:18.448931300 -0400 @@ -63,7 +63,7 @@ endif() # Platform dependent libraries required by FLTK if(WIN32) - if(NOT CYGWIN) + if(NOT CYGWIN AND NOT MSYS) if(BORLAND) set( FLTK_PLATFORM_DEPENDENT_LIBS import32 ) else() diff -aur cmake-3.9.3/Modules/FindFLTK2.cmake.orig cmake-3.9.3/Modules/FindFLTK2.cmake --- cmake-3.9.3/Modules/FindFLTK2.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindFLTK2.cmake 2017-10-05 00:03:18.460932400 -0400 @@ -29,7 +29,7 @@ set (FLTK2_DIR $ENV{FLTK2_DIR} ) # Platform dependent libraries required by FLTK2 if(WIN32) - if(NOT CYGWIN) + if(NOT CYGWIN AND NOT MSYS) if(BORLAND) set( FLTK2_PLATFORM_DEPENDENT_LIBS import32 ) else() diff -aurp cmake-3.9.3/Modules/FindGnuplot.cmake.orig cmake-3.9.3/Modules/FindGnuplot.cmake --- cmake-3.9.3/Modules/FindGnuplot.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindGnuplot.cmake 2017-10-05 00:03:18.476932800 -0400 @@ -22,6 +22,7 @@ # GNUPLOT_VERSION_STRING will not work for old versions like 3.7.1. include(${CMAKE_CURRENT_LIST_DIR}/FindCygwin.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/FindMsys.cmake) find_program(GNUPLOT_EXECUTABLE NAMES @@ -30,6 +31,7 @@ find_program(GNUPLOT_EXECUTABLE wgnupl32 PATHS ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin ) if (GNUPLOT_EXECUTABLE) diff -Naur cmake-3.6.0/Modules/FindMsys.cmake cmake-3.6.0-msys/Modules/FindMsys.cmake --- cmake-3.6.0/Modules/FindMsys.cmake 1970-01-01 03:00:00.000000000 +0300 +++ cmake-3.6.0-msys/Modules/FindMsys.cmake 2014-04-06 22:41:54.745800000 +0400 @@ -0,0 +1,28 @@ +# - this module looks for MSYS +# + +#============================================================================= +# Copyright 2001-2009 Kitware, Inc. +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) + +if (WIN32) + find_path(MSYS_INSTALL_PATH + msys2_shell.cmd + "C:/MSYS" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MSYS\\setup;rootdir]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Cygnus Solutions\\MSYS\\mounts v2\\/;native]" + ) + + mark_as_advanced( + MSYS_INSTALL_PATH + ) +endif () diff -aur cmake-3.6.0/Modules/FindOpenGL.cmake.orig cmake-3.6.0/Modules/FindOpenGL.cmake --- cmake-3.6.0/Modules/FindOpenGL.cmake.orig 2016-04-15 09:41:21.000000000 -0400 +++ cmake-3.6.0/Modules/FindOpenGL.cmake 2016-05-22 13:22:33.890218700 -0400 @@ -50,7 +50,7 @@ set(_OpenGL_REQUIRED_VARS OPENGL_gl_LIBRARY) -if (CYGWIN) +if (CYGWIN OR MSYS) find_path(OPENGL_INCLUDE_DIR GL/gl.h ) list(APPEND _OpenGL_REQUIRED_VARS OPENGL_INCLUDE_DIR) diff -aurp cmake-3.9.3/Modules/FindOpenSSL.cmake.orig cmake-3.9.3/Modules/FindOpenSSL.cmake --- cmake-3.9.3/Modules/FindOpenSSL.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindOpenSSL.cmake 2017-10-04 20:54:18.301231500 -0400 @@ -97,7 +97,7 @@ find_path(OPENSSL_INCLUDE_DIR include ) -if(WIN32 AND NOT CYGWIN) +if(WIN32 AND NOT CYGWIN AND NOT MSYS) if(MSVC) # /MD and /MDd are the standard values - if someone wants to use # others, the libnames have to change here too diff -aur cmake-3.9.3//Modules/FindPerl.cmake.orig cmake-3.9.3//Modules/FindPerl.cmake --- cmake-3.9.3//Modules/FindPerl.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3//Modules/FindPerl.cmake 2017-10-04 20:54:18.312232100 -0400 @@ -16,9 +16,11 @@ # PERL_VERSION_STRING - version of perl found (since CMake 2.8.8) include(${CMAKE_CURRENT_LIST_DIR}/FindCygwin.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/FindMsys.cmake) set(PERL_POSSIBLE_BIN_PATHS ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin ) if(WIN32) diff -aur cmake-3.9.3/Modules/FindPNG.cmake.orig cmake-3.9.3/Modules/FindPNG.cmake --- cmake-3.9.3/Modules/FindPNG.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindPNG.cmake 2017-10-04 21:51:37.769465600 -0400 @@ -96,7 +96,7 @@ if(ZLIB_FOUND) set(PNG_INCLUDE_DIR ${PNG_INCLUDE_DIRS} ) # for backward compatibility set(PNG_LIBRARIES ${PNG_LIBRARY} ${ZLIB_LIBRARY}) - if (CYGWIN) + if (CYGWIN OR MSYS) if(BUILD_SHARED_LIBS) # No need to define PNG_USE_DLL here, because it's default for Cygwin. else() diff -aurp cmake-3.9.3/Modules/FindPythonLibs.cmake.orig cmake-3.9.3/Modules/FindPythonLibs.cmake --- cmake-3.9.3/Modules/FindPythonLibs.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindPythonLibs.cmake 2017-10-04 21:51:37.779468900 -0400 @@ -291,7 +291,7 @@ function(PYTHON_ADD_MODULE _NAME ) if(PYTHON_MODULE_${_NAME}_BUILD_SHARED) set_target_properties(${_NAME} PROPERTIES PREFIX "${PYTHON_MODULE_PREFIX}") - if(WIN32 AND NOT CYGWIN) + if(WIN32 AND NOT CYGWIN AND NOT MSYS) set_target_properties(${_NAME} PROPERTIES SUFFIX ".pyd") endif() endif() diff -aurp cmake-3.9.3/Modules/FindQt3.cmake.orig cmake-3.9.3/Modules/FindQt3.cmake --- cmake-3.9.3/Modules/FindQt3.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindQt3.cmake 2017-10-04 21:51:37.798470400 -0400 @@ -230,7 +230,7 @@ if(QT_FOUND) set( QT_LIBRARIES ${QT_LIBRARIES} ${QT_QT_LIBRARY} ) set( QT_DEFINITIONS "") - if (WIN32 AND NOT CYGWIN) + if (WIN32 AND NOT CYGWIN AND NOT MSYS) if (QT_QTMAIN_LIBRARY) # for version 3 set (QT_DEFINITIONS -DQT_DLL -DQT_THREAD_SUPPORT -DNO_DEBUG) diff -aur cmake-3.9.3/Modules/FindSelfPackers.cmake.orig cmake-3.9.3/Modules/FindSelfPackers.cmake --- cmake-3.9.3/Modules/FindSelfPackers.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindSelfPackers.cmake 2017-10-04 21:17:31.296578200 -0400 @@ -16,10 +16,12 @@ # UPX: http://wildsau.idv.uni-linz.ac.at/mfx/upx.html include(${CMAKE_CURRENT_LIST_DIR}/FindCygwin.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/FindMsys.cmake) find_program(SELF_PACKER_FOR_EXECUTABLE upx ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin @@ -29,6 +31,7 @@ find_program(SELF_PACKER_FOR_EXECUTABLE find_program(SELF_PACKER_FOR_SHARED_LIB upx ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin diff -Naurp cmake-3.9.3/Modules/FindTclsh.cmake.orig cmake-3.9.3/Modules/FindTclsh.cmake --- cmake-3.9.3/Modules/FindTclsh.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindTclsh.cmake 2017-10-04 22:20:13.152933700 -0400 @@ -19,7 +19,7 @@ # In cygwin, look for the cygwin version first. Don't look for it later # to avoid finding the cygwin version on a Win32 build. -if(CYGWIN) +if(CYGWIN OR MSYS) find_program(TCL_TCLSH NAMES cygtclsh83 cygtclsh80) endif() diff -aurp cmake-3.9.3/Modules/FindThreads.cmake.orig cmake-3.9.3/Modules/FindThreads.cmake --- cmake-3.9.3/Modules/FindThreads.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindThreads.cmake 2017-10-04 21:51:37.824472100 -0400 @@ -199,7 +199,7 @@ if(CMAKE_USE_PTHREADS_INIT) set(CMAKE_THREAD_LIBS_INIT ) endif() - if(CMAKE_SYSTEM MATCHES "CYGWIN_NT") + if(CMAKE_SYSTEM MATCHES "CYGWIN_NT" OR CMAKE_SYSTEM MATCHES "MSYS_NT") set(CMAKE_USE_PTHREADS_INIT 1) set(Threads_FOUND TRUE) set(CMAKE_THREAD_LIBS_INIT ) diff -aurp cmake-3.9.3/Modules/FindUnixCommands.cmake.orig cmake-3.9.3/Modules/FindUnixCommands.cmake --- cmake-3.9.3/Modules/FindUnixCommands.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindUnixCommands.cmake 2017-10-04 20:16:44.929622300 -0400 @@ -11,10 +11,12 @@ # and stores the result in the variables BASH, CP, GZIP, MV, RM, and TAR. include(${CMAKE_CURRENT_LIST_DIR}/FindCygwin.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/FindMsys.cmake) find_program(BASH bash ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin @@ -27,6 +29,7 @@ mark_as_advanced( find_program(CP cp ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin @@ -39,6 +42,7 @@ mark_as_advanced( find_program(GZIP gzip ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin @@ -51,6 +55,7 @@ mark_as_advanced( find_program(MV mv ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin @@ -63,6 +68,7 @@ mark_as_advanced( find_program(RM rm ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin @@ -78,6 +84,7 @@ find_program(TAR gtar PATH ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin /bin /usr/bin /usr/local/bin diff -aurp cmake-3.6.0/Modules/FindWget.cmake.orig cmake-3.6.0/Modules/FindWget.cmake --- cmake-3.9.3/Modules/FindWget.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/FindWget.cmake 2017-10-05 00:03:18.673959200 -0400 @@ -15,10 +15,12 @@ # WGET_FOUND: True if wget has been found. include(${CMAKE_CURRENT_LIST_DIR}/FindCygwin.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/FindMsys.cmake) find_program(WGET_EXECUTABLE wget ${CYGWIN_INSTALL_PATH}/bin + ${MSYS_INSTALL_PATH}/usr/bin ) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) diff -aurp cmake-3.9.3/Modules/GenerateExportHeader.cmake.orig cmake-3.9.3/Modules/GenerateExportHeader.cmake --- cmake-3.9.3/Modules/GenerateExportHeader.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/GenerateExportHeader.cmake 2017-10-04 20:45:05.569431800 -0400 @@ -209,6 +209,7 @@ macro(_test_compiler_hidden_visibility) AND NOT _INTEL_TOO_OLD AND NOT WIN32 AND NOT CYGWIN + AND NOT MSYS AND NOT CMAKE_CXX_COMPILER_ID MATCHES XL AND NOT CMAKE_CXX_COMPILER_ID MATCHES PGI AND NOT CMAKE_CXX_COMPILER_ID MATCHES Watcom) @@ -261,7 +262,7 @@ macro(_DO_SET_MACRO_VALUES TARGET_LIBRAR get_property(type TARGET ${TARGET_LIBRARY} PROPERTY TYPE) if(NOT ${type} STREQUAL "STATIC_LIBRARY") - if(WIN32 OR CYGWIN) + if(WIN32 OR CYGWIN OR MSYS) set(DEFINE_EXPORT "__declspec(dllexport)") set(DEFINE_IMPORT "__declspec(dllimport)") elseif(COMPILER_HAS_HIDDEN_VISIBILITY) diff -Naurp cmake-3.9.3/Modules/KDE3Macros.cmake.orig cmake-3.9.3/Modules/KDE3Macros.cmake --- cmake-3.9.3/Modules/KDE3Macros.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/KDE3Macros.cmake 2017-10-05 00:03:18.690959200 -0400 @@ -310,7 +310,7 @@ macro(KDE3_INSTALL_LIBTOOL_FILE _target) file(APPEND ${_laname} "# The name that we can dlopen(3).\n") file(APPEND ${_laname} "dlname='${_soname}'\n") file(APPEND ${_laname} "# Names of this library\n") - if(CYGWIN) + if(CYGWIN OR MSYS) file(APPEND ${_laname} "library_names='${_soname}'\n") else() file(APPEND ${_laname} "library_names='${_soname} ${_soname} ${_soname}'\n") diff -Naur cmake-3.9.3/Modules/Platform/nonexistant.cmake cmake-3.9.3/Modules/Platform/MSYS-GNU.cmake --- cmake-3.9.3/Modules/Platform/nonexistant.cmake 1969-12-31 19:00:00.000000000 -0500 +++ cmake-3.9.3/Modules/Platform/MSYS-GNU.cmake 2017-10-04 18:21:31.035241600 -0400 @@ -0,0 +1,51 @@ +# Distributed under the OSI-approved BSD 3-Clause License. See accompanying +# file Copyright.txt or https://cmake.org/licensing for details. + + +# This module is shared by multiple languages; use include blocker. +if(__MSYS_COMPILER_GNU) + return() +endif() +set(__MSYS_COMPILER_GNU 1) + +# TODO: Is -Wl,--enable-auto-import now always default? +string(APPEND CMAKE_EXE_LINKER_FLAGS_INIT " -Wl,--enable-auto-import") +set(CMAKE_CREATE_WIN32_EXE "-mwindows") + +set(CMAKE_GNULD_IMAGE_VERSION + "-Wl,--major-image-version,,--minor-image-version,") +set(CMAKE_GENERATOR_RC windres) +macro(__msys_compiler_gnu lang) + # Binary link rules. + set(CMAKE_${lang}_CREATE_SHARED_MODULE + " -o ${CMAKE_GNULD_IMAGE_VERSION} ") + set(CMAKE_${lang}_CREATE_SHARED_LIBRARY + " -o -Wl,--out-implib, ${CMAKE_GNULD_IMAGE_VERSION} ") + set(CMAKE_${lang}_LINK_EXECUTABLE + " -o -Wl,--out-implib, ${CMAKE_GNULD_IMAGE_VERSION} ") + + # No -fPIC on MSYS + set(CMAKE_${lang}_COMPILE_OPTIONS_PIC "") + set(CMAKE_${lang}_COMPILE_OPTIONS_PIE "") + set(CMAKE_SHARED_LIBRARY_${lang}_FLAGS "") + + # Initialize C link type selection flags. These flags are used when + # building a shared library, shared module, or executable that links + # to other libraries to select whether to use the static or shared + # versions of the libraries. + foreach(type SHARED_LIBRARY SHARED_MODULE EXE) + set(CMAKE_${type}_LINK_STATIC_${lang}_FLAGS "-Wl,-Bstatic") + set(CMAKE_${type}_LINK_DYNAMIC_${lang}_FLAGS "-Wl,-Bdynamic") + endforeach() + + set(CMAKE_EXE_EXPORTS_${lang}_FLAG "-Wl,--export-all-symbols") + # TODO: Is -Wl,--enable-auto-import now always default? + string(APPEND CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS " -Wl,--enable-auto-import") + set(CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS}") + + if(NOT CMAKE_RC_COMPILER_INIT) + set(CMAKE_RC_COMPILER_INIT windres) + endif() + + enable_language(RC) +endmacro() diff -Naur cmake-3.6.0/Modules/Platform/MSYS.cmake cmake-3.6.0-msys/Modules/Platform/MSYS.cmake --- cmake-3.9.3/Modules/Platform/nonexistant.cmake 1969-12-31 19:00:00.000000000 -0500 +++ cmake-3.9.3/Modules/Platform/MSYS.cmake 2017-10-04 18:38:51.046313500 -0400 @@ -0,0 +1,75 @@ +if("${CMAKE_MINIMUM_REQUIRED_VERSION}" VERSION_LESS "2.8.3.20101214") + set(__USE_CMAKE_LEGACY_CYGWIN_WIN32 1) +endif() +if(NOT DEFINED WIN32) + set(WIN32 0) + if(DEFINED __USE_CMAKE_LEGACY_CYGWIN_WIN32) + if(NOT DEFINED CMAKE_LEGACY_CYGWIN_WIN32 + AND DEFINED ENV{CMAKE_LEGACY_CYGWIN_WIN32}) + set(CMAKE_LEGACY_CYGWIN_WIN32 $ENV{CMAKE_LEGACY_CYGWIN_WIN32}) + endif() + if(CMAKE_LEGACY_CYGWIN_WIN32) + message(STATUS "Defining WIN32 under MSYS due to CMAKE_LEGACY_CYGWIN_WIN32") + set(WIN32 1) + elseif("x${CMAKE_LEGACY_CYGWIN_WIN32}" STREQUAL "x") + message(WARNING "CMake no longer defines WIN32 on MSYS!" + "\n" + "(1) If you are just trying to build this project, ignore this warning " + "or quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or " + "in the CMake cache. " + "If later configuration or build errors occur then this project may " + "have been written under the assumption that MSYS is WIN32. " + "In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead." + "\n" + "(2) If you are developing this project, add the line\n" + " set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required\n" + "at the top of your top-level CMakeLists.txt file or set the minimum " + "required version of CMake to 2.8.4 or higher. " + "Then teach your project to build on Cygwin without WIN32.") + endif() + elseif(DEFINED CMAKE_LEGACY_CYGWIN_WIN32) + message(AUTHOR_WARNING "CMAKE_LEGACY_CYGWIN_WIN32 ignored because\n" + " cmake_minimum_required(VERSION ${CMAKE_MINIMUM_REQUIRED_VERSION})\n" + "is at least 2.8.4.") + endif() +endif() +if(DEFINED __USE_CMAKE_LEGACY_CYGWIN_WIN32) + # Pass WIN32 legacy setting to scripts. + if(WIN32) + set(ENV{CMAKE_LEGACY_CYGWIN_WIN32} 1) + else() + set(ENV{CMAKE_LEGACY_CYGWIN_WIN32} 0) + endif() + unset(__USE_CMAKE_LEGACY_CYGWIN_WIN32) +endif() + +set(MSYS 1) +#set(CYGWIN 1) + +set(CMAKE_SHARED_LIBRARY_PREFIX "msys-") +set(CMAKE_SHARED_LIBRARY_SUFFIX ".dll") +set(CMAKE_SHARED_MODULE_PREFIX "msys-") +set(CMAKE_SHARED_MODULE_SUFFIX ".dll") +set(CMAKE_IMPORT_LIBRARY_PREFIX "lib") +set(CMAKE_IMPORT_LIBRARY_SUFFIX ".dll.a") +set(CMAKE_EXECUTABLE_SUFFIX ".exe") # .exe +# Modules have a different default prefix that shared libs. +set(CMAKE_MODULE_EXISTS 1) + +set(CMAKE_FIND_LIBRARY_PREFIXES "lib") +set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a") + +# Shared libraries on MSYS can be named with their version number. +set(CMAKE_SHARED_LIBRARY_NAME_WITH_VERSION 1) + +include(Platform/UnixPaths) + +# Windows API on Cygwin +list(APPEND CMAKE_SYSTEM_INCLUDE_PATH + /usr/include/w32api + ) + +# Windows API on Cygwin +list(APPEND CMAKE_SYSTEM_LIBRARY_PATH + /usr/lib/w32api + ) diff -Naur cmake-3.6.0/Modules/Platform/MSYS-CXX.cmake cmake-3.6.0-msys/Modules/Platform/MSYS-CXX.cmake --- cmake-3.6.0/Modules/Platform/MSYS-CXX.cmake 1970-01-01 03:00:00.000000000 +0300 +++ cmake-3.6.0-msys/Modules/Platform/MSYS-CXX.cmake 2013-07-02 17:41:40.000000000 +0400 @@ -0,0 +1,7 @@ +if(NOT CMAKE_CXX_COMPILER_NAMES) + set(CMAKE_CXX_COMPILER_NAMES c++) +endif() + +# Exclude C++ compilers differing from C compiler only by case +# because this platform may have a case-insensitive filesystem. +set(CMAKE_CXX_COMPILER_EXCLUDE CC aCC xlC) diff -Naur cmake-3.6.0/Modules/Platform/MSYS-GNU-C.cmake cmake-3.6.0-msys/Modules/Platform/MSYS-GNU-C.cmake --- cmake-3.6.0/Modules/Platform/MSYS-GNU-C.cmake 1970-01-01 03:00:00.000000000 +0300 +++ cmake-3.6.0-msys/Modules/Platform/MSYS-GNU-C.cmake 2014-04-06 22:59:38.341000000 +0400 @@ -0,0 +1,2 @@ +include(Platform/MSYS-GNU) +__msys_compiler_gnu(C) diff -Naur cmake-3.6.0/Modules/Platform/MSYS-GNU-CXX.cmake cmake-3.6.0-msys/Modules/Platform/MSYS-GNU-CXX.cmake --- cmake-3.6.0/Modules/Platform/MSYS-GNU-CXX.cmake 1970-01-01 03:00:00.000000000 +0300 +++ cmake-3.6.0-msys/Modules/Platform/MSYS-GNU-CXX.cmake 2014-04-06 23:00:30.585400000 +0400 @@ -0,0 +1,2 @@ +include(Platform/MSYS-GNU) +__msys_compiler_gnu(CXX) diff -Naur cmake-3.6.0/Modules/Platform/MSYS-GNU-Fortran.cmake cmake-3.6.0-msys/Modules/Platform/MSYS-GNU-Fortran.cmake --- cmake-3.6.0/Modules/Platform/MSYS-GNU-Fortran.cmake 1970-01-01 03:00:00.000000000 +0300 +++ cmake-3.6.0-msys/Modules/Platform/MSYS-GNU-Fortran.cmake 2014-04-06 23:01:19.366600000 +0400 @@ -0,0 +1,2 @@ +include(Platform/MSYS-GNU) +__msys_compiler_gnu(Fortran) diff -Naur cmake-3.6.0/Modules/Platform/MSYS-windres.cmake cmake-3.6.0-msys/Modules/Platform/MSYS-windres.cmake --- cmake-3.6.0/Modules/Platform/MSYS-windres.cmake 1970-01-01 03:00:00.000000000 +0300 +++ cmake-3.6.0-msys/Modules/Platform/MSYS-windres.cmake 2013-07-02 17:41:40.000000000 +0400 @@ -0,0 +1 @@ +set(CMAKE_RC_COMPILE_OBJECT " -O coff ") diff -aur cmake-3.9.3/Modules/UseJava.cmake.orig cmake-3.9.3/Modules/UseJava.cmake --- cmake-3.9.3/Modules/UseJava.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/UseJava.cmake 2017-10-04 23:12:25.651284300 -0400 @@ -505,7 +505,7 @@ function(add_jar _TARGET_NAME) ${CMAKE_JAVA_LIBRARY_OUTPUT_PATH} ) - if (CMAKE_HOST_WIN32 AND NOT CYGWIN AND CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") + if (CMAKE_HOST_WIN32 AND NOT CYGWIN AND NOT MSYS AND CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") set(CMAKE_JAVA_INCLUDE_FLAG_SEP ";") else () set(CMAKE_JAVA_INCLUDE_FLAG_SEP ":") @@ -1263,7 +1263,7 @@ function (create_javah) endif() set (_output_files) - if (WIN32 AND NOT CYGWIN AND CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") + if (WIN32 AND NOT CYGWIN AND NOT MSYS AND CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") set(_classpath_sep "$") else () set(_classpath_sep ":") diff -aurp cmake-3.9.3/Modules/UseSWIG.cmake.orig cmake-3.9.3/Modules/UseSWIG.cmake --- cmake-3.9.3/Modules/UseSWIG.cmake.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Modules/UseSWIG.cmake 2017-10-04 22:18:30.241042800 -0400 @@ -312,7 +312,7 @@ macro(SWIG_ADD_LIBRARY name) # Windows: .dll is no longer supported as a filename extension for extension modules. # .pyd is now the only filename extension that will be searched for. # - if(WIN32 AND NOT CYGWIN) + if(WIN32 AND NOT CYGWIN AND NOT MSYS) set_target_properties(${SWIG_MODULE_${name}_REAL_NAME} PROPERTIES SUFFIX ".pyd") endif() elseif ("${swig_lowercase_language}" STREQUAL "r") diff -aur cmake-3.9.3/Source/CMakeInstallDestinations.cmake.orig cmake-3.9.3/Source/CMakeInstallDestinations.cmake --- cmake-3.9.3/Source/CMakeInstallDestinations.cmake.orig 2017-10-02 12:13:02.852157200 -0400 +++ cmake-3.9.3/Source/CMakeInstallDestinations.cmake 2017-10-02 12:19:32.200184000 -0400 @@ -5,7 +5,7 @@ if(BEOS) set(CMAKE_MAN_DIR_DEFAULT "documentation/man") # HAIKU set(CMAKE_DOC_DIR_DEFAULT "documentation/doc/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # HAIKU set(CMAKE_XDGDATA_DIR_DEFAULT "share") # HAIKU -elseif(CYGWIN) +elseif(CYGWIN OR MSYS) set(CMAKE_BIN_DIR_DEFAULT "bin") # CYGWIN set(CMAKE_DATA_DIR_DEFAULT "share/cmake-${CMake_VERSION}") # CYGWIN set(CMAKE_DOC_DIR_DEFAULT "share/doc/cmake-${CMake_VERSION}") # CYGWIN diff -aur cmake-3.9.3/Source/CMakeLists.txt.orig cmake-3.9.3/Source/CMakeLists.txt --- cmake-3.9.3/Source/CMakeLists.txt.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Source/CMakeLists.txt 2017-10-04 19:31:04.587437300 -0400 @@ -719,7 +719,7 @@ set(SRCS ${SRCS} # Temporary variable for tools targets set(_tools) -if(WIN32 AND NOT CYGWIN) +if(WIN32 AND NOT CYGWIN AND NOT MSYS) set_source_files_properties(cmcldeps.cxx PROPERTIES COMPILE_DEFINITIONS _WIN32_WINNT=0x0501) add_executable(cmcldeps cmcldeps.cxx ${MANIFEST_FILE}) list(APPEND _tools cmcldeps) @@ -889,7 +889,7 @@ set(CPACK_SRCS ${CPACK_SRCS} CPack/IFW/cmCPackIFWRepository.h ) -if(CYGWIN) +if(CYGWIN OR MSYS) set(CPACK_SRCS ${CPACK_SRCS} CPack/cmCPackCygwinBinaryGenerator.cxx CPack/cmCPackCygwinSourceGenerator.cxx diff -aur cmake-3.9.3/Source/cmGeneratorTarget.cxx.orig cmake-3.9.3/Source/cmGeneratorTarget.cxx --- cmake-3.9.3/Source/cmGeneratorTarget.cxx.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Source/cmGeneratorTarget.cxx 2017-10-04 19:02:57.561318800 -0400 @@ -132,7 +132,7 @@ cmGeneratorTarget::cmGeneratorTarget(cmT this->DLLPlatform = (this->Makefile->IsOn("WIN32") || this->Makefile->IsOn("CYGWIN") || - this->Makefile->IsOn("MINGW")); + this->Makefile->IsOn("MSYS") || this->Makefile->IsOn("MINGW")); this->PolicyMap = t->PolicyMap; } diff -aurp cmake-3.6.0/Source/cmInstallCommand.cxx.orig cmake-3.6.0/Source/cmInstallCommand.cxx --- cmake-3.9.3/Source/cmInstallCommand.cxx.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Source/cmInstallCommand.cxx 2017-10-04 18:57:28.127064900 -0400 @@ -334,7 +334,7 @@ bool cmInstallCommand::HandleTargetsMode // Check whether this is a DLL platform. bool dll_platform = (this->Makefile->IsOn("WIN32") || this->Makefile->IsOn("CYGWIN") || - this->Makefile->IsOn("MINGW")); + this->Makefile->IsOn("MSYS") || this->Makefile->IsOn("MINGW")); for (std::vector::const_iterator targetIt = targetList.GetVector().begin(); diff -Naurp cmake-3.9.3/Source/cmTarget.cxx.orig cmake-3.9.3/Source/cmTarget.cxx --- cmake-3.9.3/Source/cmTarget.cxx.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Source/cmTarget.cxx 2017-10-04 19:11:43.954134700 -0400 @@ -201,7 +201,7 @@ cmTarget::cmTarget(std::string const& na // Check whether this is a DLL platform. this->DLLPlatform = (this->Makefile->IsOn("WIN32") || this->Makefile->IsOn("CYGWIN") || - this->Makefile->IsOn("MINGW")); + this->Makefile->IsOn("MSYS") || this->Makefile->IsOn("MINGW")); // Check whether we are targeting an Android platform. this->IsAndroid = diff -Naur cmake-3.6.0/Tests/CMakeOnly/CheckCXXCompilerFlag/CMakeLists.txt cmake-3.6.0-msys/Tests/CMakeOnly/CheckCXXCompilerFlag/CMakeLists.txt --- cmake-3.6.0/Tests/CMakeOnly/CheckCXXCompilerFlag/CMakeLists.txt 2013-07-02 17:41:40.000000000 +0400 +++ cmake-3.6.0-msys/Tests/CMakeOnly/CheckCXXCompilerFlag/CMakeLists.txt 2014-04-06 23:20:04.176400000 +0400 @@ -36,7 +36,7 @@ string (REGEX REPLACE ".*Version ([0-9]+(\\.[0-9]+)+).*" "\\1" _intel_version "${_intel_version_info}") endif() -message("Platform:\n WIN32: ${WIN32}\n UNIX: ${UNIX}\n APPLE: ${APPLE}\n MINGW: ${MINGW}\n CYGWIN: ${CYGWIN}\n" +message("Platform:\n WIN32: ${WIN32}\n UNIX: ${UNIX}\n APPLE: ${APPLE}\n MINGW: ${MINGW}\n CYGWIN: ${CYGWIN}\n MSYS: ${MSYS}\n" " MSVC: ${MSVC}\n MSVC60: ${MSVC60}\n MSVC70: ${MSVC70}\n MSVC71: ${MSVC71}\n MSVC80: ${MSVC80}\n MSVC90: ${MSVC90}\n MSVC10: ${MSVC10}\n" " GCC: ${_gcc_version}\n" " Clang: ${_clang_version}\n" diff -aur cmake-3.9.3/Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in.orig cmake-3.9.3/Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in --- cmake-3.9.3/Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in.orig 2017-10-02 12:37:58.175659200 -0400 +++ cmake-3.9.3/Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in 2017-10-02 12:57:39.282438700 -0400 @@ -507,21 +507,23 @@ list(APPEND platforms cygwin_gfortran) # MSYS # gcc dummy.c -v -set(msys_gcc_text " C:/some-mingw/bin/../libexec/gcc/mingw32/3.4.5/collect2.exe -Bdynamic /some-mingw/lib/crt2.o C:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/crtbegin.o -LC:/some-mingw/bin/../lib/gcc/mingw32/3.4.5 -LC:/some-mingw/bin/../lib/gcc -L/some-mingw/lib -LC:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/../../.. C:/home/user/AppData/Local/Temp/cckQmvRt.o -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt C:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/crtend.o") -set(msys_gcc_libs "mingw32;gcc;moldname;mingwex;user32;kernel32;advapi32;shell32;mingw32;gcc;moldname;mingwex") -set(msys_gcc_dirs "C:/some-mingw/lib/gcc/mingw32/3.4.5;C:/some-mingw/lib/gcc;/some-mingw/lib;C:/some-mingw/lib") +set(msys_gcc_text " /usr/lib/gcc/i686-pc-msys/4.9.2/collect2.exe -Bdynamic --dll-search-prefix=msys- /usr/lib/gcc/i686-pc-msys/4.9.2/../../../crt0.o -L/usr/lib/gcc/i686-pc-msys/4.8.2 -L/usr/lib/gcc/i686-pc-msys/4.9.2 -L/usr/lib/gcc/i686-pc-msys/4.8.2/../../.. /home/user/AppData/Local/Temp/cczg1Arh.o -lgcc -lmsys-2.0 -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc") +set(msys_gcc_libs "msys;user32;kernel32;advapi32;shell32") +set(msys_gcc_dirs "/usr/lib/gcc/i686-pc-msys/4.9.2;/usr/lib") list(APPEND platforms msys_gcc) # g++ dummy.cxx -v -set(msys_g++_text " C:/some-mingw/bin/../libexec/gcc/mingw32/3.4.5/collect2.exe -Bdynamic /some-mingw/lib/crt2.o C:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/crtbegin.o -LC:/some-mingw/bin/../lib/gcc/mingw32/3.4.5 -LC:/some-mingw/bin/../lib/gcc -L/some-mingw/lib -LC:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/../../.. C:/home/user/AppData/Local/Temp/cci5hYPk.o -lstdc++ -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt C:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/crtend.o") -set(msys_g++_libs "stdc++;mingw32;gcc;moldname;mingwex;user32;kernel32;advapi32;shell32;mingw32;gcc;moldname;mingwex") -set(msys_g++_dirs "C:/some-mingw/lib/gcc/mingw32/3.4.5;C:/some-mingw/lib/gcc;/some-mingw/lib;C:/some-mingw/lib") +set(msys_g++_text " /usr/lib/gcc/i686-pc-msys/4.9.2/collect2.exe -Bdynamic --dll-search-prefix=msys- /usr/lib/gcc/i686-pc-msys/4.8.2/../../../crt0.o -L/usr/lib/gcc/i686-pc-msys/4.9.2 -L/usr/lib/gcc/i686-pc-msys/4.9.2 -L/usr/lib/gcc/i686-pc-msys/4.9.2/../../.. /home/user/AppData/Local/Temp/ccsvcDO6.o -lstdc++ -lgcc -lmsys-2.0 -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc") +set(msys_g++_libs "stdc++;msys-2.0;user32;kernel32;advapi32;shell32") +set(msys_g++_dirs "/usr/lib/gcc/i686-pc-msys/4.9.2;/usr/lib") list(APPEND platforms msys_g++) # g77 dummy.f -v -set(msys_g77_text " C:/some-mingw/bin/../libexec/gcc/mingw32/3.4.5/collect2.exe -Bdynamic /some-mingw/lib/crt2.o C:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/crtbegin.o -LC:/some-mingw/bin/../lib/gcc/mingw32/3.4.5 -LC:/some-mingw/bin/../lib/gcc -L/some-mingw/lib -LC:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/../../.. C:/home/user/AppData/Local/Temp/ccabRxQ1.o -lfrtbegin -lg2c -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt C:/some-mingw/bin/../lib/gcc/mingw32/3.4.5/crtend.o") -set(msys_g77_libs "frtbegin;g2c;mingw32;gcc;moldname;mingwex;user32;kernel32;advapi32;shell32;mingw32;gcc;moldname;mingwex") -set(msys_g77_dirs "C:/some-mingw/lib/gcc/mingw32/3.4.5;C:/some-mingw/lib/gcc;/some-mingw/lib;C:/some-mingw/lib") +set(msys_g77_text "Configured with: ... LD=/opt/gcc-tools/bin/ld.exe + /usr/lib/gcc/i686-pc-msys/4.9.2/collect2.exe -Bdynamic --dll-search-prefix=msys- -u ___register_frame_info -u ___deregister_frame_info /usr/lib/gcc/i686-pc-msys/4.9.2/../../../crt0.o /usr/lib/gcc/i686-pc-msys/4.9.2/crtbegin.o -L/usr/lib/gcc/i686-pc-msys/4.9.2 -L/usr/lib/gcc/i686-pc-msys/4.8.2 -L/usr/lib/gcc/i686-pc-msys/4.9.2/../../.. /home/user/AppData/Local/Temp/ccqRWKWg.o -lgfortranbegin -lgfortran -lgcc_s -lgcc_s -lgcc -lmsys-2.0 -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc_s -lgcc_s -lgcc /usr/lib/gcc/i686-pc-msys/4.9.2/crtend.o +") +set(msys_g77_libs set(msys_g++_libs "stdc++;msys-2.0;user32;kernel32;advapi32;shell32") +set(msys_g77_dirs "/usr/lib/gcc/i686-pc-msys/4.9.2;/usr/lib") list(APPEND platforms msys_g77) #----------------------------------------------------------------------------- diff -Naur cmake-3.6.0/Tests/Complex/Library/CMakeLists.txt cmake-3.6.0-msys/Tests/Complex/Library/CMakeLists.txt --- cmake-3.6.0/Tests/Complex/Library/CMakeLists.txt 2013-07-02 17:41:40.000000000 +0400 +++ cmake-3.6.0-msys/Tests/Complex/Library/CMakeLists.txt 2014-04-06 23:29:57.163600000 +0400 @@ -24,7 +24,7 @@ add_library(CMakeTestLibrary ${LibrarySources}) if(WIN32) - if(NOT CYGWIN) + if(NOT CYGWIN AND NOT MSYS) if(NOT BORLAND) if(NOT MINGW) target_link_libraries(CMakeTestLibrary diff -Naur cmake-3.6.0/Tests/ComplexOneConfig/Library/CMakeLists.txt cmake-3.6.0-msys/Tests/ComplexOneConfig/Library/CMakeLists.txt --- cmake-3.6.0/Tests/ComplexOneConfig/Library/CMakeLists.txt 2013-07-02 17:41:40.000000000 +0400 +++ cmake-3.6.0-msys/Tests/ComplexOneConfig/Library/CMakeLists.txt 2014-04-06 23:32:18.452800000 +0400 @@ -24,7 +24,7 @@ add_library(CMakeTestLibrary ${LibrarySources}) if(WIN32) - if(NOT CYGWIN) + if(NOT CYGWIN AND NOT MSYS) if(NOT BORLAND) if(NOT MINGW) target_link_libraries(CMakeTestLibrary diff -aur cmake-3.6.0/Tests/ExternalProject/CMakeLists.txt.orig cmake-3.6.0/Tests/ExternalProject/CMakeLists.txt --- cmake-3.9.3/Tests/ExternalProject/CMakeLists.txt.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Tests/ExternalProject/CMakeLists.txt 2017-10-04 21:07:12.747104300 -0400 @@ -110,7 +110,7 @@ if(CVS_EXECUTABLE) endif() if(do_cvs_tests AND NOT UNIX) - if("${CVS_EXECUTABLE}" MATCHES "cygwin") + if("${CVS_EXECUTABLE}" MATCHES "cygwin" OR "${CVS_EXECUTABLE}" MATCHES "MSYS") message(STATUS "No ExternalProject cvs tests with cygwin cvs.exe outside cygwin!") set(do_cvs_tests 0) endif() @@ -474,7 +474,7 @@ if(HG_EXECUTABLE) endif() if(do_hg_tests AND NOT UNIX) - if("${HG_EXECUTABLE}" MATCHES "cygwin") + if("${HG_EXECUTABLE}" MATCHES "cygwin" OR "${CVS_EXECUTABLE}" MATCHES "MSYS") message(STATUS "No ExternalProject hg tests with cygwin hg outside cygwin!") set(do_hg_tests 0) endif() diff -Naur cmake-3.6.0/Tests/FindPackageTest/CMakeLists.txt cmake-3.6.0-msys/Tests/FindPackageTest/CMakeLists.txt --- cmake-3.6.0/Tests/FindPackageTest/CMakeLists.txt.orig 2016-04-15 09:41:24.000000000 -0400 +++ cmake-3.6.0/Tests/FindPackageTest/CMakeLists.txt 2016-05-22 14:43:01.886520300 -0400 @@ -65,7 +65,7 @@ #----------------------------------------------------------------------------- # Test system package registry if possible. set(CMakeTestSystemPackage "") -if(WIN32 AND NOT CYGWIN) +if(WIN32 AND NOT CYGWIN AND NOT MSYS) # Try writing a value to the system package registry. set(_data "${FindPackageTest_SOURCE_DIR}/SystemPackage") set(_key "HKLM\\Software\\Kitware\\CMake\\Packages\\CMakeTestSystemPackage") diff -aurp cmake-3.9.3/Tests/Fortran/CMakeLists.txt.orig cmake-3.9.3/Tests/Fortran/CMakeLists.txt --- cmake-3.9.3/Tests/Fortran/CMakeLists.txt.orig 2017-09-20 07:49:56.000000000 -0400 +++ cmake-3.9.3/Tests/Fortran/CMakeLists.txt 2017-10-04 23:17:20.545773100 -0400 @@ -25,7 +25,7 @@ endif() # Pick a module .def file with the properly mangled symbol name. set(world_def "") -if(WIN32 AND NOT CYGWIN) +if(WIN32 AND NOT CYGWIN AND NOT MSYS) if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU") set(world_def world_gnu.def) elseif(CMAKE_Fortran_COMPILER_ID MATCHES "Intel" OR diff -Naur cmake-3.6.0/Tests/Jump/Library/Shared/CMakeLists.txt cmake-3.6.0-msys/Tests/Jump/Library/Shared/CMakeLists.txt --- cmake-3.6.0/Tests/Jump/Library/Shared/CMakeLists.txt 2013-07-02 17:41:40.000000000 +0400 +++ cmake-3.6.0-msys/Tests/Jump/Library/Shared/CMakeLists.txt 2014-04-06 23:35:00.505600000 +0400 @@ -1,6 +1,6 @@ add_library(jumpShared SHARED jumpShared.cxx) -if(WIN32 OR CYGWIN) +if(WIN32 OR CYGWIN OR MSYS) set(SHARED_MUST_BE_IN_EXE_DIR 1) endif() diff -Naur cmake-3.6.0/Tests/PerConfig/CMakeLists.txt cmake-3.6.0-msys/Tests/PerConfig/CMakeLists.txt --- cmake-3.6.0/Tests/PerConfig/CMakeLists.txt 2013-07-02 17:41:40.000000000 +0400 +++ cmake-3.6.0-msys/Tests/PerConfig/CMakeLists.txt 2014-04-06 23:35:16.480000000 +0400 @@ -9,7 +9,7 @@ set_property(TARGET pcShared PROPERTY DEBUG_POSTFIX -dbg) set_property(TARGET pcShared PROPERTY VERSION 1.2) set_property(TARGET pcShared PROPERTY SOVERSION 3) -if(UNIX AND NOT CYGWIN) +if(UNIX AND NOT CYGWIN AND NOT MSYS) set(soname_file -DpcShared_soname_file=$) endif() add_executable(perconfig perconfig.c) diff -aurp cmake-3.9.3/Tests/RunCMake/CommandLine/RunCMakeTest.cmake.orig cmake-3.9.3/Tests/RunCMake/CommandLine/RunCMakeTest.cmake --- cmake-3.9.3/Tests/RunCMake/CommandLine/RunCMakeTest.cmake.orig 2017-10-04 23:30:46.598748300 -0400 +++ cmake-3.9.3/Tests/RunCMake/CommandLine/RunCMakeTest.cmake 2017-10-04 23:32:03.418888200 -0400 @@ -311,6 +311,6 @@ function(reject_fifo) run_cmake_command(reject_fifo ${BASH_EXECUTABLE} -c ${BASH_COMMAND_ARGUMENT}) endif() endfunction() -if(CMAKE_HOST_UNIX AND NOT CMAKE_SYSTEM_NAME STREQUAL "CYGWIN") +if(CMAKE_HOST_UNIX AND NOT CMAKE_SYSTEM_NAME STREQUAL "CYGWIN" NOT CMAKE_SYSTEM_NAME STREQUAL "MSYS") reject_fifo() endif() diff -aur cmake-cmake-3.9.3/Tests/RunCMake/file/RunCMakeTest.cmake.orig cmake-3.9.3/Tests/RunCMake/file/RunCMakeTest.cmake --- cmake-3.9.3/Tests/RunCMake/file/RunCMakeTest.cmake.orig 2017-09-20 07:49:57.000000000 -0400 +++ cmake-3.9.3/Tests/RunCMake/file/RunCMakeTest.cmake 2017-10-04 19:31:04.700954000 -0400 @@ -36,7 +36,7 @@ run_cmake(GLOB-error-LIST_DIRECTORIES-no run_cmake(GLOB-error-LIST_DIRECTORIES-no-arg) run_cmake(GLOB-noexp-LIST_DIRECTORIES) -if(NOT WIN32 OR CYGWIN) +if(NOT WIN32 OR CYGWIN OR MSYS) run_cmake(GLOB_RECURSE-cyclic-recursion) run_cmake(INSTALL-SYMLINK) endif() diff -aurp cmake-3.9.3/Tests/RunCMake/find_file/RunCMakeTest.cmake.orig cmake-3.9.3/Tests/RunCMake/find_file/RunCMakeTest.cmake --- cmake-3.9.3/Tests/RunCMake/find_file/RunCMakeTest.cmake.orig 2017-10-04 23:35:03.436178300 -0400 +++ cmake-3.9.3/Tests/RunCMake/find_file/RunCMakeTest.cmake 2017-10-04 23:35:26.877446300 -0400 @@ -1,5 +1,5 @@ include(RunCMake) -if(WIN32 OR CYGWIN) +if(WIN32 OR CYGWIN OR MSYS) run_cmake(PrefixInPATH) endif() diff -aurp cmake-3.9.3/Tests/RunCMake/find_library/RunCMakeTest.cmake.orig cmake-3.9.3/Tests/RunCMake/find_library/RunCMakeTest.cmake --- cmake-3.9.3/Tests/RunCMake/find_library/RunCMakeTest.cmake.orig 2017-10-04 23:39:28.757756200 -0400 +++ cmake-3.9.3/Tests/RunCMake/find_library/RunCMakeTest.cmake 2017-10-04 23:39:55.075870300 -0400 @@ -4,6 +4,6 @@ run_cmake(Created) if(CMAKE_HOST_UNIX) run_cmake(LibArchLink) endif() -if(WIN32 OR CYGWIN) +if(WIN32 OR CYGWIN OR MSYS) run_cmake(PrefixInPATH) endif() diff -aurp cmake-3.9.3/Tests/RunCMake/find_path/RunCMakeTest.cmake.orig cmake-3.9.3/Tests/RunCMake/find_path/RunCMakeTest.cmake --- cmake-3.9.3/Tests/RunCMake/find_path/RunCMakeTest.cmake.orig 2017-10-04 23:43:34.345551500 -0400 +++ cmake-3.9.3/Tests/RunCMake/find_path/RunCMakeTest.cmake 2017-10-04 23:43:42.793701600 -0400 @@ -1,6 +1,6 @@ include(RunCMake) -if(WIN32 OR CYGWIN) +if(WIN32 OR CYGWIN OR MSYS) run_cmake(PrefixInPATH) endif() diff -Naur cmake-3.6.0/Tests/RunCMake/find_program/RunCMakeTest.cmake cmake-3.6.0-msys/Tests/RunCMake/find_program/RunCMakeTest.cmake --- cmake-3.6.0/Tests/RunCMake/find_program/RunCMakeTest.cmake 2016-04-15 15:41:22.000000000 +0200 +++ cmake-3.6.0-msys/Tests/RunCMake/find_program/RunCMakeTest.cmake 2016-04-30 22:27:06.004149300 +0200 @@ -4,7 +4,7 @@ run_cmake(DirsPerName) run_cmake(NamesPerDir) -if(CMAKE_SYSTEM_NAME MATCHES "^(Windows|CYGWIN)$") +if(CMAKE_SYSTEM_NAME MATCHES "^(Windows|CYGWIN|MSYS)$") run_cmake(WindowsCom) run_cmake(WindowsExe) endif() diff -aurp cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH-failures.cmake.orig cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH-failures.cmake --- cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH-failures.cmake.orig 2017-10-04 23:47:29.272535900 -0400 +++ cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH-failures.cmake 2017-10-04 23:48:02.810770200 -0400 @@ -5,7 +5,7 @@ file(WRITE ${failure_test_executables} " # Check if we should do anything. If the compiler doesn't support hidden # visibility, the failure tests won't fail, so just write an empty targets # list and punt. -if(NOT WIN32 AND NOT CYGWIN AND NOT COMPILER_HAS_HIDDEN_VISIBILITY) +if(NOT WIN32 AND NOT CYGWIN AND NOT MSYS AND NOT COMPILER_HAS_HIDDEN_VISIBILITY) return() endif() diff -aurp cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH.cmake.orig cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH.cmake --- cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH.cmake.orig 2017-10-04 23:51:15.941914400 -0400 +++ cmake-3.9.3/Tests/RunCMake/GenerateExportHeader/GEH.cmake 2017-10-04 23:52:35.895973400 -0400 @@ -99,13 +99,13 @@ endif() add_executable(GenerateExportHeader exportheader_test.cpp) target_link_libraries(GenerateExportHeader ${link_libraries}) -if (WIN32 OR CYGWIN) +if (WIN32 OR CYGWIN OR MSYS) if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC") set(_platform Win32-Clang) elseif(MSVC AND COMPILER_HAS_DEPRECATED) set(_platform Win32) - elseif((MINGW OR CYGWIN) AND COMPILER_HAS_DEPRECATED) + elseif((MINGW OR CYGWIN OR MSYS) AND COMPILER_HAS_DEPRECATED) set(_platform MinGW) else() set(_platform WinEmpty) diff -Naur cmake-3.6.0/Tests/SimpleInstall/CMakeLists.txt cmake-3.6.0-msys/Tests/SimpleInstall/CMakeLists.txt --- cmake-3.6.0/Tests/SimpleInstall/CMakeLists.txt 2013-07-02 17:41:40.000000000 +0400 +++ cmake-3.6.0-msys/Tests/SimpleInstall/CMakeLists.txt 2014-04-06 23:35:50.971600000 +0400 @@ -44,7 +44,7 @@ message(SEND_ERROR "Stage 1 did not run install script 2.") endif() - if(CYGWIN OR MINGW) + if(CYGWIN OR MSYS OR MINGW) set(LIBPATHS ${LIBPATHS} "${CMAKE_INSTALL_PREFIX}/MyTest/bin") endif() message("Search for library in: ${LIBPATHS}") @@ -110,7 +110,7 @@ endif() # Check that scripts properly installed. - if(WIN32 AND NOT CYGWIN) + if(WIN32 AND NOT CYGWIN AND NOT MSYS) set(BAT .bat) else() set(BAT) diff -Naur cmake-3.6.0/Tests/SimpleInstallS2/CMakeLists.txt cmake-3.6.0-msys/Tests/SimpleInstallS2/CMakeLists.txt --- cmake-3.6.0/Tests/SimpleInstallS2/CMakeLists.txt 2013-07-02 17:41:40.000000000 +0400 +++ cmake-3.6.0-msys/Tests/SimpleInstallS2/CMakeLists.txt 2014-04-06 23:36:14.574400000 +0400 @@ -44,7 +44,7 @@ message(SEND_ERROR "Stage 1 did not run install script 2.") endif() - if(CYGWIN OR MINGW) + if(CYGWIN OR MSYS OR MINGW) set(LIBPATHS ${LIBPATHS} "${CMAKE_INSTALL_PREFIX}/MyTest/bin") endif() message("Search for library in: ${LIBPATHS}") @@ -110,7 +110,7 @@ endif() # Check that scripts properly installed. - if(WIN32 AND NOT CYGWIN) + if(WIN32 AND NOT CYGWIN AND NOT MSYS) set(BAT .bat) else() set(BAT) diff -aur cmake-3.6.0/Utilities/cmlibarchive/CMakeLists.txt.orig cmake-3.6.0/Utilities/cmlibarchive/CMakeLists.txt --- cmake-3.9.3/Utilities/cmlibarchive/CMakeLists.txt.orig 2017-09-20 07:49:57.000000000 -0400 +++ cmake-3.9.3/Utilities/cmlibarchive/CMakeLists.txt 2017-10-04 19:17:42.137685500 -0400 @@ -152,7 +152,7 @@ ENDMACRO (INSTALL_MAN __mans) # MACRO (TRY_MACRO_FOR_LIBRARY INCLUDES LIBRARIES TRY_TYPE SAMPLE_SOURCE MACRO_LIST) - IF(WIN32 AND NOT CYGWIN) + IF(WIN32 AND NOT CYGWIN AND NOT MSYS) CMAKE_PUSH_CHECK_STATE() # Save the state of the variables SET(CMAKE_REQUIRED_INCLUDES ${INCLUDES}) SET(CMAKE_REQUIRED_LIBRARIES ${LIBRARIES}) @@ -177,15 +177,15 @@ MACRO (TRY_MACRO_FOR_LIBRARY INCLUDES LI "Macro ${VAR} is checked with") ENDFOREACH(VAR) CMAKE_POP_CHECK_STATE() # Restore the state of the variables - ENDIF(WIN32 AND NOT CYGWIN) + ENDIF(WIN32 AND NOT CYGWIN AND NOT MSYS) ENDMACRO (TRY_MACRO_FOR_LIBRARY) # # Check compress/decompress libraries # -IF(WIN32 AND NOT CMAKE_CL_64 AND NOT CYGWIN) +IF(WIN32 AND NOT CMAKE_CL_64 AND NOT CYGWIN AND NOT MSYS) # GnuWin32 is only for Win32, not Win64. SET(__GNUWIN32PATH "C:/Program Files/GnuWin32") -ENDIF(WIN32 AND NOT CMAKE_CL_64 AND NOT CYGWIN) +ENDIF(WIN32 AND NOT CMAKE_CL_64 AND NOT CYGWIN AND NOT MSYS) IF(DEFINED __GNUWIN32PATH AND EXISTS "${__GNUWIN32PATH}") # You have to add a path availabel DLL file into PATH environment variable. # Maybe DLL path is "C:/Program Files/GnuWin32/bin". @@ -228,7 +228,7 @@ IF(ZLIB_FOUND) SET(HAVE_ZLIB_H 1) INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) LIST(APPEND ADDITIONAL_LIBS ${ZLIB_LIBRARIES}) - IF(WIN32 AND NOT CYGWIN) + IF(WIN32 AND NOT CYGWIN AND NOT MSYS) # # Test if ZLIB_WINAPI macro is needed to use. # @@ -250,7 +250,7 @@ IF(ZLIB_FOUND) ADD_DEFINITIONS(-DZLIB_DLL) ENDIF(ZLIB_DLL) ENDIF(ZLIB_WINAPI) - ENDIF(WIN32 AND NOT CYGWIN) + ENDIF(WIN32 AND NOT CYGWIN AND NOT MSYS) ELSE(ZLIB_FOUND) MESSAGE(FATAL_ERROR "CMake requires zlib to be available to libarchive") ENDIF(ZLIB_FOUND) @@ -643,7 +643,7 @@ ENDMACRO(CHECK_CRYPTO ALGORITHMS IMPLEME # of Windows XP do not support SHA256, SHA384 and SHA512. # MACRO(CHECK_CRYPTO_WIN CRYPTO_LIST) - IF(WIN32 AND NOT CYGWIN) + IF(WIN32 AND NOT CYGWIN AND NOT MSYS) FOREACH(CRYPTO ${CRYPTO_LIST}) IF(NOT ARCHIVE_CRYPTO_${CRYPTO}) IF(NOT DEFINED ARCHIVE_CRYPTO_${CRYPTO}_WIN) @@ -710,7 +710,7 @@ main(int argc, char **argv) ENDIF(NOT DEFINED ARCHIVE_CRYPTO_${CRYPTO}_WIN) ENDIF(NOT ARCHIVE_CRYPTO_${CRYPTO}) ENDFOREACH(CRYPTO) - ENDIF(WIN32 AND NOT CYGWIN) + ENDIF(WIN32 AND NOT CYGWIN AND NOT MSYS) ENDMACRO(CHECK_CRYPTO_WIN CRYPTO_LIST) # @@ -814,7 +814,7 @@ IF(ENABLE_ICONV) FIND_LIBRARY(LIBCHARSET_PATH NAMES charset libcharset) IF(LIBCHARSET_PATH) SET(CMAKE_REQUIRED_LIBRARIES ${LIBCHARSET_PATH}) - IF(WIN32 AND NOT CYGWIN) + IF(WIN32 AND NOT CYGWIN AND NOT MSYS) # Test if a macro is needed for the library. TRY_MACRO_FOR_LIBRARY( "${ICONV_INCLUDE_DIR}" "${LIBCHARSET_PATH}" @@ -828,9 +828,9 @@ IF(ENABLE_ICONV) SET(HAVE_LOCALE_CHARSET ON CACHE INTERNAL "Have function locale_charset") ENDIF(WITHOUT_LIBCHARSET_STATIC OR LIBCHARSET_STATIC) - ELSE(WIN32 AND NOT CYGWIN) + ELSE(WIN32 AND NOT CYGWIN AND NOT MSYS) CHECK_FUNCTION_EXISTS_GLIBC(locale_charset HAVE_LOCALE_CHARSET) - ENDIF(WIN32 AND NOT CYGWIN) + ENDIF(WIN32 AND NOT CYGWIN AND NOT MSYS) IF(HAVE_LOCALE_CHARSET) LIST(APPEND ADDITIONAL_LIBS ${LIBCHARSET_PATH}) ENDIF(HAVE_LOCALE_CHARSET) @@ -1420,7 +1420,7 @@ ADD_DEFINITIONS(-DHAVE_CONFIG_H) # # Register installation of PDF documents. # -IF(WIN32 AND NOT CYGWIN) +IF(WIN32 AND NOT CYGWIN AND NOT MSYS) # # On Windows platform, It's better that we install PDF documents # on one's computer. @@ -1432,7 +1432,7 @@ IF(WIN32 AND NOT CYGWIN) FILES_MATCHING PATTERN "*.pdf" ) ENDIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/doc/pdf) -ENDIF(WIN32 AND NOT CYGWIN) +ENDIF(WIN32 AND NOT CYGWIN AND NOT MSYS) # # # diff -aurp cmake-3.9.3/Utilities/cmlibarchive/libarchive/CMakeLists.txt.orig cmake-3.9.3/Utilities/cmlibarchive/libarchive/CMakeLists.txt --- cmake-3.9.3/Utilities/cmlibarchive/libarchive/CMakeLists.txt.orig 2017-09-20 07:49:57.000000000 -0400 +++ cmake-3.9.3/Utilities/cmlibarchive/libarchive/CMakeLists.txt 2017-10-04 19:11:44.231169400 -0400 @@ -201,14 +201,14 @@ SET(libarchive_MANS tar.5 ) -IF(WIN32 AND NOT CYGWIN) +IF(WIN32 AND NOT CYGWIN AND NOT MSYS) LIST(APPEND libarchive_SOURCES archive_entry_copy_bhfi.c) LIST(APPEND libarchive_SOURCES archive_read_disk_windows.c) LIST(APPEND libarchive_SOURCES archive_windows.c) LIST(APPEND libarchive_SOURCES archive_windows.h) LIST(APPEND libarchive_SOURCES archive_write_disk_windows.c) LIST(APPEND libarchive_SOURCES filter_fork_windows.c) -ENDIF(WIN32 AND NOT CYGWIN) +ENDIF(WIN32 AND NOT CYGWIN AND NOT MSYS) # CMake needs just one static "cmlibarchive" library. ADD_LIBRARY(cmlibarchive STATIC ${libarchive_SOURCES} ${include_HEADERS}) diff -aur cmake-3.9.3/Utilities/Release/release_cmake.cmake.orig cmake-3.9.3/Utilities/Release/release_cmake.cmake --- cmake-3.9.3/Utilities/Release/release_cmake.cmake.orig 2017-09-20 07:49:57.000000000 -0400 +++ cmake-3.9.3/Utilities/Release/release_cmake.cmake 2017-10-04 22:18:30.502074800 -0400 @@ -115,6 +115,10 @@ foreach(gen ${generators}) if("${gen}" STREQUAL "TBZ2") set(SUFFIXES ${SUFFIXES} "*.tar.bz2") endif() + if("${gen}" MATCHES "MSYS") + set(SUFFIXES ${SUFFIXES} "*.tar.bz2") + set(extra_files setup.hint) + endif() if("${gen}" STREQUAL "TZ") set(SUFFIXES ${SUFFIXES} "*.tar.Z") endif()