From: Giovanni Mascellani gmascellani@codeweavers.com
According to a clang diagnostic, redefining a typedef is C11, and we want to stick with C99. --- Makefile.am | 1 + include/vkd3d_d3dcompiler.h | 23 ++-------------- include/vkd3d_d3dcompiler_types.h | 45 +++++++++++++++++++++++++++++++ include/vkd3d_utils.h | 4 +-- 4 files changed, 49 insertions(+), 24 deletions(-) create mode 100644 include/vkd3d_d3dcompiler_types.h
diff --git a/Makefile.am b/Makefile.am index 5fbac802b..531a2705f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -24,6 +24,7 @@ vkd3d_public_headers = \ include/vkd3d_d3d9types.h \ include/vkd3d_d3dcommon.h \ include/vkd3d_d3dcompiler.h \ + include/vkd3d_d3dcompiler_types.h \ include/vkd3d_d3dx9shader.h \ include/vkd3d_dxgibase.h \ include/vkd3d_dxgiformat.h \ diff --git a/include/vkd3d_d3dcompiler.h b/include/vkd3d_d3dcompiler.h index 78d529483..c3eccdbd8 100644 --- a/include/vkd3d_d3dcompiler.h +++ b/include/vkd3d_d3dcompiler.h @@ -16,6 +16,8 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#include <vkd3d_d3dcompiler_types.h> + #ifndef __VKD3D_D3DCOMPILER_H #define __VKD3D_D3DCOMPILER_H #ifndef __D3DCOMPILER_H__ @@ -58,27 +60,6 @@ #define D3DCOMPILE_SECDATA_PRESERVE_TEMPLATE_SLOTS 0x00000002 #define D3DCOMPILE_SECDATA_REQUIRE_TEMPLATE_MATCH 0x00000004
-typedef enum D3D_BLOB_PART -{ - D3D_BLOB_INPUT_SIGNATURE_BLOB, - D3D_BLOB_OUTPUT_SIGNATURE_BLOB, - D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB, - D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB, - D3D_BLOB_ALL_SIGNATURE_BLOB, - D3D_BLOB_DEBUG_INFO, - D3D_BLOB_LEGACY_SHADER, - D3D_BLOB_XNA_PREPASS_SHADER, - D3D_BLOB_XNA_SHADER, - D3D_BLOB_PDB, - D3D_BLOB_PRIVATE_DATA, - D3D_BLOB_ROOT_SIGNATURE, - D3D_BLOB_DEBUG_NAME, - D3D_BLOB_TEST_ALTERNATE_SHADER = 0x8000, - D3D_BLOB_TEST_COMPILE_DETAILS, - D3D_BLOB_TEST_COMPILE_PERF, - D3D_BLOB_TEST_COMPILE_REPORT -} D3D_BLOB_PART; - typedef enum D3DCOMPILER_STRIP_FLAGS { D3DCOMPILER_STRIP_REFLECTION_DATA = 0x00000001, diff --git a/include/vkd3d_d3dcompiler_types.h b/include/vkd3d_d3dcompiler_types.h new file mode 100644 index 000000000..b3a47cdd9 --- /dev/null +++ b/include/vkd3d_d3dcompiler_types.h @@ -0,0 +1,45 @@ +/* + * Copyright 2010 Matteo Bruni for CodeWeavers + * + * 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, MA 02110-1301, USA + */ + +#ifndef __VKD3D_D3DCOMPILER_TYPES_H +#define __VKD3D_D3DCOMPILER_TYPES_H +#ifndef __D3DCOMPILER_H__ + +typedef enum D3D_BLOB_PART +{ + D3D_BLOB_INPUT_SIGNATURE_BLOB, + D3D_BLOB_OUTPUT_SIGNATURE_BLOB, + D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB, + D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB, + D3D_BLOB_ALL_SIGNATURE_BLOB, + D3D_BLOB_DEBUG_INFO, + D3D_BLOB_LEGACY_SHADER, + D3D_BLOB_XNA_PREPASS_SHADER, + D3D_BLOB_XNA_SHADER, + D3D_BLOB_PDB, + D3D_BLOB_PRIVATE_DATA, + D3D_BLOB_ROOT_SIGNATURE, + D3D_BLOB_DEBUG_NAME, + D3D_BLOB_TEST_ALTERNATE_SHADER = 0x8000, + D3D_BLOB_TEST_COMPILE_DETAILS, + D3D_BLOB_TEST_COMPILE_PERF, + D3D_BLOB_TEST_COMPILE_REPORT +} D3D_BLOB_PART; + +#endif /* __D3DCOMPILER_H__ */ +#endif /* __VKD3D_D3DCOMPILER_TYPES_H */ diff --git a/include/vkd3d_utils.h b/include/vkd3d_utils.h index b5ec79813..686ddf386 100644 --- a/include/vkd3d_utils.h +++ b/include/vkd3d_utils.h @@ -20,6 +20,7 @@ #define __VKD3D_UTILS_H
#include <vkd3d.h> +#include <vkd3d_d3dcompiler_types.h>
#ifndef VKD3D_UTILS_API_VERSION #define VKD3D_UTILS_API_VERSION VKD3D_API_VERSION_1_0 @@ -51,9 +52,6 @@ extern "C" { # define VKD3D_UTILS_API VKD3D_IMPORT #endif
-/** \since 1.10 */ -typedef enum D3D_BLOB_PART D3D_BLOB_PART; - /* 1.0 */ VKD3D_UTILS_API HANDLE vkd3d_create_event(void); VKD3D_UTILS_API HRESULT vkd3d_signal_event(HANDLE event);