Module: wine
Branch: master
Commit: 4a361b048908404754bc2fabb463eda8c8203053
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4a361b048908404754bc2fabb…
Author: Andrew Eikum <aeikum(a)codeweavers.com>
Date: Mon Jan 11 13:53:01 2016 -0600
xaudio2_6: Use shared source.
Signed-off-by: Andrew Eikum <aeikum(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
configure | 1 +
configure.ac | 1 +
dlls/xaudio2_6/Makefile.in | 7 ++++-
dlls/xaudio2_6/xaudio2_6.spec | 2 +-
dlls/xaudio2_6/xaudio_classes.idl | 42 ------------------------------
dlls/xaudio2_6/xaudio_dll.c | 54 ---------------------------------------
dlls/xaudio2_7/xaudio_classes.idl | 23 +++++++++++++++++
7 files changed, 32 insertions(+), 98 deletions(-)
diff --git a/configure b/configure
index e000469..91c21aa 100755
--- a/configure
+++ b/configure
@@ -13719,6 +13719,7 @@ fi
if test "x$ac_cv_have_openalsoft" != xyes
then
as_fn_append wine_notices "|openal-soft ${notice_platform}development files not found (or too old), XAudio2 won't be supported"
+ enable_xaudio2_6=${enable_xaudio2_6:-no}
enable_xaudio2_7=${enable_xaudio2_7:-no}
enable_xaudio2_8=${enable_xaudio2_8:-no}
fi
diff --git a/configure.ac b/configure.ac
index 296f11d..6535b4a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1662,6 +1662,7 @@ fi
if test "x$ac_cv_have_openalsoft" != xyes
then
WINE_NOTICE([openal-soft ${notice_platform}development files not found (or too old), XAudio2 won't be supported])
+ enable_xaudio2_6=${enable_xaudio2_6:-no}
enable_xaudio2_7=${enable_xaudio2_7:-no}
enable_xaudio2_8=${enable_xaudio2_8:-no}
fi
diff --git a/dlls/xaudio2_6/Makefile.in b/dlls/xaudio2_6/Makefile.in
index c56b079..b1e7584 100644
--- a/dlls/xaudio2_6/Makefile.in
+++ b/dlls/xaudio2_6/Makefile.in
@@ -1,7 +1,12 @@
+EXTRADEFS = -DXAUDIO2_VER=6
MODULE = xaudio2_6.dll
-IMPORTS = ole32
+IMPORTS = advapi32 kernel32 ole32 user32 uuid
+EXTRALIBS = $(OPENAL_LIBS)
+PARENTSRC = ../xaudio2_7
C_SRCS = \
+ compat.c \
+ xapofx.c \
xaudio_dll.c
IDL_SRCS = xaudio_classes.idl
diff --git a/dlls/xaudio2_6/xaudio2_6.spec b/dlls/xaudio2_6/xaudio2_6.spec
index cb263d4..b16365d 100644
--- a/dlls/xaudio2_6/xaudio2_6.spec
+++ b/dlls/xaudio2_6/xaudio2_6.spec
@@ -1,4 +1,4 @@
@ stdcall -private DllCanUnloadNow()
-@ stdcall -private DllGetClassObject(ptr ptr ptr) xaudio2_7.DllGetClassObject
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
@ stdcall -private DllRegisterServer()
@ stdcall -private DllUnregisterServer()
diff --git a/dlls/xaudio2_6/xaudio_classes.idl b/dlls/xaudio2_6/xaudio_classes.idl
deleted file mode 100644
index 1b76a6a..0000000
--- a/dlls/xaudio2_6/xaudio_classes.idl
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * COM Classes for xaudio
- *
- * 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
- */
-
-#pragma makedep register
-
-[
- helpstring("XAudio2.6 Class"),
- threading(both),
- uuid(3eda9b49-2085-498b-9bb2-39a6778493de)
-]
-coclass XAudio26 { interface IXAudio27; }
-
-[
- helpstring("XAudio2.6 AudioReverb Class"),
- threading(both),
- uuid(cecec95a-d894-491a-bee3-5e106fb59f2d)
-]
-coclass AudioReverb26 { interface IXAPO; }
-
-[
- helpstring("XAudio2.6 AudioVolumeMeter Class"),
- threading(both),
- uuid(e48c5a3f-93ef-43bb-a092-2c7ceb946f27)
-]
-coclass AudioVolumeMeter26 { interface IXAPO; }
diff --git a/dlls/xaudio2_6/xaudio_dll.c b/dlls/xaudio2_6/xaudio_dll.c
deleted file mode 100644
index e55861c..0000000
--- a/dlls/xaudio2_6/xaudio_dll.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 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 <stdarg.h>
-#include "windef.h"
-#include "winbase.h"
-#include "objbase.h"
-#include "rpcproxy.h"
-
-static HINSTANCE instance;
-
-BOOL WINAPI DllMain(HINSTANCE hinstance, DWORD reason, LPVOID reserved)
-{
- switch (reason)
- {
- case DLL_WINE_PREATTACH:
- return FALSE; /* prefer native version */
- case DLL_PROCESS_ATTACH:
- instance = hinstance;
- DisableThreadLibraryCalls(hinstance);
- break;
- }
- return TRUE;
-}
-
-HRESULT WINAPI DllCanUnloadNow(void)
-{
- return S_FALSE;
-}
-
-HRESULT WINAPI DllRegisterServer(void)
-{
- return __wine_register_resources(instance);
-}
-
-HRESULT WINAPI DllUnregisterServer(void)
-{
- return __wine_unregister_resources(instance);
-}
diff --git a/dlls/xaudio2_7/xaudio_classes.idl b/dlls/xaudio2_7/xaudio_classes.idl
index d7ddb42..0dc2104 100644
--- a/dlls/xaudio2_7/xaudio_classes.idl
+++ b/dlls/xaudio2_7/xaudio_classes.idl
@@ -119,3 +119,26 @@ coclass FXEQ14 { interface IXAPO; }
]
coclass FXEQ15 { interface IXAPO; }
#endif /* XAUDIO2_VER == 7 */
+
+#if XAUDIO2_VER == 6
+[
+ helpstring("XAudio2.6 Class"),
+ threading(both),
+ uuid(3eda9b49-2085-498b-9bb2-39a6778493de)
+]
+coclass XAudio26 { interface IXAudio27; }
+
+[
+ helpstring("XAudio2.6 AudioReverb Class"),
+ threading(both),
+ uuid(cecec95a-d894-491a-bee3-5e106fb59f2d)
+]
+coclass AudioReverb26 { interface IXAPO; }
+
+[
+ helpstring("XAudio2.6 AudioVolumeMeter Class"),
+ threading(both),
+ uuid(e48c5a3f-93ef-43bb-a092-2c7ceb946f27)
+]
+coclass AudioVolumeMeter26 { interface IXAPO; }
+#endif /* XAUDIO2_VER == 6 */
Module: wine
Branch: master
Commit: 4ad4c61100c06cbd9eb6587c543ceac94b932621
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4ad4c61100c06cbd9eb6587c5…
Author: Andrew Eikum <aeikum(a)codeweavers.com>
Date: Mon Jan 11 13:52:02 2016 -0600
xaudio2: Explicitly version the 2.7 coclasses.
In versions 2.8 and later, no coclasses are provided by the API, so we
should version the old ones to make it clear they're out of date.
Signed-off-by: Andrew Eikum <aeikum(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
dlls/xaudio2_7/tests/xaudio2.c | 10 +++++-----
dlls/xaudio2_7/xapofx.c | 4 ++--
dlls/xaudio2_7/xaudio_classes.idl | 2 +-
dlls/xaudio2_7/xaudio_dll.c | 40 +++++++++++++++++++--------------------
dlls/xaudio2_8/xaudio_dll.c | 6 +++---
include/xapofx.h | 8 ++++----
include/xaudio2.idl | 14 +++++++-------
include/xaudio2fx.idl | 18 +++++++++---------
8 files changed, 51 insertions(+), 51 deletions(-)
Diff: http://source.winehq.org/git/wine.git/?a=commitdiff;h=4ad4c61100c06cbd9eb65…