From cd58c578fa8c6d4a4bd215009b11dcdbbd99fe22 Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Aug 14 2015 18:44:35 +0000 Subject: Backport more commits which are required to build wine-gecko 2.40 --- diff --git a/commit-21c9cbf b/commit-21c9cbf new file mode 100644 index 0000000..e541df4 --- /dev/null +++ b/commit-21c9cbf @@ -0,0 +1,38 @@ +From 21c9cbf172902f29bf5797e3ebae206ee714b46e Mon Sep 17 00:00:00 2001 +From: Jacek Caban +Date: Mon, 6 Jul 2015 11:56:52 +0200 +Subject: winstring.h: Added extern "C" for functions that need it and removed + version guards. + + +diff --git a/mingw-w64-headers/include/winstring.h b/mingw-w64-headers/include/winstring.h +index c37097c..908923e 100644 +--- a/mingw-w64-headers/include/winstring.h ++++ b/mingw-w64-headers/include/winstring.h +@@ -11,7 +11,9 @@ + #include + #include + +-#if _WIN32_WINNT >= _WIN32_WINNT_WIN8 ++#ifdef __cplusplus ++extern "C" { ++#endif + + void __RPC_USER HSTRING_UserFree(unsigned long *pFlags, HSTRING *ppidl); + +@@ -31,7 +33,9 @@ unsigned long __RPC_USER HSTRING_UserSize64(unsigned long *pFlags, unsigned long + unsigned char* __RPC_USER HSTRING_UserUnmarshal64(unsigned long *pFlags, unsigned char *pBuffer, HSTRING *ppidl); + #endif + +-/* */ ++#ifdef __cplusplus ++} ++#endif + + HRESULT WINAPI WindowsCompareStringOrdinal(HSTRING string1, HSTRING string2, INT32 *result); + +@@ -74,4 +78,3 @@ HRESULT WINAPI WindowsTrimStringEnd(HSTRING string, HSTRING trimString, HSTRING + HRESULT WINAPI WindowsTrimStringStart(HSTRING string, HSTRING trimString, HSTRING *newString); + + #endif +-#endif diff --git a/commit-58b571e b/commit-58b571e new file mode 100644 index 0000000..235b577 --- /dev/null +++ b/commit-58b571e @@ -0,0 +1,366 @@ +From 58b571ec74923c34074bf1ff43d4093c27375312 Mon Sep 17 00:00:00 2001 +From: Jacek Caban +Date: Mon, 20 Jul 2015 18:15:11 +0200 +Subject: Added new wrl.h file and a few its dependency headers. + + +diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am +index f2981de..e0f60fa 100644 +--- a/mingw-w64-headers/Makefile.am ++++ b/mingw-w64-headers/Makefile.am +@@ -5,6 +5,8 @@ secheaddir = $(baseheaddir)/sec_api + secsysheaddir = $(baseheaddir)/sec_api/sys + glheaddir = $(baseheaddir)/GL + gdiplusheaddir = $(baseheaddir)/gdiplus ++wrlheaddir = $(baseheaddir)/wrl ++wrlwrappersheaddir = $(baseheaddir)/wrl/wrappers + mingwhelperheaddir = $(baseheaddir)/psdk_inc + sdksheaddir = $(baseheaddir)/sdks + +@@ -14,6 +16,8 @@ sechead_HEADERS = @SECHEAD_LIST@ + secsyshead_HEADERS = @SECSYSHEAD_LIST@ + glhead_HEADERS = @GLHEAD_LIST@ + gdiplushead_HEADERS = @GDIPLUSHEAD_LIST@ ++wrlhead_HEADERS = @WRLHEAD_LIST@ ++wrlwrappershead_HEADERS = @WRLWRAPPERSHEAD_LIST@ + mingwhelperhead_HEADERS = @MINGWHELPERHEAD_LIST@ + nodist_sdkshead_HEADERS = _mingw_directx.h _mingw_ddk.h + noinst_HEADERS = crt/sdks/_mingw_directx.h.in crt/sdks/_mingw_ddk.h.in +@@ -47,6 +51,8 @@ EXTRA_HEADERS = \ + include/GL/*.h \ + include/psdk_inc/*.h \ + include/gdiplus/*.h \ ++ include/wrl/*.h \ ++ include/wrl/wrappers/*.h \ + crt/*.h \ + crt/*.inl \ + crt/sys/*.h \ +diff --git a/mingw-w64-headers/Makefile.in b/mingw-w64-headers/Makefile.in +index d6d3cee..c628b25 100644 +--- a/mingw-w64-headers/Makefile.in ++++ b/mingw-w64-headers/Makefile.in +@@ -61,7 +61,8 @@ DIST_COMMON = $(am__configure_deps) $(basehead_HEADERS) \ + $(top_srcdir)/build-aux/config.sub \ + $(top_srcdir)/build-aux/install-sh \ + $(top_srcdir)/build-aux/missing $(top_srcdir)/configure \ +- $(top_srcdir)/crt/_mingw.h.in ChangeLog build-aux/config.guess \ ++ $(top_srcdir)/crt/_mingw.h.in $(wrlhead_HEADERS) \ ++ $(wrlwrappershead_HEADERS) ChangeLog build-aux/config.guess \ + build-aux/config.sub build-aux/install-sh build-aux/missing + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/configure.ac +@@ -112,12 +113,14 @@ am__installdirs = "$(DESTDIR)$(baseheaddir)" "$(DESTDIR)$(ddkheaddir)" \ + "$(DESTDIR)$(glheaddir)" "$(DESTDIR)$(idlheaddir)" \ + "$(DESTDIR)$(mingwhelperheaddir)" "$(DESTDIR)$(sdksheaddir)" \ + "$(DESTDIR)$(secheaddir)" "$(DESTDIR)$(secsysheaddir)" \ +- "$(DESTDIR)$(sysheaddir)" ++ "$(DESTDIR)$(sysheaddir)" "$(DESTDIR)$(wrlheaddir)" \ ++ "$(DESTDIR)$(wrlwrappersheaddir)" + HEADERS = $(basehead_HEADERS) $(ddkhead_HEADERS) $(dxhead_HEADERS) \ + $(gdiplushead_HEADERS) $(glhead_HEADERS) $(idlhead_HEADERS) \ + $(mingwhelperhead_HEADERS) $(nodist_sdkshead_HEADERS) \ + $(noinst_HEADERS) $(sechead_HEADERS) $(secsyshead_HEADERS) \ +- $(syshead_HEADERS) ++ $(syshead_HEADERS) $(wrlhead_HEADERS) \ ++ $(wrlwrappershead_HEADERS) + ETAGS = etags + CTAGS = ctags + CSCOPE = cscope +@@ -188,6 +191,8 @@ STRIP = @STRIP@ + SYSHEAD_LIST = @SYSHEAD_LIST@ + VERSION = @VERSION@ + WIDL = @WIDL@ ++WRLHEAD_LIST = @WRLHEAD_LIST@ ++WRLWRAPPERSHEAD_LIST = @WRLWRAPPERSHEAD_LIST@ + abs_builddir = @abs_builddir@ + abs_srcdir = @abs_srcdir@ + abs_top_builddir = @abs_top_builddir@ +@@ -241,6 +246,8 @@ secheaddir = $(baseheaddir)/sec_api + secsysheaddir = $(baseheaddir)/sec_api/sys + glheaddir = $(baseheaddir)/GL + gdiplusheaddir = $(baseheaddir)/gdiplus ++wrlheaddir = $(baseheaddir)/wrl ++wrlwrappersheaddir = $(baseheaddir)/wrl/wrappers + mingwhelperheaddir = $(baseheaddir)/psdk_inc + sdksheaddir = $(baseheaddir)/sdks + basehead_HEADERS = @BASEHEAD_LIST@ +@@ -249,6 +256,8 @@ sechead_HEADERS = @SECHEAD_LIST@ + secsyshead_HEADERS = @SECSYSHEAD_LIST@ + glhead_HEADERS = @GLHEAD_LIST@ + gdiplushead_HEADERS = @GDIPLUSHEAD_LIST@ ++wrlhead_HEADERS = @WRLHEAD_LIST@ ++wrlwrappershead_HEADERS = @WRLWRAPPERSHEAD_LIST@ + mingwhelperhead_HEADERS = @MINGWHELPERHEAD_LIST@ + nodist_sdkshead_HEADERS = _mingw_directx.h _mingw_ddk.h + noinst_HEADERS = crt/sdks/_mingw_directx.h.in crt/sdks/_mingw_ddk.h.in +@@ -273,6 +282,8 @@ EXTRA_HEADERS = \ + include/GL/*.h \ + include/psdk_inc/*.h \ + include/gdiplus/*.h \ ++ include/wrl/*.h \ ++ include/wrl/wrappers/*.h \ + crt/*.h \ + crt/*.inl \ + crt/sys/*.h \ +@@ -714,6 +725,48 @@ uninstall-sysheadHEADERS: + @list='$(syshead_HEADERS)'; test -n "$(sysheaddir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(sysheaddir)'; $(am__uninstall_files_from_dir) ++install-wrlheadHEADERS: $(wrlhead_HEADERS) ++ @$(NORMAL_INSTALL) ++ @list='$(wrlhead_HEADERS)'; test -n "$(wrlheaddir)" || list=; \ ++ if test -n "$$list"; then \ ++ echo " $(MKDIR_P) '$(DESTDIR)$(wrlheaddir)'"; \ ++ $(MKDIR_P) "$(DESTDIR)$(wrlheaddir)" || exit 1; \ ++ fi; \ ++ for p in $$list; do \ ++ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ ++ echo "$$d$$p"; \ ++ done | $(am__base_list) | \ ++ while read files; do \ ++ echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(wrlheaddir)'"; \ ++ $(INSTALL_HEADER) $$files "$(DESTDIR)$(wrlheaddir)" || exit $$?; \ ++ done ++ ++uninstall-wrlheadHEADERS: ++ @$(NORMAL_UNINSTALL) ++ @list='$(wrlhead_HEADERS)'; test -n "$(wrlheaddir)" || list=; \ ++ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ ++ dir='$(DESTDIR)$(wrlheaddir)'; $(am__uninstall_files_from_dir) ++install-wrlwrappersheadHEADERS: $(wrlwrappershead_HEADERS) ++ @$(NORMAL_INSTALL) ++ @list='$(wrlwrappershead_HEADERS)'; test -n "$(wrlwrappersheaddir)" || list=; \ ++ if test -n "$$list"; then \ ++ echo " $(MKDIR_P) '$(DESTDIR)$(wrlwrappersheaddir)'"; \ ++ $(MKDIR_P) "$(DESTDIR)$(wrlwrappersheaddir)" || exit 1; \ ++ fi; \ ++ for p in $$list; do \ ++ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ ++ echo "$$d$$p"; \ ++ done | $(am__base_list) | \ ++ while read files; do \ ++ echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(wrlwrappersheaddir)'"; \ ++ $(INSTALL_HEADER) $$files "$(DESTDIR)$(wrlwrappersheaddir)" || exit $$?; \ ++ done ++ ++uninstall-wrlwrappersheadHEADERS: ++ @$(NORMAL_UNINSTALL) ++ @list='$(wrlwrappershead_HEADERS)'; test -n "$(wrlwrappersheaddir)" || list=; \ ++ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ ++ dir='$(DESTDIR)$(wrlwrappersheaddir)'; $(am__uninstall_files_from_dir) + + ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ +@@ -955,7 +1008,7 @@ check: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-am + all-am: Makefile $(HEADERS) config.h + installdirs: +- for dir in "$(DESTDIR)$(baseheaddir)" "$(DESTDIR)$(ddkheaddir)" "$(DESTDIR)$(dxheaddir)" "$(DESTDIR)$(gdiplusheaddir)" "$(DESTDIR)$(glheaddir)" "$(DESTDIR)$(idlheaddir)" "$(DESTDIR)$(mingwhelperheaddir)" "$(DESTDIR)$(sdksheaddir)" "$(DESTDIR)$(secheaddir)" "$(DESTDIR)$(secsysheaddir)" "$(DESTDIR)$(sysheaddir)"; do \ ++ for dir in "$(DESTDIR)$(baseheaddir)" "$(DESTDIR)$(ddkheaddir)" "$(DESTDIR)$(dxheaddir)" "$(DESTDIR)$(gdiplusheaddir)" "$(DESTDIR)$(glheaddir)" "$(DESTDIR)$(idlheaddir)" "$(DESTDIR)$(mingwhelperheaddir)" "$(DESTDIR)$(sdksheaddir)" "$(DESTDIR)$(secheaddir)" "$(DESTDIR)$(secsysheaddir)" "$(DESTDIR)$(sysheaddir)" "$(DESTDIR)$(wrlheaddir)" "$(DESTDIR)$(wrlwrappersheaddir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done + install: $(BUILT_SOURCES) +@@ -1017,7 +1070,8 @@ install-data-am: install-baseheadHEADERS install-ddkheadHEADERS \ + install-glheadHEADERS install-idlheadHEADERS \ + install-mingwhelperheadHEADERS install-nodist_sdksheadHEADERS \ + install-secheadHEADERS install-secsysheadHEADERS \ +- install-sysheadHEADERS ++ install-sysheadHEADERS install-wrlheadHEADERS \ ++ install-wrlwrappersheadHEADERS + + install-dvi: install-dvi-am + +@@ -1068,7 +1122,8 @@ uninstall-am: uninstall-baseheadHEADERS uninstall-ddkheadHEADERS \ + uninstall-glheadHEADERS uninstall-idlheadHEADERS \ + uninstall-mingwhelperheadHEADERS \ + uninstall-nodist_sdksheadHEADERS uninstall-secheadHEADERS \ +- uninstall-secsysheadHEADERS uninstall-sysheadHEADERS ++ uninstall-secsysheadHEADERS uninstall-sysheadHEADERS \ ++ uninstall-wrlheadHEADERS uninstall-wrlwrappersheadHEADERS + + .MAKE: all check install install-am install-strip + +@@ -1088,6 +1143,7 @@ uninstall-am: uninstall-baseheadHEADERS uninstall-ddkheadHEADERS \ + install-nodist_sdksheadHEADERS install-pdf install-pdf-am \ + install-ps install-ps-am install-secheadHEADERS \ + install-secsysheadHEADERS install-strip install-sysheadHEADERS \ ++ install-wrlheadHEADERS install-wrlwrappersheadHEADERS \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ + pdf-am ps ps-am tags uninstall uninstall-am \ +@@ -1096,7 +1152,8 @@ uninstall-am: uninstall-baseheadHEADERS uninstall-ddkheadHEADERS \ + uninstall-glheadHEADERS uninstall-idlheadHEADERS \ + uninstall-mingwhelperheadHEADERS \ + uninstall-nodist_sdksheadHEADERS uninstall-secheadHEADERS \ +- uninstall-secsysheadHEADERS uninstall-sysheadHEADERS ++ uninstall-secsysheadHEADERS uninstall-sysheadHEADERS \ ++ uninstall-wrlheadHEADERS uninstall-wrlwrappersheadHEADERS + + + dist-hook: +diff --git a/mingw-w64-headers/configure b/mingw-w64-headers/configure +index fcf99e3..1bd5c64 100755 +--- a/mingw-w64-headers/configure ++++ b/mingw-w64-headers/configure +@@ -599,6 +599,8 @@ SECHEAD_LIST + SYSHEAD_LIST + MINGWHELPERHEAD_LIST + GLHEAD_LIST ++WRLWRAPPERSHEAD_LIST ++WRLHEAD_LIST + GDIPLUSHEAD_LIST + BASEHEAD_LIST + ENABLE_CRT_FALSE +@@ -2610,6 +2612,8 @@ if test "x$enable_crt" = xyes; then : + + fi + GDIPLUSHEAD_LIST=$srcdir/include/gdiplus/*.h ++WRLHEAD_LIST=$srcdir/include/wrl/*.h ++WRLWRAPPERSHEAD_LIST=$srcdir/include/wrl/wrappers/*.h + GLHEAD_LIST=$srcdir/include/GL/*.h + MINGWHELPERHEAD_LIST=$srcdir/include/psdk_inc/*.h + +@@ -2620,6 +2624,8 @@ MINGWHELPERHEAD_LIST=$srcdir/include/psdk_inc/*.h + + + ++ ++ + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for optional sdk headers" >&5 + $as_echo_n "checking for optional sdk headers... " >&6; } + # Check whether --enable-sdk was given. +diff --git a/mingw-w64-headers/configure.ac b/mingw-w64-headers/configure.ac +index 7de20fd..41bb952 100644 +--- a/mingw-w64-headers/configure.ac ++++ b/mingw-w64-headers/configure.ac +@@ -76,10 +76,14 @@ AS_VAR_IF([enable_crt],[yes],[ + SECSYSHEAD_LIST=$srcdir/crt/sec_api/sys/*.h + ]) + GDIPLUSHEAD_LIST=$srcdir/include/gdiplus/*.h ++WRLHEAD_LIST=$srcdir/include/wrl/*.h ++WRLWRAPPERSHEAD_LIST=$srcdir/include/wrl/wrappers/*.h + GLHEAD_LIST=$srcdir/include/GL/*.h + MINGWHELPERHEAD_LIST=$srcdir/include/psdk_inc/*.h + AC_SUBST([BASEHEAD_LIST]) + AC_SUBST([GDIPLUSHEAD_LIST]) ++AC_SUBST([WRLHEAD_LIST]) ++AC_SUBST([WRLWRAPPERSHEAD_LIST]) + AC_SUBST([GLHEAD_LIST]) + AC_SUBST([MINGWHELPERHEAD_LIST]) + AC_SUBST([SYSHEAD_LIST]) +diff --git a/mingw-w64-headers/include/wrl.h b/mingw-w64-headers/include/wrl.h +new file mode 100644 +index 0000000..be147fe +--- /dev/null ++++ b/mingw-w64-headers/include/wrl.h +@@ -0,0 +1,15 @@ ++/** ++ * This file has no copyright assigned and is placed in the Public Domain. ++ * This file is part of the mingw-w64 runtime package. ++ * No warranty is given; refer to the file DISCLAIMER.PD within this package. ++ */ ++ ++#ifndef _WRL_H_ ++#define _WRL_H_ ++ ++#include ++/* #include */ ++#include ++/* #include */ ++ ++#endif +diff --git a/mingw-w64-headers/include/wrl/client.h b/mingw-w64-headers/include/wrl/client.h +new file mode 100644 +index 0000000..3cc2685 +--- /dev/null ++++ b/mingw-w64-headers/include/wrl/client.h +@@ -0,0 +1,18 @@ ++/** ++ * This file has no copyright assigned and is placed in the Public Domain. ++ * This file is part of the mingw-w64 runtime package. ++ * No warranty is given; refer to the file DISCLAIMER.PD within this package. ++ */ ++ ++#ifndef _WRL_CLIENT_H_ ++#define _WRL_CLIENT_H_ ++ ++#include ++#include ++/* #include */ ++#include ++ ++/* #include */ ++#include ++ ++#endif +diff --git a/mingw-w64-headers/include/wrl/internal.h b/mingw-w64-headers/include/wrl/internal.h +new file mode 100644 +index 0000000..81bf347 +--- /dev/null ++++ b/mingw-w64-headers/include/wrl/internal.h +@@ -0,0 +1,12 @@ ++/** ++ * This file has no copyright assigned and is placed in the Public Domain. ++ * This file is part of the mingw-w64 runtime package. ++ * No warranty is given; refer to the file DISCLAIMER.PD within this package. ++ */ ++ ++#ifndef _WRL_INTERNAL_H_ ++#define _WRL_INTERNAL_H_ ++ ++#include ++ ++#endif +diff --git a/mingw-w64-headers/include/wrl/module.h b/mingw-w64-headers/include/wrl/module.h +new file mode 100644 +index 0000000..4ac93ca +--- /dev/null ++++ b/mingw-w64-headers/include/wrl/module.h +@@ -0,0 +1,23 @@ ++/** ++ * This file has no copyright assigned and is placed in the Public Domain. ++ * This file is part of the mingw-w64 runtime package. ++ * No warranty is given; refer to the file DISCLAIMER.PD within this package. ++ */ ++ ++#ifndef _WRL_MODULE_H_ ++#define _WRL_MODULE_H_ ++ ++#include ++#include ++#include ++#include ++#include ++ ++/* #include */ ++#include ++#include ++/* #include */ ++/* #include */ ++#include ++ ++#endif +diff --git a/mingw-w64-headers/include/wrl/wrappers/corewrappers.h b/mingw-w64-headers/include/wrl/wrappers/corewrappers.h +new file mode 100644 +index 0000000..e63d5e9 +--- /dev/null ++++ b/mingw-w64-headers/include/wrl/wrappers/corewrappers.h +@@ -0,0 +1,18 @@ ++/** ++ * This file has no copyright assigned and is placed in the Public Domain. ++ * This file is part of the mingw-w64 runtime package. ++ * No warranty is given; refer to the file DISCLAIMER.PD within this package. ++ */ ++ ++#ifndef _WRL_COREWRAPPERS_H_ ++#define _WRL_COREWRAPPERS_H_ ++ ++#include ++/* #include */ ++#include ++#include ++ ++/* #include */ ++#include ++ ++#endif diff --git a/commit-6249fb9 b/commit-6249fb9 new file mode 100644 index 0000000..d1af1c2 --- /dev/null +++ b/commit-6249fb9 @@ -0,0 +1,53 @@ +From 6249fb991dbffa36b8712250f71992c02bf5be33 Mon Sep 17 00:00:00 2001 +From: Jacek Caban +Date: Wed, 8 Jul 2015 16:11:52 +0200 +Subject: extern C fixes in winstring.h and roapi.h. + + +diff --git a/mingw-w64-headers/include/roapi.h b/mingw-w64-headers/include/roapi.h +index 95c4fe6..9cd0f29 100644 +--- a/mingw-w64-headers/include/roapi.h ++++ b/mingw-w64-headers/include/roapi.h +@@ -24,7 +24,9 @@ typedef struct { } *RO_REGISTRATION_COOKIE; + + typedef HRESULT (WINAPI *PFNGETACTIVATIONFACTORY)(HSTRING, IActivationFactory **); + +-/* */ ++#ifdef __cplusplus ++extern "C" { ++#endif + + HRESULT WINAPI RoActivateInstance(HSTRING activatableClassId, IInspectable **instance); + +@@ -50,6 +52,7 @@ HRESULT WINAPI RoUnregisterForApartmentShutdown (APARTMENT_SHUTDOWN_REGISTRATION + HRESULT WINAPI RoGetApartmentIdentifier (UINT64 *apartmentId); + + #ifdef __cplusplus ++} /* extern "C" */ + + namespace Windows { + namespace Foundation { +diff --git a/mingw-w64-headers/include/winstring.h b/mingw-w64-headers/include/winstring.h +index 908923e..76131d8 100644 +--- a/mingw-w64-headers/include/winstring.h ++++ b/mingw-w64-headers/include/winstring.h +@@ -33,10 +33,6 @@ unsigned long __RPC_USER HSTRING_UserSize64(unsigned long *pFlags, unsigned long + unsigned char* __RPC_USER HSTRING_UserUnmarshal64(unsigned long *pFlags, unsigned char *pBuffer, HSTRING *ppidl); + #endif + +-#ifdef __cplusplus +-} +-#endif +- + HRESULT WINAPI WindowsCompareStringOrdinal(HSTRING string1, HSTRING string2, INT32 *result); + + HRESULT WINAPI WindowsConcatString(HSTRING string1, HSTRING string2, HSTRING *newString); +@@ -77,4 +73,8 @@ HRESULT WINAPI WindowsTrimStringEnd(HSTRING string, HSTRING trimString, HSTRING + + HRESULT WINAPI WindowsTrimStringStart(HSTRING string, HSTRING trimString, HSTRING *newString); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif diff --git a/commit-b3d0437 b/commit-b3d0437 new file mode 100644 index 0000000..b36a1aa --- /dev/null +++ b/commit-b3d0437 @@ -0,0 +1,18 @@ +From b3d0437c9e9e5a9156077b478da981abd11a2510 Mon Sep 17 00:00:00 2001 +From: Jacek Caban +Date: Mon, 6 Jul 2015 11:55:50 +0200 +Subject: sal.h: Added _Inout_ define. + + +diff --git a/mingw-w64-headers/include/sal.h b/mingw-w64-headers/include/sal.h +index 9987119..79a747f 100644 +--- a/mingw-w64-headers/include/sal.h ++++ b/mingw-w64-headers/include/sal.h +@@ -20,6 +20,7 @@ + #define _In_ + #define _In_opt_ + #define _Out_ ++#define _Inout_ + + #define _Struct_size_bytes_(size) + diff --git a/commit-e5ebc15 b/commit-e5ebc15 new file mode 100644 index 0000000..a4feb1c --- /dev/null +++ b/commit-e5ebc15 @@ -0,0 +1,19 @@ +From e5ebc15356113a0fa2b8869a73086f6790ab3657 Mon Sep 17 00:00:00 2001 +From: Jacek Caban +Date: Sat, 25 Jul 2015 19:03:03 +0200 +Subject: roapi.h: Fixed a typo. + + +diff --git a/mingw-w64-headers/include/roapi.h b/mingw-w64-headers/include/roapi.h +index 9cd0f29..14d94c3 100644 +--- a/mingw-w64-headers/include/roapi.h ++++ b/mingw-w64-headers/include/roapi.h +@@ -56,7 +56,7 @@ HRESULT WINAPI RoGetApartmentIdentifier (UINT64 *apartmentId); + + namespace Windows { + namespace Foundation { +- __inline HRESULT Initalize (RO_INIT_TYPE it ++ __inline HRESULT Initialize (RO_INIT_TYPE it + #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) + = RO_INIT_SINGLETHREADED + #endif diff --git a/commit-eac9192 b/commit-eac9192 new file mode 100644 index 0000000..f16a222 --- /dev/null +++ b/commit-eac9192 @@ -0,0 +1,63 @@ +From eac91922574a328ac8e1e41ab0acc21af692dbaf Mon Sep 17 00:00:00 2001 +From: Jacek Caban +Date: Mon, 6 Jul 2015 13:07:28 +0200 +Subject: roapi.h: Added GetActivationFactory helpers, fixed enum argument + default value and removed version guards. + + +diff --git a/mingw-w64-headers/include/roapi.h b/mingw-w64-headers/include/roapi.h +index d4146ba..95c4fe6 100644 +--- a/mingw-w64-headers/include/roapi.h ++++ b/mingw-w64-headers/include/roapi.h +@@ -13,8 +13,6 @@ + #include + #include + +-#if _WIN32_WINNT >= _WIN32_WINNT_WIN8 +- + typedef enum RO_INIT_TYPE { + #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) + RO_INIT_SINGLETHREADED = 0, +@@ -51,20 +49,21 @@ HRESULT WINAPI RoUnregisterForApartmentShutdown (APARTMENT_SHUTDOWN_REGISTRATION + + HRESULT WINAPI RoGetApartmentIdentifier (UINT64 *apartmentId); + +-#endif +- + #ifdef __cplusplus + + namespace Windows { + namespace Foundation { + __inline HRESULT Initalize (RO_INIT_TYPE it + #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) +- = 0 ++ = RO_INIT_SINGLETHREADED + #endif + ) { return RoInitialize (it); } + __inline void Uninitialize () + { RoUninitialize (); } + ++ template __inline HRESULT GetActivationFactory(HSTRING classid, T **factory) { ++ return RoGetActivationFactory(classid, IID_INS_ARGS(factory)); ++ } + } + } + +@@ -73,12 +72,16 @@ namespace ABI { + namespace Foundation { + __inline HRESULT Initialze (RO_INIT_TYPE it + #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) +- = 0 ++ = RO_INIT_SINGLETHREADED + #endif + ) { return RoInitialize (it); } + __inline void Uninitialize () + { RoUninitialize (); } + } ++ ++ template __inline HRESULT GetActivationFactory(HSTRING classid, T **factory) { ++ return RoGetActivationFactory(classid, IID_INS_ARGS(factory)); ++ } + } + } + diff --git a/mingw-headers.spec b/mingw-headers.spec index f830666..70c4f0c 100644 --- a/mingw-headers.spec +++ b/mingw-headers.spec @@ -22,7 +22,7 @@ Name: mingw-headers Version: 4.0.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Win32/Win64 header files License: Public Domain and LGPLv2+ and ZPLv2.1 @@ -46,7 +46,7 @@ Source0: http://downloads.sourceforge.net/mingw-w64/mingw-w64-v%{version} # happening as the .idl files shouldn't be used by default Patch0: mingw-headers-no-widl.patch -# Backported commits required to build wine-gecko 2.40-beta1 +# Backported commits required to build wine-gecko 2.40 Patch1: commit-4ce7a79 Patch2: commit-7eee339 Patch3: commit-85b4034 @@ -55,9 +55,15 @@ Patch5: commit-e4a8812 Patch6: commit-e960f8f Patch7: commit-ef5e914 Patch8: commit-fc960d3 +Patch9: commit-58b571e +Patch10: commit-eac9192 +Patch11: commit-b3d0437 +Patch12: commit-e5ebc15 +Patch13: commit-21c9cbf +Patch14: commit-6249fb9 # Backported commit required to build mingw-qt5-qtactiveqt 5.5.0 -Patch9: commit-5f5e2c1 +Patch99: commit-5f5e2c1 BuildArch: noarch @@ -115,9 +121,15 @@ unzip %{S:0} %patch6 -p1 %patch7 -p1 %patch8 -p1 +%patch9 -p1 +%patch10 -p1 +%patch11 -p1 +%patch12 -p1 +%patch13 -p1 +%patch14 -p1 # mingw-qt5-qtactiveqt backports -%patch9 -p1 +%patch99 -p1 %build @@ -152,6 +164,9 @@ rm -f $RPM_BUILD_ROOT%{mingw64_includedir}/pthread_unistd.h %changelog +* Fri Aug 14 2015 Erik van Pienbroek - 4.0.4-3 +- Backport more commits which are required to build wine-gecko 2.40 + * Fri Aug 7 2015 Erik van Pienbroek - 4.0.4-2 - Backport commit 5f5e2c (duplicate defines in activscp.h) as it is required by mingw-qt5-qtactiveqt 5.5.0