[mingw-crt/f20] Backport some commits which are required by wine-gecko

Erik van Pienbroek epienbro at fedoraproject.org
Thu Jan 1 11:47:27 UTC 2015


commit 18dca5ee2b899fef7cfc698695e74a15daf218b6
Author: Erik van Pienbroek <epienbro at fedoraproject.org>
Date:   Thu Jan 1 12:47:07 2015 +0100

    Backport some commits which are required by wine-gecko
    
    - Add 32bit wintrust.a import library as it's needed by mingw-wine-gecko
    - Make sure CLSID_InternetSecurityManager is in libuuid.a as it's needed by mingw-wine-gecko

 0001-Added-32-bit-version-of-libwintrust.a.patch |  171 ++++++++++++++++++++++
 mingw-crt.spec                                   |   18 ++-
 2 files changed, 188 insertions(+), 1 deletions(-)
---
diff --git a/0001-Added-32-bit-version-of-libwintrust.a.patch b/0001-Added-32-bit-version-of-libwintrust.a.patch
new file mode 100644
index 0000000..fb81a78
--- /dev/null
+++ b/0001-Added-32-bit-version-of-libwintrust.a.patch
@@ -0,0 +1,171 @@
+From 459e8d4f33254e39a59680bc06b3dca78c5c6b1f Mon Sep 17 00:00:00 2001
+From: Erik van Pienbroek <epienbro at fedoraproject.org>
+Date: Wed, 31 Dec 2014 22:59:14 +0100
+Subject: [PATCH] Added 32-bit version of libwintrust.a
+
+This is partial cherry-pick of commit 2bbc229056418ef6c7ae6e2530ee68fe4e518e15
+---
+ mingw-w64-crt/Makefile.in        |  34 +++++-----
+ mingw-w64-crt/lib32/Makefile.am  |   1 +
+ mingw-w64-crt/lib32/wintrust.def | 137 +++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 155 insertions(+), 17 deletions(-)
+ create mode 100644 mingw-w64-crt/lib32/wintrust.def
+
+diff --git a/mingw-w64-crt/lib32/Makefile.am b/mingw-w64-crt/lib32/Makefile.am
+index cf300d7..b548f36 100644
+--- a/mingw-w64-crt/lib32/Makefile.am
++++ b/mingw-w64-crt/lib32/Makefile.am
+@@ -291,6 +291,7 @@ lib32_DATA += %reldir%/libwinmm.a
+ lib32_DATA += %reldir%/libwinscard.a
+ lib32_DATA += %reldir%/libwinspool.a
+ lib32_DATA += %reldir%/libwinstrm.a
++lib32_DATA += %reldir%/libwintrust.a
+ lib32_DATA += %reldir%/libwinusb.a
+ lib32_DATA += %reldir%/libwkscli.a
+ lib32_DATA += %reldir%/libwlanapi.a
+diff --git a/mingw-w64-crt/lib32/wintrust.def b/mingw-w64-crt/lib32/wintrust.def
+new file mode 100644
+index 0000000..fbff4e7
+--- /dev/null
++++ b/mingw-w64-crt/lib32/wintrust.def
+@@ -0,0 +1,137 @@
++;
++; Definition file of WINTRUST.dll
++; Automatic generated by gendef
++; written by Kai Tietz 2008
++;
++LIBRARY "WINTRUST.dll"
++EXPORTS
++CryptCATVerifyMember at 12
++CryptSIPGetInfo at 4
++CryptSIPGetRegWorkingFlags at 4
++GenericChainCertificateTrust at 4
++GenericChainFinalProv at 4
++HTTPSCertificateTrust at 4
++SoftpubDefCertInit at 4
++SoftpubFreeDefUsageCallData at 8
++SoftpubLoadDefUsageCallData at 8
++WTHelperCertFindIssuerCertificate at 28
++AddPersonalTrustDBPages at 12
++CatalogCompactHashDatabase at 16
++CryptCATAdminAcquireContext at 12
++CryptCATAdminAddCatalog at 16
++CryptCATAdminCalcHashFromFileHandle at 16
++CryptCATAdminEnumCatalogFromHash at 20
++CryptCATAdminPauseServiceForBackup at 8
++CryptCATAdminReleaseCatalogContext at 12
++CryptCATAdminReleaseContext at 8
++CryptCATAdminRemoveCatalog at 12
++CryptCATAdminResolveCatalogPath at 16
++CryptCATAllocSortedMemberInfo at 8
++CryptCATCDFClose at 4
++CryptCATCDFEnumAttributes at 16
++CryptCATCDFEnumAttributesWithCDFTag at 20
++CryptCATCDFEnumCatAttributes at 12
++CryptCATCDFEnumMembers at 12
++CryptCATCDFEnumMembersByCDFTag at 16
++CryptCATCDFEnumMembersByCDFTagEx at 24
++CryptCATCDFOpen at 8
++CryptCATCatalogInfoFromContext at 12
++CryptCATClose at 4
++CryptCATEnumerateAttr at 12
++CryptCATEnumerateCatAttr at 8
++CryptCATEnumerateMember at 8
++CryptCATFreeSortedMemberInfo at 8
++CryptCATGetAttrInfo at 12
++CryptCATGetCatAttrInfo at 8
++CryptCATGetMemberInfo at 8
++CryptCATHandleFromStore at 4
++CryptCATOpen at 20
++CryptCATPersistStore at 4
++CryptCATPutAttrInfo at 24
++CryptCATPutCatAttrInfo at 20
++CryptCATPutMemberInfo at 28
++CryptCATStoreFromHandle at 4
++CryptSIPCreateIndirectData at 12
++CryptSIPGetSignedDataMsg at 20
++CryptSIPPutSignedDataMsg at 20
++CryptSIPRemoveSignedDataMsg at 8
++CryptSIPVerifyIndirectData at 8
++DllRegisterServer
++DllUnregisterServer
++DriverCleanupPolicy at 4
++DriverFinalPolicy at 4
++DriverInitializePolicy at 4
++FindCertsByIssuer at 28
++HTTPSFinalProv at 4
++IsCatalogFile at 8
++MsCatConstructHashTag at 12
++MsCatFreeHashTag at 4
++OfficeCleanupPolicy at 4
++OfficeInitializePolicy at 4
++OpenPersonalTrustDBDialog at 4
++OpenPersonalTrustDBDialogEx at 12
++SoftpubAuthenticode at 4
++SoftpubCheckCert at 16
++SoftpubCleanup at 4
++SoftpubDllRegisterServer
++SoftpubDllUnregisterServer
++SoftpubDumpStructure at 4
++SoftpubInitialize at 4
++SoftpubLoadMessage at 4
++SoftpubLoadSignature at 4
++TrustDecode at 36
++TrustFindIssuerCertificate at 32
++TrustFreeDecode at 8
++TrustIsCertificateSelfSigned at 12
++TrustOpenStores at 16
++WTHelperCertCheckValidSignature at 4
++WTHelperCertIsSelfSigned at 8
++WTHelperCheckCertUsage at 8
++WTHelperGetAgencyInfo at 12
++WTHelperGetFileHandle at 4
++WTHelperGetFileHash at 24
++WTHelperGetFileName at 4
++WTHelperGetKnownUsages at 8
++WTHelperGetProvCertFromChain at 8
++WTHelperGetProvPrivateDataFromChain at 8
++WTHelperGetProvSignerFromChain at 16
++WTHelperIsInRootStore at 8
++WTHelperOpenKnownStores at 4
++WTHelperProvDataFromStateData at 4
++WVTAsn1CatMemberInfoDecode at 28
++WVTAsn1CatMemberInfoEncode at 20
++WVTAsn1CatNameValueDecode at 28
++WVTAsn1CatNameValueEncode at 20
++WVTAsn1SpcFinancialCriteriaInfoDecode at 28
++WVTAsn1SpcFinancialCriteriaInfoEncode at 20
++WVTAsn1SpcIndirectDataContentDecode at 28
++WVTAsn1SpcIndirectDataContentEncode at 20
++WVTAsn1SpcLinkDecode at 28
++WVTAsn1SpcLinkEncode at 20
++WVTAsn1SpcMinimalCriteriaInfoDecode at 28
++WVTAsn1SpcMinimalCriteriaInfoEncode at 20
++WVTAsn1SpcPeImageDataDecode at 28
++WVTAsn1SpcPeImageDataEncode at 20
++WVTAsn1SpcSigInfoDecode at 28
++WVTAsn1SpcSigInfoEncode at 20
++WVTAsn1SpcSpAgencyInfoDecode at 28
++WVTAsn1SpcSpAgencyInfoEncode at 20
++WVTAsn1SpcSpOpusInfoDecode at 28
++WVTAsn1SpcSpOpusInfoEncode at 20
++WVTAsn1SpcStatementTypeDecode at 28
++WVTAsn1SpcStatementTypeEncode at 20
++WinVerifyTrust at 12
++WinVerifyTrustEx at 12
++WintrustAddActionID at 12
++WintrustAddDefaultForUsage at 8
++WintrustCertificateTrust at 4
++WintrustGetDefaultForUsage at 12
++WintrustGetRegPolicyFlags at 4
++WintrustLoadFunctionPointers at 8
++WintrustRemoveActionID at 4
++WintrustSetDefaultIncludePEPageHashes at 4
++WintrustSetRegPolicyFlags at 4
++mscat32DllRegisterServer
++mscat32DllUnregisterServer
++mssip32DllRegisterServer
++mssip32DllUnregisterServer
+-- 
+2.1.0
+
diff --git a/mingw-crt.spec b/mingw-crt.spec
index 422987d..97a1537 100644
--- a/mingw-crt.spec
+++ b/mingw-crt.spec
@@ -6,7 +6,7 @@
 
 Name:           mingw-crt
 Version:        3.3.0
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        MinGW Windows cross-compiler runtime
 
 License:        Public Domain and ZPLv2.1
@@ -35,12 +35,20 @@ BuildRequires:  mingw64-binutils
 BuildRequires:  mingw64-headers
 BuildRequires:  mingw64-gcc
 
+BuildRequires:  autoconf automake libtool
+
 # Fix Windows XP compatibility issues mentioned at
 # https://bugzilla.redhat.com/show_bug.cgi?id=1054481
 # Patches are already upstreamed
 Patch0:         0001-Add-_gmtime32-and-_localtime32-to-lib64-msvcrt.def.patch
 Patch2:         0002-Remove-rand_s-and-vsprintf_s-from-msvcrt.def.in.patch
 
+# Add 32bit wintrust.a import library as it's needed by mingw-wine-gecko
+Patch3:         0001-Added-32-bit-version-of-libwintrust.a.patch
+
+# Make sure CLSID_InternetSecurityManager (required by mingw-wine-gecko) is in libuuid.a
+Patch4:         0002-uuid.c-Added-missing-urlmon-CLSIDs-and-get-rid-of-du.patch
+
 
 %description
 MinGW Windows cross-compiler runtime, base libraries.
@@ -78,6 +86,10 @@ unzip %{S:0}
 
 %patch0 -p1
 %patch2 -p1
+%patch3 -p1
+%patch4 -p1
+
+autoreconf -i --force
 
 
 %build
@@ -108,6 +120,10 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_includedir}/*.c
 
 
 %changelog
+* Wed Dec 31 2014 Erik van Pienbroek <epienbro at fedoraproject.org> - 3.3.0-2
+- Add 32bit wintrust.a import library as it's needed by mingw-wine-gecko
+- Make sure CLSID_InternetSecurityManager is in libuuid.a as it's needed by mingw-wine-gecko
+
 * Fri Dec  5 2014 Erik van Pienbroek <epienbro at fedoraproject.org> - 3.3.0-1
 - Update to 3.3.0
 


More information about the scm-commits mailing list