diff src/boost-1-intrinsics-fix.patch @ 3642:5a459f007b2f

boost: update to 1.53.0 * src/boost.mk: update to 1.53.0 * src/boost-1-intrinsics-fix.patch: new file from mxe_devel * src/boost-2-winerror.patch: new file from mxe-devel * dist-files.mk: add boost-1-intrinsics-fix.patch boost-2-winerror.patch
author John Donoghue
date Tue, 01 Jul 2014 09:11:16 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/boost-1-intrinsics-fix.patch	Tue Jul 01 09:11:16 2014 -0400
@@ -0,0 +1,37 @@
+This file is part of MXE.
+See index.html for further information.
+
+This patch has been taken from:
+http://pkgs.fedoraproject.org/cgit/mingw-boost.git/plain/boost-include-intrin-h-on-mingw-w64.patch
+
+--- a/boost/detail/interlocked.hpp.interlocked	2012-12-11 15:42:26.000000000 +0100
++++ b/boost/detail/interlocked.hpp	2013-07-21 15:22:56.082346444 +0200
+@@ -69,9 +69,9 @@
+ # define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \
+     ((void*)BOOST_INTERLOCKED_EXCHANGE((long*)(dest),(long)(exchange)))
+ 
+-#elif defined( BOOST_MSVC ) || defined( BOOST_INTEL_WIN )
++#elif defined( BOOST_MSVC ) || defined( BOOST_INTEL_WIN ) || defined( __MINGW64_VERSION_MAJOR )
+ 
+-#if defined( BOOST_MSVC ) && BOOST_MSVC >= 1600
++#if ( defined( BOOST_MSVC ) && BOOST_MSVC >= 1600 ) || defined( __MINGW64_VERSION_MAJOR )
+ 
+ #include <intrin.h>
+ 
+@@ -93,12 +93,16 @@
+ 
+ #endif
+ 
++# if defined( BOOST_MSVC )
++
+ # pragma intrinsic( _InterlockedIncrement )
+ # pragma intrinsic( _InterlockedDecrement )
+ # pragma intrinsic( _InterlockedCompareExchange )
+ # pragma intrinsic( _InterlockedExchange )
+ # pragma intrinsic( _InterlockedExchangeAdd )
+ 
++# endif
++
+ # if defined(_M_IA64) || defined(_M_AMD64)
+ 
+ extern "C" void* __cdecl _InterlockedCompareExchangePointer( void* volatile *, void*, void* );