[MPlayer-cvslog] r30169 - in trunk: loader/wine/basetsd.h loader/wine/winnt.h stream/tvi_dshow.c stream/tvi_dshow.h

reimar subversion at mplayerhq.hu
Sat Jan 2 18:41:12 CET 2010


Author: reimar
Date: Sat Jan  2 18:41:11 2010
New Revision: 30169

Log:
Several hacks to fix compilation of tvi_dshow on MinGW64.

Modified:
   trunk/loader/wine/basetsd.h
   trunk/loader/wine/winnt.h
   trunk/stream/tvi_dshow.c
   trunk/stream/tvi_dshow.h

Modified: trunk/loader/wine/basetsd.h
==============================================================================
--- trunk/loader/wine/basetsd.h	Sat Jan  2 17:55:41 2010	(r30168)
+++ trunk/loader/wine/basetsd.h	Sat Jan  2 18:41:11 2010	(r30169)
@@ -72,8 +72,8 @@ typedef unsigned __int64 __uint64;
 
 #if defined(_WIN64)
 
-typedef __uint32 __ptr32;
-typedef void    *__ptr64;
+//typedef __uint32 __ptr32;
+//typedef void    *__ptr64;
 
 #else /* FIXME: defined(_WIN32) */
 

Modified: trunk/loader/wine/winnt.h
==============================================================================
--- trunk/loader/wine/winnt.h	Sat Jan  2 17:55:41 2010	(r30168)
+++ trunk/loader/wine/winnt.h	Sat Jan  2 18:41:11 2010	(r30169)
@@ -620,7 +620,8 @@ typedef struct CONTEXT
 #endif  /* __sparc__ */
 
 #if !defined(CONTEXT_FULL) && !defined(RC_INVOKED)
-#error You need to define a CONTEXT for your CPU
+#warning You need to define a CONTEXT for your CPU
+typedef void CONTEXT;
 #endif
 
 typedef CONTEXT *PCONTEXT;
@@ -747,7 +748,7 @@ typedef HANDLE *PHANDLE;
 #endif /* __sparc__ */
 
 #ifndef DEFINE_REGS_ENTRYPOINT_0
-#error You need to define DEFINE_REGS_ENTRYPOINT macros for your CPU
+#warning You need to define DEFINE_REGS_ENTRYPOINT macros for your CPU
 #endif
 
 #ifdef __i386__
@@ -758,7 +759,7 @@ typedef HANDLE *PHANDLE;
 #endif
 
 #if !defined(GET_IP) && !defined(RC_INVOKED)
-# error You must define GET_IP for this CPU
+#warning You must define GET_IP for this CPU
 #endif
 
 /*

Modified: trunk/stream/tvi_dshow.c
==============================================================================
--- trunk/stream/tvi_dshow.c	Sat Jan  2 17:55:41 2010	(r30168)
+++ trunk/stream/tvi_dshow.c	Sat Jan  2 18:41:11 2010	(r30169)
@@ -89,6 +89,11 @@
 
 #include "tvi_dshow.h"
 
+#ifndef STDCALL
+// mingw64 needs this
+#define STDCALL __stdcall
+#endif
+
 static tvi_handle_t *tvi_init_dshow(tv_param_t* tv_param);
 
 /*

Modified: trunk/stream/tvi_dshow.h
==============================================================================
--- trunk/stream/tvi_dshow.h	Sat Jan  2 17:55:41 2010	(r30168)
+++ trunk/stream/tvi_dshow.h	Sat Jan  2 18:41:11 2010	(r30169)
@@ -434,6 +434,8 @@ DECLARE_INTERFACE(IAMCrossbar)
     STDMETHOD(get_CrossbarPinInfo) (THIS_ BOOL, long, long *, long *);
 };
 
+#ifndef __IPropertyBag_INTERFACE_DEFINED__
+#define __IPropertyBag_INTERFACE_DEFINED__
 #undef INTERFACE
 #define INTERFACE IPropertyBag
 DECLARE_INTERFACE(IPropertyBag)
@@ -444,6 +446,7 @@ DECLARE_INTERFACE(IPropertyBag)
     STDMETHOD(Read) (THIS_ LPCOLESTR, LPVARIANT, LPERRORLOG);
     STDMETHOD(Write) (THIS_ LPCOLESTR, LPVARIANT);
 };
+#endif
 
 #undef INTERFACE
 #define INTERFACE IAMStreamConfig
@@ -678,6 +681,19 @@ DECLARE_INTERFACE(IVideoWindow)
     STDMETHOD(IsCursorHidden) (THIS_ long *);
 };
 
+#ifndef DECLARE_ENUMERATOR_
+#define DECLARE_ENUMERATOR_(I,T) \
+    DECLARE_INTERFACE_(I,IUnknown) \
+    { \
+        STDMETHOD(QueryInterface)(I*, REFIID,PVOID*); \
+        STDMETHOD_(ULONG,AddRef)(I*); \
+        STDMETHOD_(ULONG,Release)(I*); \
+        STDMETHOD(Next)(I*, ULONG,T*,ULONG*); \
+        STDMETHOD(Skip)(I*, ULONG); \
+        STDMETHOD(Reset)(I*); \
+        STDMETHOD(Clone)(I*, I**); \
+    }
+#endif
 DECLARE_ENUMERATOR_(IEnumFilters, LPBASEFILTER);
 DECLARE_ENUMERATOR_(IEnumPins, LPPIN);
 DECLARE_ENUMERATOR_(IEnumMediaTypes, AM_MEDIA_TYPE *);


More information about the MPlayer-cvslog mailing list