[MPlayer-users] Re: Compilation issue with current CVS
adland
adland123 at yahoo.com
Wed Apr 28 18:59:35 CEST 2004
yes this is known
see other posts.
this single error is easy to fix but the other subsequent ones requires more
work.
I have gotten several broken files to compile but I am still working on it.
you will have trouble with these files.
libmpcodecs/ad_acm.c
libmpcodecs/ad_qtaudio.c
libmpcodecs/ad_realaud.c
libmpcodecs/vd_realvid.c
libmpcodecs/vd_vfw.c
and possibly more ??? Im working on vd_vfw.c now
I made a file called ms_hdr.h which include this file in the c source
for files above.
#include "ms_hdr.h"
before include of ad_internal.h or vd_internal.h
for vd_vfw.c I copied in the vfw.h file from loader./wine/vfw.h and include it
from local dir not wine/vfw.h.
I dont plan to include wine/driver.h file either.
this is just a quick hack and I have only 3 hours sleep
Maybe it will help you but it is incomplete and possibly wrong.
ms_hdr.h
#if !defined(WAVE_FORMAT_PCM)
#define WAVE_FORMAT_PCM 1
#endif
#ifdef _EGCS_
#define __stdcall
#endif
#ifdef __WINE__
# define DECL_WINELIB_TYPE_AW(type) /* nothing */
#else /* __WINE__ */
# define DECL_WINELIB_TYPE_AW(type) typedef WINELIB_NAME_AW(type) type;
#endif /* __WINE__ */
typedef unsigned int DWORD;
typedef unsigned char *LPBYTE;
typedef const char *LPCSTR;
typedef unsigned short WCHAR;
typedef int WIN_BOOL;
typedef int INT;
typedef unsigned int UINT;
typedef long LONG;
typedef LONG LPARAM;
typedef LONG LRESULT;
typedef LONG HRESULT;
#ifdef STRICT
typedef void * HANDLE;
#else
typedef unsigned int HANDLE;
#endif
#ifdef STRICT
#define DECLARE_HANDLE(a) \
typedef struct a##__ { int unused; } *a; \
typedef a *P##a; \
typedef a *LP##a
#else /*STRICT*/
#define DECLARE_HANDLE(a) \
typedef HANDLE a; \
typedef a *P##a; \
typedef a *LP##a
#endif /*STRICT*/
DECLARE_HANDLE(HINSTANCE);
DECLARE_HANDLE(HACMSTREAM);
DECLARE_HANDLE(HACMDRIVER);
DECLARE_HANDLE(HIC);
DECLARE_HANDLE(HPALETTE);
DECLARE_HANDLE(HWND);
DECLARE_HANDLE(HDC);
DECLARE_HANDLE(HDRVR);
typedef HINSTANCE HMODULE;
/* Calling conventions definitions */
#ifdef __i386__
# if defined(__GNUC__) && ((__GNUC__ > 2) || ((__GNUC__ == 2) &&
(__GNUC_MINOR__ >= 7)))
# ifndef _EGCS_
#define __stdcall __attribute__((__stdcall__))
#define __cdecl __attribute__((__cdecl__))
# define __RESTORE_ES __asm__ __volatile__("pushl %ds\n\tpopl %es")
# endif
# else
//# error You need gcc >= 2.7 to build Wine on a 386
# endif
#else
# define __stdcall
# define __cdecl
# define __RESTORE_ES
#endif
#define CALLBACK __stdcall
#define WINAPI __stdcall
#if !defined(__CYGWIN__) && !defined(__MINGW32__)
#define _stdcall __stdcall
#endif
typedef LRESULT CALLBACK (*FARPROC)();
typedef LRESULT CALLBACK (*DRIVERPROC)(DWORD,HDRVR,UINT,LPARAM,LPARAM);
typedef struct _ACMSTREAMHEADER
{
DWORD cbStruct;
DWORD fdwStatus;
DWORD dwUser;
LPBYTE pbSrc;
DWORD cbSrcLength;
DWORD cbSrcLengthUsed;
DWORD dwSrcUser;
LPBYTE pbDst;
DWORD cbDstLength;
DWORD cbDstLengthUsed;
DWORD dwDstUser;
DWORD dwReservedDriver[10];
} ACMSTREAMHEADER16, *NPACMSTREAMHEADER16, *LPACMSTREAMHEADER16,
ACMSTREAMHEADER, *PACMSTREAMHEADER;
#define ACMERR_BASE 512
#define ACMERR_NOTPOSSIBLE (ACMERR_BASE + 0)
#define ACMERR_BUSY (ACMERR_BASE + 1)
#define ACMERR_UNPREPARED (ACMERR_BASE + 2)
#define ACMERR_CANCELED (ACMERR_BASE + 3)
#define ACM_STREAMSIZEF_SOURCE 0x00000000L
#define ACM_STREAMSIZEF_DESTINATION 0x00000001L
good luck
More information about the MPlayer-users
mailing list