diff --git a/mingw-w64-headers-1.0b.20100730-uow.patch b/mingw-w64-headers-1.0b.20100730-uow.patch new file mode 100644 index 0000000..4f55440 --- /dev/null +++ b/mingw-w64-headers-1.0b.20100730-uow.patch @@ -0,0 +1,96 @@ +diff -urBwbE mingw-w64-headers-1.0b.20100730/ddk/include/ddk/wdm.h mingw-w64-headers-1.0b.20100730/ddk/include/ddk/wdm.h +--- mingw-w64-headers-1.0b.20100730/ddk/include/ddk/wdm.h 2010-07-27 11:14:13.000000000 +0200 ++++ mingw-w64-headers-1.0b.20100730/ddk/include/ddk/wdm.h 2010-08-14 15:36:21.000000000 +0200 +@@ -56,7 +56,11 @@ + #endif /* _MAC */ + + #ifndef _KTMTYPES_ ++#ifdef _MSC_VER + typedef GUID UOW, *PUOW; ++#else ++typedef GUID *PUOW; ++#endif + #endif + + typedef GUID *PGUID; +@@ -14867,10 +14871,10 @@ + } ENLISTMENT_INFORMATION_CLASS; + + typedef struct _TRANSACTION_LIST_ENTRY { +-#if defined(__cplusplus) +- ::UOW UOW; +-#else ++#ifdef _MSC_VER + UOW UOW; ++#else ++ GUID UOW; + #endif + } TRANSACTION_LIST_ENTRY, *PTRANSACTION_LIST_ENTRY; + +diff -urBwbE mingw-w64-headers-1.0b.20100730/include/ktmtypes.h mingw-w64-headers-1.0b.20100730/include/ktmtypes.h +--- mingw-w64-headers-1.0b.20100730/include/ktmtypes.h 2010-07-08 11:25:17.000000000 +0200 ++++ mingw-w64-headers-1.0b.20100730/include/ktmtypes.h 2010-08-14 15:43:00.000000000 +0200 +@@ -92,7 +92,11 @@ + #define MAX_RESOURCEMANAGER_DESCRIPTION_LENGTH 64 + + #ifndef _WDMDDK_ ++#ifdef _MSC_VER + typedef GUID UOW, *PUOW; ++#else ++typedef GUID *PUOW; ++#endif + #endif + + typedef GUID CRM_PROTOCOL_ID, *PCRM_PROTOCOL_ID; +@@ -108,10 +112,10 @@ + + typedef struct _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT { + GUID EnlistmentId; +-#if defined(__cplusplus) +- ::UOW UOW; +-#else ++#ifdef _MSC_VER + UOW UOW; ++#else ++ GUID UOW; + #endif + } TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT, *PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT; + +@@ -126,7 +130,11 @@ + + typedef struct _TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT { + ULONG PropagationCookie; ++#ifdef _MSC_VER ++ UOW UOW; ++#else + GUID UOW; ++#endif + GUID TmIdentity; + ULONG BufferLength; + } TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT, *PTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT, +@@ -134,7 +142,11 @@ + + typedef struct _TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT { + ULONG MarshalCookie; ++#ifdef _MSC_VER ++ UOW UOW; ++#else + GUID UOW; ++#endif + } TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT, *PTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT; + + typedef struct _KCRM_MARSHAL_HEADER { +@@ -145,10 +157,10 @@ + } KCRM_MARSHAL_HEADER, *PKCRM_MARSHAL_HEADER, *RESTRICTED_POINTER PRKCRM_MARSHAL_HEADER; + + typedef struct _KCRM_TRANSACTION_BLOB { +-#if defined(__cplusplus) +- ::UOW UOW; +-#else ++#ifdef _MSC_VER + UOW UOW; ++#else ++ GUID UOW; + #endif + GUID TmIdentity; + ULONG IsolationLevel; diff --git a/mingw32-headers.spec b/mingw32-headers.spec index cc693ed..6bddbb6 100644 --- a/mingw32-headers.spec +++ b/mingw32-headers.spec @@ -13,6 +13,7 @@ Source0: mingw-w64-headers-%{version}.tar.bz2 Source1000: %{name}-rpmlintrc Patch0: mingw-w64-headers-1.0b.20100730-winsock.patch Patch1: mingw-w64-headers-sigset_t.patch +Patch2: mingw-w64-headers-1.0b.20100730-uow.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -29,6 +30,7 @@ MinGW Win64 headers. %setup -q -n mingw-w64-headers-%{version} %patch0 -p1 %patch1 -p0 +%patch2 -p1 %build ./configure --host=%{_mingw32_target} \