Re: [cmake-developers] Distinguishing MSYS2 (was: FindPythonLibs repaired for MINGW -vs- WIN32 version confusion)
On Fri, Aug 7, 2015 at 1:16 PM, Brad King brad.k...@kitware.com wrote: On 08/07/2015 05:25 AM, Ray Donnelly wrote: CMake needs to be able to identify MSYS2 distinctly from both MINGW and MSYS first. Would a patch making that distinction be acceptable to CMake? Yes, I think that makes sense since the MSYS2 environment is distinct from Windows, MinGW, MSYS, and Cygwin. What should CMAKE_SYSTEM_NAME be for MSYS2? Now that you mention it, I have the patch for CMakeDetermineSystem that does gets CMAKE_SYSTEM_NAME from uname -s as for unix. On Fri, Aug 7, 2015 at 5:33 AM, Ray Donnelly mingw.andr...@gmail.com wrote: On Fri, Aug 7, 2015 at 1:16 PM, Brad King brad.k...@kitware.com wrote: On 08/07/2015 05:25 AM, Ray Donnelly wrote: CMake needs to be able to identify MSYS2 distinctly from both MINGW and MSYS first. Would a patch making that distinction be acceptable to CMake? Yes, I think that makes sense since the MSYS2 environment is distinct from Windows, MinGW, MSYS, and Cygwin. What should CMAKE_SYSTEM_NAME be for MSYS2? Off the cuff, MSYS2 sounds reasonable, but I think we need to carefully think about this .. We have CMake packages built with MinGW-w64 and also CMake packages built with msys2 GCC (that are used for only a few of our packages). Do they need to be separately identifiable? I also wonder whether the msys2 CMake could be done away with if we used some functions to convert paths between shell-system and make-system .. I'll ask the MSYS2 developers who added the msys2 CMake package about this. Finally, there's the consideration as to whether MSYS2 implies you are using just the minimum amount of the MSYS2 shell or whether you've gone all-in with MSYS2 (so are happy to be using our Python's which are not found in the registry and have a Unix file layout prefixed in /mingw32 or /mingw64). I'd like to hear others' thoughts on this! Thanks, -Brad 0001-CMakeDetermineSystem-distinguishes-MSYS-MINGW32-for-.patch Description: Binary data -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers
Re: [cmake-developers] Distinguishing MSYS2
On 08/07/2015 08:33 AM, Ray Donnelly wrote: Finally, there's the consideration as to whether MSYS2 implies you are using just the minimum amount of the MSYS2 shell or whether you've gone all-in with MSYS2 CMAKE_SYSTEM_NAME should refer to the target application environment. If you're building with the MinGW tools for Windows then the value of CMAKE_SYSTEM_NAME should simply be Windows. For Cygwin we have a CMake built to run in Cygwin and target native Cygwin builds, and that CMake is completely different from the one used for Windows builds. The Cygwin CMake cannot be used to host builds on Windows and the Windows CMake cannot be used to host builds on Cygwin. Does MSYS2 have its own runtime such that binaries can understand POSIX paths like in Cygwin? In that case there should be a separate non-Windows CMake for MSYS2 just like we have for Cygwin. -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers
Re: [cmake-developers] Distinguishing MSYS2
On Fri, Aug 7, 2015 at 2:21 PM, Brad King brad.k...@kitware.com wrote: On 08/07/2015 08:33 AM, Ray Donnelly wrote: Finally, there's the consideration as to whether MSYS2 implies you are using just the minimum amount of the MSYS2 shell or whether you've gone all-in with MSYS2 CMAKE_SYSTEM_NAME should refer to the target application environment. If you're building with the MinGW tools for Windows then the value of CMAKE_SYSTEM_NAME should simply be Windows. For Cygwin we have a CMake built to run in Cygwin and target native Cygwin builds, and that CMake is completely different from the one used for Windows builds. The Cygwin CMake cannot be used to host builds on Windows and the Windows CMake cannot be used to host builds on Cygwin. Does MSYS2 have its own runtime such that binaries can understand POSIX paths like in Cygwin? In that case there should be a separate non-Windows CMake for MSYS2 just like we have for Cygwin. Yes, it's very much like Cygwin (a fork with a few additions) and understands POSIX paths (C:\ - /c/, without the /cygdrive stuff). Our runtime DLL is called msys-2.0.dll instead of cygwin1.dll. It would seem that our msys/cmake package identifies CMAKE_SYSTEM_NAME as MSYS at present: https://github.com/Alexpux/MSYS2-packages/blob/master/cmake/cmake-3.2.3-msys.patch Cheers, Ray. -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers
Re: [cmake-developers] Distinguishing MSYS2 (was: FindPythonLibs repaired for MINGW -vs- WIN32 version confusion)
On Fri, Aug 7, 2015 at 1:16 PM, Brad King brad.k...@kitware.com wrote: On 08/07/2015 05:25 AM, Ray Donnelly wrote: CMake needs to be able to identify MSYS2 distinctly from both MINGW and MSYS first. Would a patch making that distinction be acceptable to CMake? Yes, I think that makes sense since the MSYS2 environment is distinct from Windows, MinGW, MSYS, and Cygwin. What should CMAKE_SYSTEM_NAME be for MSYS2? Off the cuff, MSYS2 sounds reasonable, but I think we need to carefully think about this .. We have CMake packages built with MinGW-w64 and also CMake packages built with msys2 GCC (that are used for only a few of our packages). Do they need to be separately identifiable? I also wonder whether the msys2 CMake could be done away with if we used some functions to convert paths between shell-system and make-system .. I'll ask the MSYS2 developers who added the msys2 CMake package about this. Finally, there's the consideration as to whether MSYS2 implies you are using just the minimum amount of the MSYS2 shell or whether you've gone all-in with MSYS2 (so are happy to be using our Python's which are not found in the registry and have a Unix file layout prefixed in /mingw32 or /mingw64). I'd like to hear others' thoughts on this! Thanks, -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers
Re: [cmake-developers] Distinguishing MSYS2 (was: FindPythonLibs repaired for MINGW -vs- WIN32 version confusion)
On 08/07/2015 05:25 AM, Ray Donnelly wrote: CMake needs to be able to identify MSYS2 distinctly from both MINGW and MSYS first. Would a patch making that distinction be acceptable to CMake? Yes, I think that makes sense since the MSYS2 environment is distinct from Windows, MinGW, MSYS, and Cygwin. What should CMAKE_SYSTEM_NAME be for MSYS2? Thanks, -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers