summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Bourdon <delroth@gmail.com>2022-09-14 23:01:00 +0200
committerGitHub <noreply@github.com>2022-09-14 23:01:00 +0200
commit1efb5b8800a4d12a94957c8469d2cd767cce318d (patch)
treeca9c0a7d05098ea6a12b3989b7daafb15eeabac0
parent09c07d4ff252b15b3a5431718cb410382550fc26 (diff)
parent84aa19db9679e3ab68fb248dd37e4b7a7236ab08 (diff)
Merge pull request #11063 from shuffle2/vcredist
windows: distribute vcredist loose files
-rw-r--r--Data/license.txt5
-rw-r--r--Installer/Installer.nsi16
-rw-r--r--Installer/dxredist/APR2007_xinput_x64.cabbin96817 -> 0 bytes
-rw-r--r--Installer/dxredist/APR2007_xinput_x86.cabbin53302 -> 0 bytes
-rw-r--r--Installer/dxredist/DSETUP.dllbin95576 -> 0 bytes
-rw-r--r--Installer/dxredist/DXSETUP.exebin517976 -> 0 bytes
-rw-r--r--Installer/dxredist/dsetup32.dllbin1566040 -> 0 bytes
-rw-r--r--Installer/dxredist/dxupdate.cabbin97152 -> 0 bytes
-rw-r--r--Installer/vcredist/vc_redist.x64.exebin14749120 -> 0 bytes
-rw-r--r--LICENSES/MSVC-Redist.txt3
-rw-r--r--Source/Core/DolphinQt/CMakeLists.txt22
-rw-r--r--Source/VSProps/Base.Dolphin.props12
12 files changed, 42 insertions, 16 deletions
diff --git a/Data/license.txt b/Data/license.txt
index d511905c16..d39e6b481b 100644
--- a/Data/license.txt
+++ b/Data/license.txt
@@ -337,3 +337,8 @@ proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.
+
+
+This program uses VC++ Redistributable code. The license for those object
+files can be found at:
+https://visualstudio.microsoft.com/license-terms/vs2022-ga-community/
diff --git a/Installer/Installer.nsi b/Installer/Installer.nsi
index c08ada69c9..1ad09ddce8 100644
--- a/Installer/Installer.nsi
+++ b/Installer/Installer.nsi
@@ -154,20 +154,6 @@ Section "Base" SEC01
SetOutPath "$TEMP"
SetOverwrite on
- File /r "dxredist"
- File /r "vcredist"
-SectionEnd
-
-Section "DirectX Runtime" SEC02
- DetailPrint "Running DirectX runtime setup..."
- ExecWait '"$TEMP\dxredist\DXSETUP.exe" /silent'
- DetailPrint "Finished DirectX runtime setup"
-SectionEnd
-
-Section "Visual C++ 2015 Redistributable" SEC03
- DetailPrint "Running Visual C++ 2015 Redistributable setup..."
- ExecWait '"$TEMP\vcredist\vc_redist.x64.exe" /install /quiet /norestart'
- DetailPrint "Finished Visual C++ 2015 Redistributable setup"
SectionEnd
Section -AdditionalIcons
@@ -193,8 +179,6 @@ SectionEnd
; Section descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "Installs all files required to run the Dolphin Emulator."
- !insertmacro MUI_DESCRIPTION_TEXT ${SEC02} "Installs the recommended DirectX runtime libraries that are needed by Dolphin."
- !insertmacro MUI_DESCRIPTION_TEXT ${SEC03} "Installs the required Visual C++ 2015 Redistributable that is needed by Dolphin."
!insertmacro MUI_FUNCTION_DESCRIPTION_END
Section Uninstall
diff --git a/Installer/dxredist/APR2007_xinput_x64.cab b/Installer/dxredist/APR2007_xinput_x64.cab
deleted file mode 100644
index 732f8a8f36..0000000000
--- a/Installer/dxredist/APR2007_xinput_x64.cab
+++ /dev/null
Binary files differ
diff --git a/Installer/dxredist/APR2007_xinput_x86.cab b/Installer/dxredist/APR2007_xinput_x86.cab
deleted file mode 100644
index f414d55571..0000000000
--- a/Installer/dxredist/APR2007_xinput_x86.cab
+++ /dev/null
Binary files differ
diff --git a/Installer/dxredist/DSETUP.dll b/Installer/dxredist/DSETUP.dll
deleted file mode 100644
index 691025af7e..0000000000
--- a/Installer/dxredist/DSETUP.dll
+++ /dev/null
Binary files differ
diff --git a/Installer/dxredist/DXSETUP.exe b/Installer/dxredist/DXSETUP.exe
deleted file mode 100644
index 5d062aa978..0000000000
--- a/Installer/dxredist/DXSETUP.exe
+++ /dev/null
Binary files differ
diff --git a/Installer/dxredist/dsetup32.dll b/Installer/dxredist/dsetup32.dll
deleted file mode 100644
index 1781afa4b0..0000000000
--- a/Installer/dxredist/dsetup32.dll
+++ /dev/null
Binary files differ
diff --git a/Installer/dxredist/dxupdate.cab b/Installer/dxredist/dxupdate.cab
deleted file mode 100644
index ed3b5b89f5..0000000000
--- a/Installer/dxredist/dxupdate.cab
+++ /dev/null
Binary files differ
diff --git a/Installer/vcredist/vc_redist.x64.exe b/Installer/vcredist/vc_redist.x64.exe
deleted file mode 100644
index f986317bff..0000000000
--- a/Installer/vcredist/vc_redist.x64.exe
+++ /dev/null
Binary files differ
diff --git a/LICENSES/MSVC-Redist.txt b/LICENSES/MSVC-Redist.txt
new file mode 100644
index 0000000000..f569f5a9a8
--- /dev/null
+++ b/LICENSES/MSVC-Redist.txt
@@ -0,0 +1,3 @@
+This program uses VC++ Redistributable code. The license for those object
+files can be found at:
+https://visualstudio.microsoft.com/license-terms/vs2022-ga-community/
diff --git a/Source/Core/DolphinQt/CMakeLists.txt b/Source/Core/DolphinQt/CMakeLists.txt
index cd7e9def60..27e6eea689 100644
--- a/Source/Core/DolphinQt/CMakeLists.txt
+++ b/Source/Core/DolphinQt/CMakeLists.txt
@@ -440,6 +440,28 @@ if(WIN32)
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/qt.conf.win" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf"
)
+ # Copy VC++ Redist.
+ # NOTE This *intentionally* does not copy debug redist files.
+ # TODO This should really occur for any executable target.
+ # TODO Actually use cmake 'install' and InstallRequiredSystemLibraries.
+ if(MSVC_C_ARCHITECTURE_ID)
+ string(TOLOWER "${MSVC_C_ARCHITECTURE_ID}" CMAKE_MSVC_ARCH)
+ elseif(MSVC_CXX_ARCHITECTURE_ID)
+ string(TOLOWER "${MSVC_CXX_ARCHITECTURE_ID}" CMAKE_MSVC_ARCH)
+ else()
+ set(CMAKE_MSVC_ARCH x86)
+ endif()
+ set(MSVC_REDIST_NAME VC${MSVC_TOOLSET_VERSION})
+ find_path(MSVC_REDIST_DIR NAMES ${CMAKE_MSVC_ARCH}/Microsoft.${MSVC_REDIST_NAME}.CRT)
+ mark_as_advanced(MSVC_REDIST_DIR)
+ set(MSVC_CRT_DIR "${MSVC_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.${MSVC_REDIST_NAME}.CRT")
+ file(GLOB MSVC_REDIST_DLLS "${MSVC_CRT_DIR}/*.dll")
+ foreach(MsvcRedistDll IN LISTS MSVC_REDIST_DLLS)
+ add_custom_command(TARGET dolphin-emu POST_BUILD
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different "${MsvcRedistDll}" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
+ )
+ endforeach()
+
# Delegate to Qt's official deployment binary on Windows to copy over the necessary Qt-specific libraries, etc.
get_target_property(MOC_EXECUTABLE_LOCATION Qt${QT_VERSION_MAJOR}::moc IMPORTED_LOCATION)
get_filename_component(QT_BINARY_DIRECTORY "${MOC_EXECUTABLE_LOCATION}" DIRECTORY)
diff --git a/Source/VSProps/Base.Dolphin.props b/Source/VSProps/Base.Dolphin.props
index 7f5c2a83d4..b8bf4f213a 100644
--- a/Source/VSProps/Base.Dolphin.props
+++ b/Source/VSProps/Base.Dolphin.props
@@ -84,4 +84,16 @@
<AdditionalOptions>/NODEFAULTLIB:msvcrt %(AdditionalOptions)</AdditionalOptions>
</Link>
</ItemDefinitionGroup>
+
+ <Target Name="CopyVCRedist" AfterTargets="Build" Condition="'$(ConfigurationType)'=='Application'">
+ <ItemGroup>
+ <VCRedistSourceFiles
+ Include="$(VCToolsRedistInstallDir)$(Platform)\Microsoft.VC$(PlatformToolsetVersion).CRT\*.dll" />
+ </ItemGroup>
+ <Copy
+ SourceFiles="@(VCRedistSourceFiles)"
+ DestinationFolder="$(BinaryOutputDir)"
+ SkipUnchangedFiles="true"
+ />
+ </Target>
</Project>