diff options
author | Bjoern Thiel <bjoern.thiel@mpibpc.mpg.de> | 2017-01-11 09:49:22 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-01-11 16:20:47 (GMT) |
commit | e0ed1de4fb5e9d18c2d00775229496079d6e077a (patch) | |
tree | a90e6a80ce8f70ac9d02c15a454f2e0e43cd75a9 /Modules/InstallRequiredSystemLibraries.cmake | |
parent | 3e5fbbd6cdc472cdf7823cf81c0e527c79653188 (diff) | |
download | CMake-e0ed1de4fb5e9d18c2d00775229496079d6e077a.zip CMake-e0ed1de4fb5e9d18c2d00775229496079d6e077a.tar.gz CMake-e0ed1de4fb5e9d18c2d00775229496079d6e077a.tar.bz2 |
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.cmake | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/Modules/InstallRequiredSystemLibraries.cmake b/Modules/InstallRequiredSystemLibraries.cmake index b0446c9..b04f044 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() |