From 16f3c6e4a1397926e088a0ae6e81d62e781afc9a Mon Sep 17 00:00:00 2001 From: Oliver Wolff Date: Mon, 25 Apr 2016 10:00:39 +0200 Subject: Fix MinGW 5.3.0 build of ANGLE D3D11_QUERY_DATA_SO_STATISTICS is no part of d3d11sdklayers.h and thus not covered by the ANGLE_MINGW32_COMPAT define. The struct is defined in d3d11.h and will be available in an upcoming version of MinGW (see https://sourceforge.net/p/mingw-w64/mingw-w64/ci/a0cd5afeb60be3be0860e9a203314c10485bb9b8/ ). As soon as the MinGW version that includes the change is known, the __MINGW32__ check should be replaced by a proper version check. Change-Id: I774f24432b375fdf9c559449f266cc04a4905275 Reviewed-by: Friedemann Kleint --- src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp | 4 +++- src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch | 9 ++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp index c0bed2b43a..972c289412 100644 --- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp +++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp @@ -18,12 +18,14 @@ typedef struct D3D11_QUERY_DATA_SO_STATISTICS { UINT64 NumPrimitivesWritten; UINT64 PrimitivesStorageNeeded; } D3D11_QUERY_DATA_SO_STATISTICS; +#endif // ANGLE_MINGW32_COMPAT +#ifdef __MINGW32__ typedef struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT { UINT64 Frequency; BOOL Disjoint; } D3D11_QUERY_DATA_TIMESTAMP_DISJOINT; -#endif +#endif // MINGW32 namespace rx { diff --git a/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch b/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch index 59ea6e182d..dc091b0497 100644 --- a/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch +++ b/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch @@ -16,7 +16,7 @@ Change-Id: I254c208209c0071fae5efb6727f2b3cfd5542da6 .../renderer/d3d/d3d11/DebugAnnotator11.cpp | 10 +++ .../libANGLE/renderer/d3d/d3d11/DebugAnnotator11.h | 2 + .../libANGLE/renderer/d3d/d3d11/Framebuffer11.cpp | 2 + - .../src/libANGLE/renderer/d3d/d3d11/Query11.cpp | 12 +++ + .../src/libANGLE/renderer/d3d/d3d11/Query11.cpp | 14 ++++++++++++++ .../src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp | 32 +++++++- .../src/libANGLE/renderer/d3d/d3d11/Renderer11.h | 4 + .../libANGLE/renderer/d3d/d3d11/SwapChain11.cpp | 10 +++ @@ -210,9 +210,10 @@ index beffa30..186a035 100644 } diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp index c015ff4..c0bed2b 100644 +index c015ff4..972c289 100644 --- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp +++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Query11.cpp -@@ -13,6 +13,18 @@ +@@ -13,6 +13,20 @@ #include @@ -221,12 +222,14 @@ index c015ff4..c0bed2b 100644 + UINT64 NumPrimitivesWritten; + UINT64 PrimitivesStorageNeeded; +} D3D11_QUERY_DATA_SO_STATISTICS; ++#endif // ANGLE_MINGW32_COMPAT + ++#ifdef __MINGW32__ +typedef struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT { + UINT64 Frequency; + BOOL Disjoint; +} D3D11_QUERY_DATA_TIMESTAMP_DISJOINT; -+#endif ++#endif // MINGW32 + namespace rx { -- cgit v1.2.3