Skip to content
Snippets Groups Projects
Commit 198046e2 authored by Nat Goodspeed's avatar Nat Goodspeed
Browse files

Include MSVCP120.DLL and MSVCR120.DLL in Windows viewer package.

Generalize Copy3rdPartyLibs.cmake to eliminate some clone-and-tweak redundancy.
parent e79b1dfb
No related branches found
No related tags found
No related merge requests found
...@@ -66,126 +66,80 @@ if(WINDOWS) ...@@ -66,126 +66,80 @@ if(WINDOWS)
set(release_files ${release_files} fmodex.dll) set(release_files ${release_files} fmodex.dll)
endif (FMODEX) endif (FMODEX)
#******************************* #*******************************
# Copy MS C runtime dlls, required for packaging. # Copy MS C runtime dlls, required for packaging.
# *TODO - Adapt this to support VC9 # *TODO - Adapt this to support VC9
if (MSVC80) if (MSVC80)
FIND_PATH(debug_msvc8_redist_path msvcr80d.dll set(MSVC_VER 80)
PATHS set(MSVC_VERDOT 8.0)
${MSVC_DEBUG_REDIST_PATH} elseif (MSVC_VERSION EQUAL 1600) # VisualStudio 2010
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup\\VC;ProductDir]/redist/Debug_NonRedist/x86/Microsoft.VC80.DebugCRT set(MSVC_VER 100)
NO_DEFAULT_PATH set(MSVC_VERDOT 10.0)
NO_DEFAULT_PATH elseif (MSVC_VERSION EQUAL 1800) # VisualStudio 2013, which is (sigh) VS 12
) set(MSVC_VER 120)
set(MSVC_VERDOT 12.0)
if(EXISTS ${debug_msvc8_redist_path}) else (MSVC80)
set(debug_msvc8_files MESSAGE(WARNING "New MSVC_VERSION ${MSVC_VERSION} of MSVC: adapt Copy3rdPartyLibs.cmake")
msvcr80d.dll endif (MSVC80)
msvcp80d.dll
Microsoft.VC80.DebugCRT.manifest FIND_PATH(debug_msvc_redist_path msvcr${MSVC_VER}d.dll
)
copy_if_different(
${debug_msvc8_redist_path}
"${SHARED_LIB_STAGING_DIR_DEBUG}"
out_targets
${debug_msvc8_files}
)
set(third_party_targets ${third_party_targets} ${out_targets})
endif (EXISTS ${debug_msvc8_redist_path})
FIND_PATH(release_msvc8_redist_path msvcr80.dll
PATHS
${MSVC_REDIST_PATH}
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup\\VC;ProductDir]/redist/x86/Microsoft.VC80.CRT
NO_DEFAULT_PATH
NO_DEFAULT_PATH
)
if(EXISTS ${release_msvc8_redist_path})
set(release_msvc8_files
msvcr80.dll
msvcp80.dll
Microsoft.VC80.CRT.manifest
)
copy_if_different(
${release_msvc8_redist_path}
"${SHARED_LIB_STAGING_DIR_RELEASE}"
out_targets
${release_msvc8_files}
)
set(third_party_targets ${third_party_targets} ${out_targets})
copy_if_different(
${release_msvc8_redist_path}
"${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}"
out_targets
${release_msvc8_files}
)
set(third_party_targets ${third_party_targets} ${out_targets})
endif (EXISTS ${release_msvc8_redist_path})
elseif (MSVC_VERSION EQUAL 1600) # VisualStudio 2010
FIND_PATH(debug_msvc10_redist_path msvcr100d.dll
PATHS PATHS
${MSVC_DEBUG_REDIST_PATH} ${MSVC_DEBUG_REDIST_PATH}
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0\\Setup\\VC;ProductDir]/redist/Debug_NonRedist/x86/Microsoft.VC100.DebugCRT [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\${MSVC_VERDOT}\\Setup\\VC;ProductDir]/redist/Debug_NonRedist/x86/Microsoft.VC${MSVC_VER}.DebugCRT
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/SysWOW64 [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/SysWOW64
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/System32 [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/System32
NO_DEFAULT_PATH NO_DEFAULT_PATH
) )
if(EXISTS ${debug_msvc10_redist_path}) if(EXISTS ${debug_msvc_redist_path})
set(debug_msvc10_files set(debug_msvc_files
msvcr100d.dll msvcr${MSVC_VER}d.dll
msvcp100d.dll msvcp${MSVC_VER}d.dll
) )
copy_if_different( copy_if_different(
${debug_msvc10_redist_path} ${debug_msvc_redist_path}
"${SHARED_LIB_STAGING_DIR_DEBUG}" "${SHARED_LIB_STAGING_DIR_DEBUG}"
out_targets out_targets
${debug_msvc10_files} ${debug_msvc_files}
) )
set(third_party_targets ${third_party_targets} ${out_targets}) set(third_party_targets ${third_party_targets} ${out_targets})
endif () endif ()
FIND_PATH(release_msvc10_redist_path msvcr100.dll FIND_PATH(release_msvc_redist_path msvcr${MSVC_VER}.dll
PATHS PATHS
${MSVC_REDIST_PATH} ${MSVC_REDIST_PATH}
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0\\Setup\\VC;ProductDir]/redist/x86/Microsoft.VC100.CRT [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\${MSVC_VERDOT}\\Setup\\VC;ProductDir]/redist/x86/Microsoft.VC${MSVC_VER}.CRT
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/SysWOW64 [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/SysWOW64
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/System32 [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Windows;Directory]/System32
NO_DEFAULT_PATH NO_DEFAULT_PATH
) )
if(EXISTS ${release_msvc10_redist_path}) if(EXISTS ${release_msvc_redist_path})
set(release_msvc10_files set(release_msvc_files
msvcr100.dll msvcr${MSVC_VER}.dll
msvcp100.dll msvcp${MSVC_VER}.dll
) )
copy_if_different( copy_if_different(
${release_msvc10_redist_path} ${release_msvc_redist_path}
"${SHARED_LIB_STAGING_DIR_RELEASE}" "${SHARED_LIB_STAGING_DIR_RELEASE}"
out_targets out_targets
${release_msvc10_files} ${release_msvc_files}
) )
set(third_party_targets ${third_party_targets} ${out_targets}) set(third_party_targets ${third_party_targets} ${out_targets})
copy_if_different( copy_if_different(
${release_msvc10_redist_path} ${release_msvc_redist_path}
"${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}" "${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}"
out_targets out_targets
${release_msvc10_files} ${release_msvc_files}
) )
set(third_party_targets ${third_party_targets} ${out_targets}) set(third_party_targets ${third_party_targets} ${out_targets})
endif () endif ()
endif (MSVC80)
elseif(DARWIN) elseif(DARWIN)
set(SHARED_LIB_STAGING_DIR_DEBUG "${SHARED_LIB_STAGING_DIR}/Debug/Resources") set(SHARED_LIB_STAGING_DIR_DEBUG "${SHARED_LIB_STAGING_DIR}/Debug/Resources")
......
...@@ -385,11 +385,11 @@ class Windows_i686_Manifest(ViewerManifest): ...@@ -385,11 +385,11 @@ class Windows_i686_Manifest(ViewerManifest):
# These need to be installed as a SxS assembly, currently a 'private' assembly. # These need to be installed as a SxS assembly, currently a 'private' assembly.
# See http://msdn.microsoft.com/en-us/library/ms235291(VS.80).aspx # See http://msdn.microsoft.com/en-us/library/ms235291(VS.80).aspx
if self.args['configuration'].lower() == 'debug': if self.args['configuration'].lower() == 'debug':
self.path("msvcr100d.dll") self.path("msvcr120d.dll")
self.path("msvcp100d.dll") self.path("msvcp120d.dll")
else: else:
self.path("msvcr100.dll") self.path("msvcr120.dll")
self.path("msvcp100.dll") self.path("msvcp120.dll")
# Vivox runtimes # Vivox runtimes
self.path("SLVoice.exe") self.path("SLVoice.exe")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment