[5/5] d3d10: Implement D3D10CompileShader, forward to d3dcompiler.

Matteo Bruni matteo.mystral at gmail.com
Thu Aug 26 10:26:50 CDT 2010


-------------- next part --------------
From 4d7ec693ab82f0b83e39fb3a65a30c81a2bc1cc1 Mon Sep 17 00:00:00 2001
From: Matteo Bruni <matteo.mystral at gmail.com>
Date: Thu, 26 Aug 2010 17:17:38 +0200
Subject: d3d10: Implement D3D10CompileShader, forward to d3dcompiler.

---
 dlls/d3d10/Makefile.in |    2 +-
 dlls/d3d10/d3d10.spec  |    2 +-
 dlls/d3d10/shader.c    |   15 ++++++++++++++-
 3 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/dlls/d3d10/Makefile.in b/dlls/d3d10/Makefile.in
index 79b2bbc..7a18c7e 100644
--- a/dlls/d3d10/Makefile.in
+++ b/dlls/d3d10/Makefile.in
@@ -4,7 +4,7 @@ SRCDIR    = @srcdir@
 VPATH     = @srcdir@
 MODULE    = d3d10.dll
 IMPORTLIB = d3d10
-IMPORTS   = dxguid uuid d3d10core dxgi
+IMPORTS   = d3d10core d3dcompiler dxgi dxguid uuid
 
 C_SRCS = \
 	d3d10_main.c \
diff --git a/dlls/d3d10/d3d10.spec b/dlls/d3d10/d3d10.spec
index e108a5c..1d62aea 100644
--- a/dlls/d3d10/d3d10.spec
+++ b/dlls/d3d10/d3d10.spec
@@ -1,5 +1,5 @@
 @ stub D3D10CompileEffectFromMemory
-@ stub D3D10CompileShader
+@ stdcall D3D10CompileShader(ptr long str ptr ptr str str long ptr ptr)
 @ stdcall D3D10CreateBlob(long ptr) d3dcompiler_43.D3DCreateBlob
 @ stdcall D3D10CreateDevice(ptr long ptr long long ptr)
 @ stdcall D3D10CreateDeviceAndSwapChain(ptr long ptr long long ptr ptr ptr)
diff --git a/dlls/d3d10/shader.c b/dlls/d3d10/shader.c
index d5d9e16..b887f63 100644
--- a/dlls/d3d10/shader.c
+++ b/dlls/d3d10/shader.c
@@ -18,9 +18,11 @@
  *
  */
 
+#define COBJMACROS
 #include "config.h"
 #include "wine/port.h"
-
+#include "objbase.h"
+#include "d3dcompiler.h"
 #include "d3d10_private.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(d3d10);
@@ -133,3 +135,14 @@ const struct ID3D10ShaderReflectionVtbl d3d10_shader_reflection_vtbl =
     d3d10_shader_reflection_GetInputParameterDesc,
     d3d10_shader_reflection_GetOutputParameterDesc,
 };
+
+HRESULT WINAPI D3D10CompileShader(LPCSTR data, SIZE_T size, LPCSTR filename,
+                                  const D3D10_SHADER_MACRO *defines,
+                                  ID3D10Include *include, LPCSTR entrypoint,
+                                  LPCSTR profile, UINT flags,
+                                  ID3D10Blob **shader, ID3D10Blob **errors)
+{
+    /* Forward to d3dcompiler */
+    return D3DCompile(data, size, filename, defines, include, entrypoint,
+                      profile, flags, 0, shader, errors);
+}
-- 
1.7.1


More information about the wine-patches mailing list