- diff -urN libEMF-1.0.3/include/libEMF/wine/winbase.h libEMF-1.0.3.new/include/libEMF/wine/winbase.h
- --- libEMF-1.0.3/include/libEMF/wine/winbase.h 2004-07-29 08:20:38.000000000 +0200
- +++ libEMF-1.0.3.new/include/libEMF/wine/winbase.h 2009-05-15 19:56:25.774725477 +0200
- @@ -1802,6 +1802,7 @@
- VOID WINAPI SetLastError(DWORD);
- #endif /* __i386__ && __GNUC__ */
- +#if 0
- /* FIXME: should handle platforms where sizeof(void*) != sizeof(long) */
- static inline PVOID WINAPI InterlockedCompareExchangePointer( PVOID *dest, PVOID xchg, PVOID compare )
- {
- @@ -1812,6 +1813,7 @@
- {
- return (PVOID)InterlockedExchange( (PLONG)dest, (LONG)val );
- }
- +#endif
- #ifdef __WINE__
- #define GetCurrentProcess() ((HANDLE)0xffffffff)
- diff -urN libEMF-1.0.3/include/libEMF/wine/winnt.h libEMF-1.0.3.new/include/libEMF/wine/winnt.h
- --- libEMF-1.0.3/include/libEMF/wine/winnt.h 2005-08-07 17:50:12.000000000 +0200
- +++ libEMF-1.0.3.new/include/libEMF/wine/winnt.h 2009-05-15 18:50:24.735710711 +0200
- @@ -29,10 +29,14 @@
- /* Architecture dependent settings. */
- /* These are hardcoded to avoid dependencies on config.h in Winelib apps. */
- -#if defined(__i386__)
- +#if defined(__i386__) || defined(__x86_64__)
- # undef WORDS_BIGENDIAN
- # undef BITFIELDS_BIGENDIAN
- # define ALLOW_UNALIGNED_ACCESS
- +#elif defined(__alpha__)
- +# undef WORDS_BIGENDIAN
- +# undef BITFIELDS_BIGENDIAN
- +# undef ALLOW_UNALIGNED_ACCESS
- #elif defined(__sparc__)
- # define WORDS_BIGENDIAN
- # define BITFIELDS_BIGENDIAN
- @@ -222,8 +226,13 @@
- typedef unsigned short WORD, *PWORD, *LPWORD;
- typedef int INT, *PINT, *LPINT;
- typedef unsigned int UINT, *PUINT, *LPUINT;
- +#if defined(_LP64) || defined(__alpha__)
- +typedef unsigned int DWORD, *PDWORD, *LPDWORD;
- +typedef unsigned int ULONG, *PULONG, *LPULONG;
- +#else
- typedef unsigned long DWORD, *PDWORD, *LPDWORD;
- typedef unsigned long ULONG, *PULONG, *LPULONG;
- +#endif
- typedef float FLOAT, *PFLOAT, *LPFLOAT;
- typedef double DOUBLE, *PDOUBLE, *LPDOUBLE;
- typedef double DATE;
- @@ -263,7 +272,11 @@
- typedef BYTE BOOLEAN, *PBOOLEAN;
- typedef char CHAR, *PCHAR;
- typedef short SHORT, *PSHORT;
- +#if defined(_LP64) || defined(__alpha__)
- +typedef int LONG, *PLONG, *LPLONG;
- +#else
- typedef long LONG, *PLONG, *LPLONG;
- +#endif
- /* Some systems might have wchar_t, but we really need 16 bit characters */
- #ifndef WINE_WCHAR_DEFINED
- @@ -652,6 +665,11 @@
- #endif /* __i386__ */
- +#ifdef __x86_64__
- +#define CONTEXT_FULL 1
- +typedef struct _CONTEXT CONTEXT;
- +#endif
- +
- /* Alpha context definitions */
- #ifdef _ALPHA_
- diff -urN libEMF-1.0.3/libemf/libemf.h libEMF-1.0.3.new/libemf/libemf.h
- --- libEMF-1.0.3/libemf/libemf.h 2004-11-11 23:33:43.000000000 +0100
- +++ libEMF-1.0.3.new/libemf/libemf.h 2009-05-15 18:50:24.735710711 +0200
- @@ -306,6 +306,7 @@
- fread( &word, sizeof(INT16), 1, fp_ );
- return *this;
- }
- +#if !(defined(_LP64) || defined(__alpha__))
- /*!
- * Output a double word (long) to the stream (swabbed).
- * \param word word (long) to output.
- @@ -374,6 +375,7 @@
- fread( &long_, sizeof(LONG), 1, fp_ );
- return *this;
- }
- +#endif
- /*!
- * Output a (long) int to the stream (swabbed).
- * \param int_ (long) int to output.