[PATCH 1/3] x3daudio: Forward older DLLs to x3daudio1_7
Andrew Eikum
aeikum at codeweavers.com
Tue Oct 6 13:01:24 CDT 2015
Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
---
configure.ac | 3 ++-
dlls/x3daudio1_0/Makefile.in | 4 ++++
dlls/x3daudio1_0/main.c | 36 ++++++++++++++++++++++++++++++++++++
dlls/x3daudio1_0/x3daudio1_0.spec | 2 ++
dlls/x3daudio1_1/x3daudio1_1.spec | 4 ++--
dlls/x3daudio1_2/x3daudio1_2.spec | 4 ++--
dlls/x3daudio1_3/x3daudio1_3.spec | 4 ++--
dlls/x3daudio1_4/x3daudio1_4.spec | 4 ++--
dlls/x3daudio1_5/x3daudio1_5.spec | 4 ++--
dlls/x3daudio1_6/Makefile.in | 1 +
dlls/x3daudio1_6/main.c | 9 +++++++++
dlls/x3daudio1_6/x3daudio1_6.spec | 4 ++--
12 files changed, 66 insertions(+), 13 deletions(-)
create mode 100644 dlls/x3daudio1_0/Makefile.in
create mode 100644 dlls/x3daudio1_0/main.c
create mode 100644 dlls/x3daudio1_0/x3daudio1_0.spec
diff --git a/configure.ac b/configure.ac
index 62abe1b..0b77776 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3449,13 +3449,14 @@ WINE_CONFIG_DLL(wtsapi32,,[implib])
WINE_CONFIG_TEST(dlls/wtsapi32/tests)
WINE_CONFIG_DLL(wuapi,,[clean])
WINE_CONFIG_DLL(wuaueng)
+WINE_CONFIG_DLL(x3daudio1_0)
WINE_CONFIG_DLL(x3daudio1_1)
WINE_CONFIG_DLL(x3daudio1_2)
WINE_CONFIG_DLL(x3daudio1_3)
WINE_CONFIG_DLL(x3daudio1_4)
WINE_CONFIG_DLL(x3daudio1_5)
WINE_CONFIG_DLL(x3daudio1_6)
-WINE_CONFIG_DLL(x3daudio1_7)
+WINE_CONFIG_DLL(x3daudio1_7,,[implib])
WINE_CONFIG_DLL(xapofx1_1)
WINE_CONFIG_DLL(xapofx1_2)
WINE_CONFIG_DLL(xapofx1_3)
diff --git a/dlls/x3daudio1_0/Makefile.in b/dlls/x3daudio1_0/Makefile.in
new file mode 100644
index 0000000..16d2868
--- /dev/null
+++ b/dlls/x3daudio1_0/Makefile.in
@@ -0,0 +1,4 @@
+MODULE = x3daudio1_0.dll
+
+C_SRCS = \
+ main.c
diff --git a/dlls/x3daudio1_0/main.c b/dlls/x3daudio1_0/main.c
new file mode 100644
index 0000000..52a5e3d
--- /dev/null
+++ b/dlls/x3daudio1_0/main.c
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2015 Andrew Eikum 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 <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+
+BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID reserved)
+{
+ switch (reason)
+ {
+ case DLL_WINE_PREATTACH:
+ return FALSE; /* prefer native version */
+ case DLL_PROCESS_ATTACH:
+ DisableThreadLibraryCalls(instance);
+ break;
+ }
+
+ return TRUE;
+}
diff --git a/dlls/x3daudio1_0/x3daudio1_0.spec b/dlls/x3daudio1_0/x3daudio1_0.spec
new file mode 100644
index 0000000..6351da4
--- /dev/null
+++ b/dlls/x3daudio1_0/x3daudio1_0.spec
@@ -0,0 +1,2 @@
+@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr) x3daudio1_6.X3DAudioCalculate
+@ cdecl X3DAudioInitialize(long float ptr) x3daudio1_6.X3DAudioInitialize
diff --git a/dlls/x3daudio1_1/x3daudio1_1.spec b/dlls/x3daudio1_1/x3daudio1_1.spec
index 9a51f1b..6351da4 100644
--- a/dlls/x3daudio1_1/x3daudio1_1.spec
+++ b/dlls/x3daudio1_1/x3daudio1_1.spec
@@ -1,2 +1,2 @@
-@ stub X3DAudioCalculate
-@ stub X3DAudioInitialize
+@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr) x3daudio1_6.X3DAudioCalculate
+@ cdecl X3DAudioInitialize(long float ptr) x3daudio1_6.X3DAudioInitialize
diff --git a/dlls/x3daudio1_2/x3daudio1_2.spec b/dlls/x3daudio1_2/x3daudio1_2.spec
index 9a51f1b..6351da4 100644
--- a/dlls/x3daudio1_2/x3daudio1_2.spec
+++ b/dlls/x3daudio1_2/x3daudio1_2.spec
@@ -1,2 +1,2 @@
-@ stub X3DAudioCalculate
-@ stub X3DAudioInitialize
+@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr) x3daudio1_6.X3DAudioCalculate
+@ cdecl X3DAudioInitialize(long float ptr) x3daudio1_6.X3DAudioInitialize
diff --git a/dlls/x3daudio1_3/x3daudio1_3.spec b/dlls/x3daudio1_3/x3daudio1_3.spec
index 9a51f1b..6351da4 100644
--- a/dlls/x3daudio1_3/x3daudio1_3.spec
+++ b/dlls/x3daudio1_3/x3daudio1_3.spec
@@ -1,2 +1,2 @@
-@ stub X3DAudioCalculate
-@ stub X3DAudioInitialize
+@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr) x3daudio1_6.X3DAudioCalculate
+@ cdecl X3DAudioInitialize(long float ptr) x3daudio1_6.X3DAudioInitialize
diff --git a/dlls/x3daudio1_4/x3daudio1_4.spec b/dlls/x3daudio1_4/x3daudio1_4.spec
index 9a51f1b..6351da4 100644
--- a/dlls/x3daudio1_4/x3daudio1_4.spec
+++ b/dlls/x3daudio1_4/x3daudio1_4.spec
@@ -1,2 +1,2 @@
-@ stub X3DAudioCalculate
-@ stub X3DAudioInitialize
+@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr) x3daudio1_6.X3DAudioCalculate
+@ cdecl X3DAudioInitialize(long float ptr) x3daudio1_6.X3DAudioInitialize
diff --git a/dlls/x3daudio1_5/x3daudio1_5.spec b/dlls/x3daudio1_5/x3daudio1_5.spec
index 9a51f1b..6351da4 100644
--- a/dlls/x3daudio1_5/x3daudio1_5.spec
+++ b/dlls/x3daudio1_5/x3daudio1_5.spec
@@ -1,2 +1,2 @@
-@ stub X3DAudioCalculate
-@ stub X3DAudioInitialize
+@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr) x3daudio1_6.X3DAudioCalculate
+@ cdecl X3DAudioInitialize(long float ptr) x3daudio1_6.X3DAudioInitialize
diff --git a/dlls/x3daudio1_6/Makefile.in b/dlls/x3daudio1_6/Makefile.in
index ad59b8f..fa9046e 100644
--- a/dlls/x3daudio1_6/Makefile.in
+++ b/dlls/x3daudio1_6/Makefile.in
@@ -1,4 +1,5 @@
MODULE = x3daudio1_6.dll
+IMPORTS = x3daudio1_7
C_SRCS = \
main.c
diff --git a/dlls/x3daudio1_6/main.c b/dlls/x3daudio1_6/main.c
index ea6732f..ab06cd6 100644
--- a/dlls/x3daudio1_6/main.c
+++ b/dlls/x3daudio1_6/main.c
@@ -23,6 +23,8 @@
#include "windef.h"
#include "winbase.h"
+#include "x3daudio.h"
+
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
switch (fdwReason)
@@ -38,3 +40,10 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
return TRUE;
}
+
+void CDECL X3DA16_X3DAudioInitialize(UINT32 chanmask, float speedofsound,
+ X3DAUDIO_HANDLE handle)
+{
+ /* forward to 1.7 */
+ X3DAudioInitialize(chanmask, speedofsound, handle);
+}
diff --git a/dlls/x3daudio1_6/x3daudio1_6.spec b/dlls/x3daudio1_6/x3daudio1_6.spec
index 9a51f1b..6103b1b 100644
--- a/dlls/x3daudio1_6/x3daudio1_6.spec
+++ b/dlls/x3daudio1_6/x3daudio1_6.spec
@@ -1,2 +1,2 @@
-@ stub X3DAudioCalculate
-@ stub X3DAudioInitialize
+@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr) x3daudio1_7.X3DAudioCalculate
+@ cdecl X3DAudioInitialize(long float ptr) X3DA16_X3DAudioInitialize
--
2.6.0
More information about the wine-patches
mailing list