From fe050706433f6fcd8ff09c735368c1ee7f57d2ef Mon Sep 17 00:00:00 2001
From: Matteo Bruni <matteo.mystral@gmail.com>
Date: Tue, 3 Aug 2010 18:44:25 +0200
Subject: [PATCH] d3dcompiler_42: Stub dll.

---
 configure                                 |  1 +
 configure.ac                              |  1 +
 dlls/d3dcompiler_42/Makefile.in           | 13 +++++++
 dlls/d3dcompiler_42/d3dcompiler_42.spec   | 13 +++++++
 dlls/d3dcompiler_42/d3dcompiler_42_main.c | 44 +++++++++++++++++++++++
 dlls/d3dcompiler_42/version.rc            | 27 ++++++++++++++
 6 files changed, 99 insertions(+)
 create mode 100644 dlls/d3dcompiler_42/Makefile.in
 create mode 100644 dlls/d3dcompiler_42/d3dcompiler_42.spec
 create mode 100644 dlls/d3dcompiler_42/d3dcompiler_42_main.c
 create mode 100644 dlls/d3dcompiler_42/version.rc

diff --git a/configure b/configure
index bc1196c4594..4f95d204f1a 100755
--- a/configure
+++ b/configure
@@ -14429,6 +14429,7 @@ wine_fn_config_dll d3d8 enable_d3d8 d3d8
 wine_fn_config_test dlls/d3d8/tests d3d8_test
 wine_fn_config_dll d3d9 enable_d3d9 d3d9
 wine_fn_config_test dlls/d3d9/tests d3d9_test
+wine_fn_config_dll d3dcompiler_42 enable_d3dcompiler_42
 wine_fn_config_dll d3dcompiler_43 enable_d3dcompiler_43 d3dcompiler
 wine_fn_config_dll d3dim enable_d3dim d3dim
 wine_fn_config_dll d3drm enable_d3drm d3drm
diff --git a/configure.ac b/configure.ac
index b5430bdc7b5..dd901862d60 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2285,6 +2285,7 @@ WINE_CONFIG_DLL(d3d8,,[d3d8])
 WINE_CONFIG_TEST(dlls/d3d8/tests)
 WINE_CONFIG_DLL(d3d9,,[d3d9])
 WINE_CONFIG_TEST(dlls/d3d9/tests)
+WINE_CONFIG_DLL(d3dcompiler_42)
 WINE_CONFIG_DLL(d3dcompiler_43,,[d3dcompiler])
 WINE_CONFIG_DLL(d3dim,,[d3dim])
 WINE_CONFIG_DLL(d3drm,,[d3drm])
diff --git a/dlls/d3dcompiler_42/Makefile.in b/dlls/d3dcompiler_42/Makefile.in
new file mode 100644
index 00000000000..5d0a4a2742e
--- /dev/null
+++ b/dlls/d3dcompiler_42/Makefile.in
@@ -0,0 +1,13 @@
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = d3dcompiler_42.dll
+IMPORTS   = kernel32
+
+C_SRCS = \
+	d3dcompiler_42_main.c
+
+RC_SRCS = version.rc
+
+@MAKE_DLL_RULES@
diff --git a/dlls/d3dcompiler_42/d3dcompiler_42.spec b/dlls/d3dcompiler_42/d3dcompiler_42.spec
new file mode 100644
index 00000000000..84adee3084c
--- /dev/null
+++ b/dlls/d3dcompiler_42/d3dcompiler_42.spec
@@ -0,0 +1,13 @@
+@ stdcall D3DAssemble(ptr long str ptr ptr long ptr ptr) d3dcompiler_43.D3DAssemble
+@ stub DebugSetMute
+@ stdcall D3DCompile(ptr long str ptr ptr str str long long ptr ptr) d3dcompiler_43.D3DCompile
+@ stdcall D3DDisassemble10Effect(ptr long ptr) d3dcompiler_43.D3DDisassemble10Effect
+@ stdcall D3DDisassemble(ptr long long ptr ptr) d3dcompiler_43.D3DDisassemble
+@ stdcall D3DGetDebugInfo(ptr long ptr) d3dcompiler_43.D3DGetDebugInfo
+@ stdcall D3DGetInputAndOutputSignatureBlob(ptr long ptr) d3dcompiler_43.D3DGetInputAndOutputSignatureBlob
+@ stdcall D3DGetInputSignatureBlob(ptr long ptr) d3dcompiler_43.D3DGetInputSignatureBlob
+@ stdcall D3DGetOutputSignatureBlob(ptr long ptr) d3dcompiler_43.D3DGetOutputSignatureBlob
+@ stdcall D3DPreprocess(ptr long str ptr ptr ptr ptr) d3dcompiler_43.D3DPreprocess
+@ stdcall D3DReflect(ptr long ptr ptr) d3dcompiler_43.D3DReflect
+@ stub D3DReturnFailure1
+@ stdcall D3DStripShader(ptr long long ptr) d3dcompiler_43.D3DStripShader
diff --git a/dlls/d3dcompiler_42/d3dcompiler_42_main.c b/dlls/d3dcompiler_42/d3dcompiler_42_main.c
new file mode 100644
index 00000000000..c4745ee70d9
--- /dev/null
+++ b/dlls/d3dcompiler_42/d3dcompiler_42_main.c
@@ -0,0 +1,44 @@
+/*
+ * Direct3D shader compiler main file
+ *
+ * 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
+ *
+ */
+
+#include "config.h"
+#include "wine/port.h"
+
+#include <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+
+BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
+{
+    switch (fdwReason)
+    {
+        case DLL_WINE_PREATTACH:
+            return FALSE;    /* prefer native version */
+        case DLL_PROCESS_ATTACH:
+            DisableThreadLibraryCalls(hinstDLL);
+            break;
+        case DLL_PROCESS_DETACH:
+            break;
+    }
+
+    return TRUE;
+}
diff --git a/dlls/d3dcompiler_42/version.rc b/dlls/d3dcompiler_42/version.rc
new file mode 100644
index 00000000000..3ed70880068
--- /dev/null
+++ b/dlls/d3dcompiler_42/version.rc
@@ -0,0 +1,27 @@
+/*
+ * 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
+ *
+ */
+
+#define WINE_FILEDESCRIPTION_STR "Wine D3DCompiler"
+#define WINE_FILENAME_STR "d3dcompiler_42.dll"
+#define WINE_FILEVERSION 9,27,952,3022
+#define WINE_FILEVERSION_STR "9.27.952.3022"
+#define WINE_PRODUCTVERSION 9,27,952,3022
+#define WINE_PRODUCTVERSION_STR "9.27.952.3022"
+
+#include "wine/wine_common_ver.rc"
-- 
GitLab