diff options
author | Kai Koehne <kai.koehne@theqtcompany.com> | 2014-11-17 15:10:10 +0100 |
---|---|---|
committer | Jani Heikkinen <jani.heikkinen@theqtcompany.com> | 2014-11-17 20:03:39 +0100 |
commit | 40a4e446f37ee49783227d80fa1d805c8cab2463 (patch) | |
tree | 2d49e158f7a4e4c7ed87e63e8842954237ae843e /src | |
parent | e4d9102805e2e733d00a3de926ef97337e6d58cb (diff) | |
download | qtbase-40a4e446f37ee49783227d80fa1d805c8cab2463.tar.gz qtbase-40a4e446f37ee49783227d80fa1d805c8cab2463.tar.bz2 qtbase-40a4e446f37ee49783227d80fa1d805c8cab2463.zip |
ANGLE: Fix compilation with D3D9
Fixes a regression introduced in c6df5fe3ed0f2a722 that
broke compilation with d3d9 (namely, -target xp).
Task-number: QTBUG-42714
Change-Id: I1a5e9682d5463bfa082a5d0c062399a131a7cf52
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Diffstat (limited to 'src')
4 files changed, 70 insertions, 2 deletions
diff --git a/src/3rdparty/angle/src/common/NativeWindow.h b/src/3rdparty/angle/src/common/NativeWindow.h index 9e93aeacde..c4a0e42bcc 100644 --- a/src/3rdparty/angle/src/common/NativeWindow.h +++ b/src/3rdparty/angle/src/common/NativeWindow.h @@ -54,7 +54,12 @@ public: bool getClientRect(LPRECT rect); bool isIconic(); - HRESULT createSwapChain(ID3D11Device* device, DXGIFactory* factory, +# if defined(ANGLE_ENABLE_D3D11) + typedef ID3D11Device Device; +#else + typedef IDirect3DDevice9 Device; +#endif + HRESULT createSwapChain(Device* device, DXGIFactory* factory, DXGI_FORMAT format, UINT width, UINT height, DXGISwapChain** swapChain); diff --git a/src/3rdparty/angle/src/common/platform.h b/src/3rdparty/angle/src/common/platform.h index 0001e7142e..5bf97f9184 100644 --- a/src/3rdparty/angle/src/common/platform.h +++ b/src/3rdparty/angle/src/common/platform.h @@ -52,6 +52,7 @@ # if defined(ANGLE_ENABLE_D3D9) # include <d3d9.h> +# include <dxgi.h> # if !defined(COMPILER_IMPLEMENTATION) # include <d3dcompiler.h> # endif diff --git a/src/3rdparty/angle/src/common/win32/NativeWindow.cpp b/src/3rdparty/angle/src/common/win32/NativeWindow.cpp index 2440747260..46082a2e28 100644 --- a/src/3rdparty/angle/src/common/win32/NativeWindow.cpp +++ b/src/3rdparty/angle/src/common/win32/NativeWindow.cpp @@ -35,7 +35,7 @@ bool NativeWindow::isIconic() return IsIconic(mWindow) == TRUE; } -HRESULT NativeWindow::createSwapChain(ID3D11Device* device, DXGIFactory* factory, +HRESULT NativeWindow::createSwapChain(NativeWindow::Device* device, DXGIFactory* factory, DXGI_FORMAT format, unsigned int width, unsigned int height, DXGISwapChain** swapChain) { diff --git a/src/angle/patches/0017-ANGLE-Fix-compilation-with-D3D9.patch b/src/angle/patches/0017-ANGLE-Fix-compilation-with-D3D9.patch new file mode 100644 index 0000000000..4ada6d41d2 --- /dev/null +++ b/src/angle/patches/0017-ANGLE-Fix-compilation-with-D3D9.patch @@ -0,0 +1,62 @@ +From d7839cc052de126cc3b457fe41963fd9c7e91846 Mon Sep 17 00:00:00 2001 +From: Kai Koehne <kai.koehne@theqtcompany.com> +Date: Mon, 17 Nov 2014 15:10:10 +0100 +Subject: [PATCH] ANGLE: Fix compilation with D3D9 + +Fixes a regression introduced in c6df5fe3ed0f2a722 that +broke compilation with d3d9 (namely, -target xp). + +Task-number: QTBUG-42714 +Change-Id: I1a5e9682d5463bfa082a5d0c062399a131a7cf52 +--- + src/3rdparty/angle/src/common/NativeWindow.h | 7 ++++++- + src/3rdparty/angle/src/common/platform.h | 1 + + src/3rdparty/angle/src/common/win32/NativeWindow.cpp | 2 +- + 3 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/src/3rdparty/angle/src/common/NativeWindow.h b/src/3rdparty/angle/src/common/NativeWindow.h +index 9e93aea..c4a0e42 100644 +--- a/src/3rdparty/angle/src/common/NativeWindow.h ++++ b/src/3rdparty/angle/src/common/NativeWindow.h +@@ -54,7 +54,12 @@ public: + bool getClientRect(LPRECT rect); + bool isIconic(); + +- HRESULT createSwapChain(ID3D11Device* device, DXGIFactory* factory, ++# if defined(ANGLE_ENABLE_D3D11) ++ typedef ID3D11Device Device; ++#else ++ typedef IDirect3DDevice9 Device; ++#endif ++ HRESULT createSwapChain(Device* device, DXGIFactory* factory, + DXGI_FORMAT format, UINT width, UINT height, + DXGISwapChain** swapChain); + +diff --git a/src/3rdparty/angle/src/common/platform.h b/src/3rdparty/angle/src/common/platform.h +index 0001e71..5bf97f9 100644 +--- a/src/3rdparty/angle/src/common/platform.h ++++ b/src/3rdparty/angle/src/common/platform.h +@@ -52,6 +52,7 @@ + + # if defined(ANGLE_ENABLE_D3D9) + # include <d3d9.h> ++# include <dxgi.h> + # if !defined(COMPILER_IMPLEMENTATION) + # include <d3dcompiler.h> + # endif +diff --git a/src/3rdparty/angle/src/common/win32/NativeWindow.cpp b/src/3rdparty/angle/src/common/win32/NativeWindow.cpp +index 2440747..46082a2 100644 +--- a/src/3rdparty/angle/src/common/win32/NativeWindow.cpp ++++ b/src/3rdparty/angle/src/common/win32/NativeWindow.cpp +@@ -35,7 +35,7 @@ bool NativeWindow::isIconic() + return IsIconic(mWindow) == TRUE; + } + +-HRESULT NativeWindow::createSwapChain(ID3D11Device* device, DXGIFactory* factory, ++HRESULT NativeWindow::createSwapChain(NativeWindow::Device* device, DXGIFactory* factory, + DXGI_FORMAT format, unsigned int width, unsigned int height, + DXGISwapChain** swapChain) + { +-- +1.9.4.msysgit.0 + |