Date: Mon, 23 Feb 2004 23:29:20 -0500
authorSam Lantinga <slouken@libsdl.org>
Fri, 27 Jan 2006 05:36:47 +0000
changeset 1274 4726fa79ede1
parent 1273 05d5d36b71f4
child 1275 4aa02c3e5e13
Date: Mon, 23 Feb 2004 23:29:20 -0500 From: "Brian Kropf" Subject: [SDL] Windx5 I was wondering if I could suggest a change for (at least) the mingw/msys build. Every time I do the ./configure, make on a fresh download it crashes when it tries to find directx.h for the audio portion of the build In file included from SDL_dx5audio.c:37: SDL_dx5audio.h:31:21: directx.h: No such file or directory In file included from SDL_dx5audio.c:37: I usually copy the directx.h from the video/windx5 into the audio/windx5 and things go smoothly after that; just thought I'd suggest it for making future builds go smoothly. ;)
src/audio/windx5/Makefile.am
src/audio/windx5/directx.h
--- a/src/audio/windx5/Makefile.am	Thu Jan 26 08:45:51 2006 +0000
+++ b/src/audio/windx5/Makefile.am	Fri Jan 27 05:36:47 2006 +0000
@@ -6,4 +6,5 @@
 
 # The SDL audio driver sources
 SRCS =	SDL_dx5audio.c	\
-	SDL_dx5audio.h
+	SDL_dx5audio.h	\
+	directx.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/audio/windx5/directx.h	Fri Jan 27 05:36:47 2006 +0000
@@ -0,0 +1,83 @@
+
+#ifndef _directx_h
+#define _directx_h
+
+/* Include all of the DirectX 5.0 headers and adds any necessary tweaks */
+
+#include <windows.h>
+#include <mmsystem.h>
+#ifndef WIN32
+#define WIN32
+#endif
+#undef  WINNT
+
+/* Far pointers don't exist in 32-bit code */
+#ifndef FAR
+#define FAR
+#endif
+
+/* Error codes not yet included in Win32 API header files */
+#ifndef MAKE_HRESULT
+#define MAKE_HRESULT(sev,fac,code) \
+	((HRESULT)(((unsigned long)(sev)<<31) | ((unsigned long)(fac)<<16) | ((unsigned long)(code))))
+#endif
+
+#ifndef S_OK
+#define S_OK		(HRESULT)0x00000000L
+#endif
+
+#ifndef SUCCEEDED
+#define SUCCEEDED(x)	((HRESULT)(x) >= 0)
+#endif
+#ifndef FAILED
+#define FAILED(x)	((HRESULT)(x)<0)
+#endif
+
+#ifndef E_FAIL
+#define E_FAIL		(HRESULT)0x80000008L
+#endif
+#ifndef E_NOINTERFACE
+#define E_NOINTERFACE	(HRESULT)0x80004002L
+#endif
+#ifndef E_OUTOFMEMORY
+#define E_OUTOFMEMORY	(HRESULT)0x8007000EL
+#endif
+#ifndef E_INVALIDARG
+#define E_INVALIDARG	(HRESULT)0x80070057L
+#endif
+#ifndef E_NOTIMPL
+#define E_NOTIMPL	(HRESULT)0x80004001L
+#endif
+#ifndef REGDB_E_CLASSNOTREG
+#define REGDB_E_CLASSNOTREG	(HRESULT)0x80040154L
+#endif
+
+/* Severity codes */
+#ifndef SEVERITY_ERROR
+#define SEVERITY_ERROR	1
+#endif
+
+/* Error facility codes */
+#ifndef FACILITY_WIN32
+#define FACILITY_WIN32	7
+#endif
+
+#ifndef FIELD_OFFSET
+#define FIELD_OFFSET(type, field)    ((LONG)&(((type *)0)->field))
+#endif
+
+/* DirectX headers (if it isn't included, I haven't tested it yet)
+ */
+/* We need these defines to mark what version of DirectX API we use */
+#define DIRECTDRAW_VERSION  0x0700
+#define DIRECTSOUND_VERSION 0x0500
+#define DIRECTINPUT_VERSION 0x0500
+
+#ifdef __GNUC__
+#define NONAMELESSUNION
+#endif
+#include <ddraw.h>
+#include <dsound.h>
+#include <dinput.h>
+
+#endif /* _directx_h */