From 6e5e9280ab457724a1f3c9258e5e2265b280e9f6065acfa573eac691808dd865 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Tue, 20 Jun 2017 10:34:44 +0000 Subject: [PATCH] mingw32-headers-5.0.2 OBS-URL: https://build.opensuse.org/package/show/windows:mingw:win32/mingw32-headers?expand=0&rev=38 --- mingw-w64-headers-5.0.1.tar.xz | 3 -- mingw-w64-headers-5.0.2.tar.xz | 3 ++ mingw32-headers.changes | 12 ++++++++ mingw32-headers.spec | 8 ++++-- popcnt.patch | 51 ++++++++++++++++++++++++++++++++++ 5 files changed, 71 insertions(+), 6 deletions(-) delete mode 100644 mingw-w64-headers-5.0.1.tar.xz create mode 100644 mingw-w64-headers-5.0.2.tar.xz create mode 100644 popcnt.patch diff --git a/mingw-w64-headers-5.0.1.tar.xz b/mingw-w64-headers-5.0.1.tar.xz deleted file mode 100644 index 7ca6182..0000000 --- a/mingw-w64-headers-5.0.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:75d9a674210811261423aae0c158d613df8c767d2db3a0eeded5d631726978d0 -size 5244552 diff --git a/mingw-w64-headers-5.0.2.tar.xz b/mingw-w64-headers-5.0.2.tar.xz new file mode 100644 index 0000000..9ab143d --- /dev/null +++ b/mingw-w64-headers-5.0.2.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6c2d1b1b9e152201053ebfcd4c983d276dd8e92298d63492f1d489b0b361f2a +size 5670255 diff --git a/mingw32-headers.changes b/mingw32-headers.changes index e8ff8f5..c18e918 100644 --- a/mingw32-headers.changes +++ b/mingw32-headers.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Thu Apr 20 08:26:10 UTC 2017 - idonmez@suse.com + +- Add popcnt.patch + +------------------------------------------------------------------- +Tue Mar 28 11:40:03 UTC 2017 - idonmez@suse.com + +- Update to version 5.0.2 + * RegSetKeyValueW now has proper wide arguments. + * Fix pdh.h function calls to have proper stdcall decorators. + ------------------------------------------------------------------- Sat Jan 14 20:48:05 UTC 2017 - idonmez@suse.com diff --git a/mingw32-headers.spec b/mingw32-headers.spec index a88ccf9..fb8c881 100644 --- a/mingw32-headers.spec +++ b/mingw32-headers.spec @@ -17,17 +17,18 @@ Name: mingw32-headers -Version: 5.0.1 +Version: 5.0.2 Release: 0 Summary: MinGW-w64 headers for Win32 and Win64 License: SUSE-Public-Domain Group: Development/Libraries/C and C++ Url: http://mingw-w64.sf.net/ -#DL-URL: http://downloads.sf.net/mingw-w64/mingw-w64-v5.0-rc1.tar.bz2 +#DL-URL: http://downloads.sf.net/mingw-w64/mingw-w64-%version.tar.bz2 Source: mingw-w64-headers-%version.tar.xz -Source100: %name-rpmlintrc +Source1000: %name-rpmlintrc Patch1: 0001-Add-missing-D3D_CS_-variables.patch +Patch2: popcnt.patch BuildRequires: mingw32-filesystem BuildRequires: xz #!BuildIgnore: post-build-checks @@ -55,6 +56,7 @@ an actual pthread implementation (like winpthreads) is installed. %prep %setup -q -n mingw-w64-headers %patch1 -p2 +%patch2 -p2 %build %{_mingw32_configure} \ diff --git a/popcnt.patch b/popcnt.patch new file mode 100644 index 0000000..833c0db --- /dev/null +++ b/popcnt.patch @@ -0,0 +1,51 @@ +commit 5aa73896a3313a354cf6550d99ecd652d0abd3b2 +Author: David Grayson +Date: Wed Feb 8 18:56:17 2017 +0100 + + intrin-impl.h: Added __popcnt16, __popcnt, and __popcnt64. + +diff --git a/mingw-w64-headers/include/psdk_inc/intrin-impl.h b/mingw-w64-headers/include/psdk_inc/intrin-impl.h +index f8dc78f9..fc781ff9 100644 +--- a/mingw-w64-headers/include/psdk_inc/intrin-impl.h ++++ b/mingw-w64-headers/include/psdk_inc/intrin-impl.h +@@ -971,6 +971,40 @@ __buildbittesti(InterlockedBitTestAndComplement, __LONG32, "eor", "M", volatile) + + #if defined(__x86_64__) || defined(_AMD64_) || defined(__i386__) || defined(_X86_) || defined(__arm__) || defined(_ARM_) + ++#if !defined(__clang__) ++ ++#if __INTRINSIC_PROLOG(__popcnt16) ++unsigned short __popcnt16(unsigned short); ++__INTRINSICS_USEINLINE ++unsigned short __popcnt16(unsigned short value) ++{ ++ return __builtin_popcount(value); ++} ++#define __INTRINSIC_DEFINED___popcnt16 ++#endif /* __INTRINSIC_PROLOG */ ++ ++#if __INTRINSIC_PROLOG(__popcnt) ++unsigned int __popcnt(unsigned int); ++__INTRINSICS_USEINLINE ++unsigned int __popcnt(unsigned int value) ++{ ++ return __builtin_popcount(value); ++} ++#define __INTRINSIC_DEFINED___popcnt ++#endif /* __INTRINSIC_PROLOG */ ++ ++#if __INTRINSIC_PROLOG(__popcnt64) ++unsigned __int64 __popcnt64(unsigned __int64); ++__INTRINSICS_USEINLINE ++unsigned __int64 __popcnt64(unsigned __int64 value) ++{ ++ return __builtin_popcountll(value); ++} ++#define __INTRINSIC_DEFINED___popcnt64 ++#endif /* __INTRINSIC_PROLOG */ ++ ++#endif /* !defined(__clang__) */ ++ + #if __INTRINSIC_PROLOG(_InterlockedAnd) + __LONG32 _InterlockedAnd(__LONG32 volatile *, __LONG32); + __INTRINSICS_USEINLINE