summaryrefslogtreecommitdiff
path: root/Modules/InstallRequiredSystemLibraries.cmake
diff options
context:
space:
mode:
authorBjoern Thiel <bjoern.thiel@mpibpc.mpg.de>2017-01-11 04:49:22 -0500
committerBrad King <brad.king@kitware.com>2017-01-11 11:20:47 -0500
commite0ed1de4fb5e9d18c2d00775229496079d6e077a (patch)
treea90e6a80ce8f70ac9d02c15a454f2e0e43cd75a9 /Modules/InstallRequiredSystemLibraries.cmake
parent3e5fbbd6cdc472cdf7823cf81c0e527c79653188 (diff)
downloadcmake-e0ed1de4fb5e9d18c2d00775229496079d6e077a.tar.gz
InstallRequiredSystemLibraries: Distinguish UCRT install configurations
Teach the `CMAKE_INSTALL_UCRT_LIBRARIES` feature to honor the `CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY` and `CMAKE_INSTALL_DEBUG_LIBRARIES` settings. Closes: #16542
Diffstat (limited to 'Modules/InstallRequiredSystemLibraries.cmake')
-rw-r--r--Modules/InstallRequiredSystemLibraries.cmake22
1 files changed, 14 insertions, 8 deletions
diff --git a/Modules/InstallRequiredSystemLibraries.cmake b/Modules/InstallRequiredSystemLibraries.cmake
index b0446c9c18..b04f044900 100644
--- a/Modules/InstallRequiredSystemLibraries.cmake
+++ b/Modules/InstallRequiredSystemLibraries.cmake
@@ -204,21 +204,27 @@ if(MSVC)
endif()
if(CMAKE_INSTALL_UCRT_LIBRARIES AND NOT v VERSION_LESS 14)
- # Find the Windows Universal CRT redistribution directory.
+ # Find the Windows Kits directory.
get_filename_component(windows_kits_dir
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows Kits\\Installed Roots;KitsRoot10]" ABSOLUTE)
set(programfilesx86 "ProgramFiles(x86)")
- find_path(WINDOWS_KITS_REDIST_DIR NAMES ucrt/DLLs/${CMAKE_MSVC_ARCH}/ucrtbase.dll
+ find_path(WINDOWS_KITS_DIR NAMES Redist/ucrt/DLLs/${CMAKE_MSVC_ARCH}/ucrtbase.dll
PATHS
- "${windows_kits_dir}/Redist"
- "$ENV{ProgramFiles}/Windows Kits/10/Redist"
- "$ENV{${programfilesx86}}/Windows Kits/10/Redist"
+ "${windows_kits_dir}"
+ "$ENV{ProgramFiles}/Windows Kits/10"
+ "$ENV{${programfilesx86}}/Windows Kits/10"
)
- mark_as_advanced(WINDOWS_KITS_REDIST_DIR)
+ mark_as_advanced(WINDOWS_KITS_DIR)
# Glob the list of UCRT DLLs.
- file(GLOB __ucrt_dlls "${WINDOWS_KITS_REDIST_DIR}/ucrt/DLLs/${CMAKE_MSVC_ARCH}/*.dll")
- list(APPEND __install__libs ${__ucrt_dlls})
+ if(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
+ file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/Redist/ucrt/DLLs/${CMAKE_MSVC_ARCH}/*.dll")
+ list(APPEND __install__libs ${__ucrt_dlls})
+ endif()
+ if(CMAKE_INSTALL_DEBUG_LIBRARIES)
+ file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/bin/${CMAKE_MSVC_ARCH}/ucrt/*.dll")
+ list(APPEND __install__libs ${__ucrt_dlls})
+ endif()
endif()
endmacro()