Windows: d3dcompiler_47.dll is redistributable, so add it to our installation package scripts.

This commit is contained in:
Henrik Rydgård 2017-03-22 13:43:54 +01:00
parent c35461b75c
commit babfa44614
5 changed files with 15 additions and 2 deletions

View file

@ -12,7 +12,11 @@ echo Deleting old file %name%
del %name% del %name%
echo Adding files to %name% echo Adding files to %name%
zip --recurse-paths %name% assets flash0 PPSSPPWindows.exe PPSSPPWindows64.exe README.md REM Not distributing the 10 version because it's not compatible with older Windows.
cp dx9sdk\8.1\Redist\D3D\x64\d3dcompiler_47.dll .
cp dx9sdk\8.1\Redist\D3D\x86\d3dcompiler_47.dll .\d3dcompiler_47.x86.dll
zip --recurse-paths %name% assets flash0 PPSSPPWindows.exe PPSSPPWindows64.exe d3dcompiler_47.dll d3dcompiler_47.x86.dll README.md
del d3dcompiler_47.dll d3dcompiler_v47.x86.dll
echo Done: %name% echo Done: %name%
goto DONE goto DONE

2
dx9sdk

@ -1 +1 @@
Subproject commit 7324553f8f4952a576c7f2d42df0accb0335d23c Subproject commit 7751cf73f5c06f1be21f5f31c3e2d9a7bacd3a93

View file

@ -36,6 +36,11 @@ LoadD3D11Error LoadD3D11() {
} }
g_D3DCompileModule = LoadLibrary(D3DCOMPILER_DLL); g_D3DCompileModule = LoadLibrary(D3DCOMPILER_DLL);
#if PPSSPP_PLATFORM(32BIT)
// Workaround for distributing both 32-bit and 64-bit versions of the DLL.
if (!g_D3DCompileModule)
g_D3DCompileModule = LoadLibrary("D3dcompiler_47.x86.dll");
#endif
if (!g_D3DCompileModule) if (!g_D3DCompileModule)
g_D3DCompileModule = LoadLibrary(L"D3dcompiler_42.dll"); g_D3DCompileModule = LoadLibrary(L"D3dcompiler_42.dll");

View file

@ -8,6 +8,8 @@
#include "base/logging.h" #include "base/logging.h"
#include "thin3d/d3dx9_loader.h" #include "thin3d/d3dx9_loader.h"
// TODO: See if we can use the bundled D3Dcompiler_47.dll to compiler for DX9 as well.
typedef BOOL(__stdcall *TFunc_D3DXCheckVersion)(UINT D3DSDKVersion, UINT D3DXSDKVersion); typedef BOOL(__stdcall *TFunc_D3DXCheckVersion)(UINT D3DSDKVersion, UINT D3DXSDKVersion);
typedef HRESULT(__stdcall *TFunc_D3DXCompileShader)( typedef HRESULT(__stdcall *TFunc_D3DXCompileShader)(
LPCSTR pSrcData, LPCSTR pSrcData,

View file

@ -24,6 +24,8 @@ Source: "assets\*.*"; DestDir: "{app}\assets"
Source: "assets\shaders\*.*"; DestDir: "{app}\assets\shaders" Source: "assets\shaders\*.*"; DestDir: "{app}\assets\shaders"
Source: "assets\lang\*.ini"; DestDir: "{app}\assets\lang" Source: "assets\lang\*.ini"; DestDir: "{app}\assets\lang"
Source: "flash0\font\*.*"; DestDir: "{app}\flash0\font" Source: "flash0\font\*.*"; DestDir: "{app}\flash0\font"
Source: "dx9sdk\8.1\Redist\D3D\x64\d3dcompiler_47.dll"; DestDir: "{app}"
Source: "dx9sdk\8.1\Redist\D3D\x86\d3dcompiler_47.dll"; DestName: "d3dcompiler_47.x86.dll"; DestDir: "{app}"
[Run] [Run]
Filename: {app}\PPSSPPWindows.exe; Description: {cm:LaunchProgram,{cm:AppName}}; Flags: nowait postinstall skipifsilent Filename: {app}\PPSSPPWindows.exe; Description: {cm:LaunchProgram,{cm:AppName}}; Flags: nowait postinstall skipifsilent