Files
MINGW-packages/mingw-w64-headers-git/0003-DirectX-11-fixes-for-VLC.patch

271 lines
9.5 KiB
Diff

From f12b3c23e8b9a4bd727890317662befe3139a96d Mon Sep 17 00:00:00 2001
From: Alexey Pavlov <alexpux@gmail.com>
Date: Thu, 14 Sep 2017 11:21:16 +0300
Subject: [PATCH] DirectX 11 fixes for VLC
---
mingw-w64-headers/Makefile.am | 1 +
mingw-w64-headers/Makefile.in | 1 +
mingw-w64-headers/direct-x/include/d3d11.h | 5 +
mingw-w64-headers/direct-x/include/d3d11.idl | 5 +
mingw-w64-headers/direct-x/include/d3d11_1.h | 5 +
mingw-w64-headers/direct-x/include/dxgidebug.h | 139 +++++++++++++++++++++++
mingw-w64-headers/direct-x/include/dxgidebug.idl | 43 +++++++
7 files changed, 199 insertions(+)
create mode 100644 mingw-w64-headers/direct-x/include/dxgidebug.h
create mode 100644 mingw-w64-headers/direct-x/include/dxgidebug.idl
diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index 68102d1f..5eb74e81 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -220,6 +220,7 @@ IDL_SRCS = \
direct-x/include/dxgi1_4.idl \
direct-x/include/dxgi1_5.idl \
direct-x/include/dxgi1_6.idl \
+ direct-x/include/dxgidebug.idl \
direct-x/include/dxgicommon.idl \
direct-x/include/dxgiformat.idl \
direct-x/include/dxgitype.idl \
diff --git a/mingw-w64-headers/Makefile.in b/mingw-w64-headers/Makefile.in
index 0769a1c9..6a3dbc9b 100644
--- a/mingw-w64-headers/Makefile.in
+++ b/mingw-w64-headers/Makefile.in
@@ -519,6 +519,7 @@ EXTRA_HEADERS = \
@HAVE_WIDL_TRUE@ direct-x/include/dxgi1_4.idl \
@HAVE_WIDL_TRUE@ direct-x/include/dxgi1_5.idl \
@HAVE_WIDL_TRUE@ direct-x/include/dxgi1_6.idl \
+@HAVE_WIDL_TRUE@ direct-x/include/dxgidebug.idl \
@HAVE_WIDL_TRUE@ direct-x/include/dxgicommon.idl \
@HAVE_WIDL_TRUE@ direct-x/include/dxgiformat.idl \
@HAVE_WIDL_TRUE@ direct-x/include/dxgitype.idl \
diff --git a/mingw-w64-headers/direct-x/include/d3d11.h b/mingw-w64-headers/direct-x/include/d3d11.h
index 52ba21c2..0696af64 100644
--- a/mingw-w64-headers/direct-x/include/d3d11.h
+++ b/mingw-w64-headers/direct-x/include/d3d11.h
@@ -13309,6 +13309,11 @@ typedef enum D3D11_CREATE_DEVICE_FLAG {
D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT = 0x100,
D3D11_CREATE_DEVICE_VIDEO_SUPPORT = 0x800
} D3D11_CREATE_DEVICE_FLAG;
+typedef enum D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT {
+ D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT = 0x00000001,
+ D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT = 0x00000002,
+} D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT;
+
#define D3D11_SDK_VERSION (7)
#include <d3d10_1.h>
diff --git a/mingw-w64-headers/direct-x/include/d3d11.idl b/mingw-w64-headers/direct-x/include/d3d11.idl
index 2b67c4fe..a2d1c284 100644
--- a/mingw-w64-headers/direct-x/include/d3d11.idl
+++ b/mingw-w64-headers/direct-x/include/d3d11.idl
@@ -3759,6 +3759,11 @@ typedef enum D3D11_CREATE_DEVICE_FLAG {
D3D11_CREATE_DEVICE_VIDEO_SUPPORT = 0x0800
} D3D11_CREATE_DEVICE_FLAG;
+typedef enum D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT {
+ D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT = 0x00000001,
+ D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT = 0x00000002,
+} D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT;
+
const UINT D3D11_SDK_VERSION = 7;
cpp_quote("#include <d3d10_1.h>")
diff --git a/mingw-w64-headers/direct-x/include/dxgidebug.h b/mingw-w64-headers/direct-x/include/dxgidebug.h
new file mode 100644
index 00000000..20d52e18
--- /dev/null
+++ b/mingw-w64-headers/direct-x/include/dxgidebug.h
@@ -0,0 +1,139 @@
+/*** Autogenerated by WIDL 1.6 from dxgidebug.idl - Do not edit ***/
+
+#ifndef __REQUIRED_RPCNDR_H_VERSION__
+#define __REQUIRED_RPCNDR_H_VERSION__ 475
+#endif
+
+#include <rpc.h>
+#include <rpcndr.h>
+
+#ifndef COM_NO_WINDOWS_H
+#include <windows.h>
+#include <ole2.h>
+#endif
+
+#ifndef __dxgidebug_h__
+#define __dxgidebug_h__
+
+/* Forward declarations */
+
+#ifndef __IDXGIDebug_FWD_DEFINED__
+#define __IDXGIDebug_FWD_DEFINED__
+typedef interface IDXGIDebug IDXGIDebug;
+#endif
+
+/* Headers for imported files */
+
+#include <oaidl.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+DEFINE_GUID(DXGI_DEBUG_ALL, 0xe48ae283, 0xda80, 0x490b,0x87, 0xe6, 0x43, 0xe9, 0xa9, 0xcf, 0xda, 0x08);
+DEFINE_GUID(DXGI_DEBUG_DX, 0x35cdd7fc, 0x13b2, 0x421d,0xa5, 0xd7, 0x7e, 0x44, 0x51, 0x28, 0x7d, 0x64);
+DEFINE_GUID(DXGI_DEBUG_DXGI, 0x25cddaa4, 0xb1c6, 0x47e1,0xac, 0x3e, 0x98, 0x87, 0x5b, 0x5a, 0x2e, 0x2a);
+DEFINE_GUID(DXGI_DEBUG_APP, 0x06cd6e01, 0x4219, 0x4ebd,0x87, 0x90, 0x27, 0xed, 0x23, 0x36, 0x0c, 0x62);
+typedef enum DXGI_DEBUG_RLO_FLAGS {
+ DXGI_DEBUG_RLO_SUMMARY = 0x1,
+ DXGI_DEBUG_RLO_DETAIL = 0x2,
+ DXGI_DEBUG_RLO_IGNORE_INTERNAL = 0x4,
+ DXGI_DEBUG_RLO_ALL = 0x7
+} DXGI_DEBUG_RLO_FLAGS;
+/*****************************************************************************
+ * IDXGIDebug interface
+ */
+#ifndef __IDXGIDebug_INTERFACE_DEFINED__
+#define __IDXGIDebug_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_IDXGIDebug, 0x119e7452, 0xde9e, 0x40fe, 0x88,0x06, 0x88,0xf9,0x0c,0x12,0xb4,0x41);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("119e7452-de9e-40fe-8806-88f90c12b441")
+IDXGIDebug : public IUnknown
+{
+ virtual HRESULT STDMETHODCALLTYPE ReportLiveObjects(
+ GUID apiid,
+ DXGI_DEBUG_RLO_FLAGS flags) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(IDXGIDebug, 0x119e7452, 0xde9e, 0x40fe, 0x88,0x06, 0x88,0xf9,0x0c,0x12,0xb4,0x41)
+#endif
+#else
+typedef struct IDXGIDebugVtbl {
+ BEGIN_INTERFACE
+
+ /*** IUnknown methods ***/
+ HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+ IDXGIDebug* This,
+ REFIID riid,
+ void **ppvObject);
+
+ ULONG (STDMETHODCALLTYPE *AddRef)(
+ IDXGIDebug* This);
+
+ ULONG (STDMETHODCALLTYPE *Release)(
+ IDXGIDebug* This);
+
+ /*** IDXGIDebug methods ***/
+ HRESULT (STDMETHODCALLTYPE *ReportLiveObjects)(
+ IDXGIDebug* This,
+ GUID apiid,
+ DXGI_DEBUG_RLO_FLAGS flags);
+
+ END_INTERFACE
+} IDXGIDebugVtbl;
+interface IDXGIDebug {
+ CONST_VTBL IDXGIDebugVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define IDXGIDebug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IDXGIDebug_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IDXGIDebug_Release(This) (This)->lpVtbl->Release(This)
+/*** IDXGIDebug methods ***/
+#define IDXGIDebug_ReportLiveObjects(This,apiid,flags) (This)->lpVtbl->ReportLiveObjects(This,apiid,flags)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT IDXGIDebug_QueryInterface(IDXGIDebug* This,REFIID riid,void **ppvObject) {
+ return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG IDXGIDebug_AddRef(IDXGIDebug* This) {
+ return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG IDXGIDebug_Release(IDXGIDebug* This) {
+ return This->lpVtbl->Release(This);
+}
+/*** IDXGIDebug methods ***/
+static FORCEINLINE HRESULT IDXGIDebug_ReportLiveObjects(IDXGIDebug* This,GUID apiid,DXGI_DEBUG_RLO_FLAGS flags) {
+ return This->lpVtbl->ReportLiveObjects(This,apiid,flags);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE IDXGIDebug_ReportLiveObjects_Proxy(
+ IDXGIDebug* This,
+ GUID apiid,
+ DXGI_DEBUG_RLO_FLAGS flags);
+void __RPC_STUB IDXGIDebug_ReportLiveObjects_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+
+#endif /* __IDXGIDebug_INTERFACE_DEFINED__ */
+
+/* Begin additional prototypes for all interfaces */
+
+
+/* End additional prototypes */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __dxgidebug_h__ */
diff --git a/mingw-w64-headers/direct-x/include/dxgidebug.idl b/mingw-w64-headers/direct-x/include/dxgidebug.idl
new file mode 100644
index 00000000..7ed13940
--- /dev/null
+++ b/mingw-w64-headers/direct-x/include/dxgidebug.idl
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2015 Steve Lhomme
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA02110-1301, USA
+ */
+
+import "oaidl.idl";
+
+cpp_quote("DEFINE_GUID(DXGI_DEBUG_ALL, 0xe48ae283, 0xda80, 0x490b,0x87, 0xe6, 0x43, 0xe9, 0xa9, 0xcf, 0xda, 0x08);")
+cpp_quote("DEFINE_GUID(DXGI_DEBUG_DX, 0x35cdd7fc, 0x13b2, 0x421d,0xa5, 0xd7, 0x7e, 0x44, 0x51, 0x28, 0x7d, 0x64);")
+cpp_quote("DEFINE_GUID(DXGI_DEBUG_DXGI, 0x25cddaa4, 0xb1c6, 0x47e1,0xac, 0x3e, 0x98, 0x87, 0x5b, 0x5a, 0x2e, 0x2a);")
+cpp_quote("DEFINE_GUID(DXGI_DEBUG_APP, 0x06cd6e01, 0x4219, 0x4ebd,0x87, 0x90, 0x27, 0xed, 0x23, 0x36, 0x0c, 0x62);")
+
+typedef enum DXGI_DEBUG_RLO_FLAGS {
+ DXGI_DEBUG_RLO_SUMMARY = 0x0001,
+ DXGI_DEBUG_RLO_DETAIL = 0x0002,
+ DXGI_DEBUG_RLO_IGNORE_INTERNAL = 0x0004,
+ DXGI_DEBUG_RLO_ALL = 0x0007
+} DXGI_DEBUG_RLO_FLAGS;
+
+[
+ object,
+ local,
+ uuid(119e7452-de9e-40fe-8806-88f90c12b441)
+]
+interface IDXGIDebug : IUnknown
+{
+ HRESULT ReportLiveObjects(
+ [in] GUID apiid,
+ [in] DXGI_DEBUG_RLO_FLAGS flags);
+}
--
2.14.2