summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTibor Szabo <szabootibor@gmail.com>2017-05-18 09:46:47 (GMT)
committerTibor Szabo <szabootibor@gmail.com>2017-05-23 20:51:01 (GMT)
commitd303465448504d3f91e2991e80a72a3d569f3866 (patch)
tree3d91043b4babc23282a25f981b80c14561e054a9
parentae5f98a5e36da8cf3c75625ffb9a1d34aa2407cb (diff)
downloadCMake-d303465448504d3f91e2991e80a72a3d569f3866.zip
CMake-d303465448504d3f91e2991e80a72a3d569f3866.tar.gz
CMake-d303465448504d3f91e2991e80a72a3d569f3866.tar.bz2
FindCygwin: Use find_program instead of find_path
Cygwin's installation directory is mainly needed to use some programs of it, irrespectively of the target architecture. However, find_path does not consider cygwin with architecture different than the target architecture. This is because cygwin's installation path is retrieved from the registry. WOW64 view is not used by find_path if generating for 32-bit architecture and vice versa, so cygwin is not found then. find_program tries both views, this way a 64-bit cygwin may be used for 32 bit build and vice versa.
-rw-r--r--Modules/FindCygwin.cmake4
1 files changed, 2 insertions, 2 deletions
diff --git a/Modules/FindCygwin.cmake b/Modules/FindCygwin.cmake
index 90cbd52..b2ed703 100644
--- a/Modules/FindCygwin.cmake
+++ b/Modules/FindCygwin.cmake
@@ -8,13 +8,13 @@
# this module looks for Cygwin
if (WIN32)
- find_path(CYGWIN_INSTALL_PATH
+ find_program(CYGWIN_INSTALL_PATH
cygwin.bat
"C:/Cygwin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Cygwin\\setup;rootdir]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Cygnus Solutions\\Cygwin\\mounts v2\\/;native]"
)
-
+ get_filename_component(CYGWIN_INSTALL_PATH "${CYGWIN_INSTALL_PATH}" DIRECTORY)
mark_as_advanced(
CYGWIN_INSTALL_PATH
)