summaryrefslogtreecommitdiff
path: root/Modules/FindCygwin.cmake
diff options
context:
space:
mode:
authorTibor Szabo <szabootibor@gmail.com>2017-05-18 11:46:47 +0200
committerTibor Szabo <szabootibor@gmail.com>2017-05-23 22:51:01 +0200
commitd303465448504d3f91e2991e80a72a3d569f3866 (patch)
tree3d91043b4babc23282a25f981b80c14561e054a9 /Modules/FindCygwin.cmake
parentae5f98a5e36da8cf3c75625ffb9a1d34aa2407cb (diff)
downloadcmake-d303465448504d3f91e2991e80a72a3d569f3866.tar.gz
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.
Diffstat (limited to 'Modules/FindCygwin.cmake')
-rw-r--r--Modules/FindCygwin.cmake4
1 files changed, 2 insertions, 2 deletions
diff --git a/Modules/FindCygwin.cmake b/Modules/FindCygwin.cmake
index 90cbd5208b..b2ed70333c 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
)