summaryrefslogtreecommitdiff
path: root/Modules/InstallRequiredSystemLibraries.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/InstallRequiredSystemLibraries.cmake')
-rw-r--r--Modules/InstallRequiredSystemLibraries.cmake21
1 files changed, 18 insertions, 3 deletions
diff --git a/Modules/InstallRequiredSystemLibraries.cmake b/Modules/InstallRequiredSystemLibraries.cmake
index 8d431bfcd5..4ffdb1b3f4 100644
--- a/Modules/InstallRequiredSystemLibraries.cmake
+++ b/Modules/InstallRequiredSystemLibraries.cmake
@@ -17,9 +17,20 @@ IF(MSVC)
)
ENDIF(MSVC71)
IF(MSVC80)
+ # Find the runtime library redistribution directory.
+ FIND_PATH(MSVC80_REDIST_DIR NAMES x86/Microsoft.VC80.CRT/Microsoft.VC80.CRT.manifest
+ PATHS "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0;InstallDir]/../../VC/redist"
+ )
+ MARK_AS_ADVANCED(MSVC80_REDIST_DIR)
+ SET(MSVC80_CRT_DIR "${MSVC80_REDIST_DIR}/x86/Microsoft.VC80.CRT")
+
+ # Install the manifest that allows DLLs to be loaded from the
+ # directory containing the executable.
SET(__install__libs
- "${SYSTEMROOT}/system32/msvcp80.dll"
- "${SYSTEMROOT}/system32/msvcr80.dll"
+ "${MSVC80_CRT_DIR}/Microsoft.VC80.CRT.manifest"
+ "${MSVC80_CRT_DIR}/msvcm80.dll"
+ "${MSVC80_CRT_DIR}/msvcp80.dll"
+ "${MSVC80_CRT_DIR}/msvcr80.dll"
)
ENDIF(MSVC80)
IF(CMAKE_INSTALL_MFC_LIBRARIES)
@@ -34,8 +45,12 @@ IF(MSVC)
)
ENDIF(MSVC71)
IF(MSVC80)
+ SET(MSVC80_MFC_DIR "${MSVC80_REDIST_DIR}/x86/Microsoft.VC80.MFC")
+ # Install the manifest that allows DLLs to be loaded from the
+ # directory containing the executable.
SET(__install__libs ${__install__libs}
- "${SYSTEMROOT}/system32/mfc80.dll"
+ "${MSVC80_MFC_DIR}/Microsoft.VC80.MFC.manifest"
+ "${MSVC80_MFC_DIR}/mfc80.dll"
)
ENDIF(MSVC80)
ENDIF(CMAKE_INSTALL_MFC_LIBRARIES)