# HG changeset patch # User John Donoghue # Date 1404220276 14400 # Node ID 5a459f007b2f962922559559924828787ac62d01 # Parent f362e10a0fa7050b5999cb3cea4da088526a4ecc 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 diff -r f362e10a0fa7 -r 5a459f007b2f dist-files.mk --- a/dist-files.mk Tue Jul 01 09:48:50 2014 -0400 +++ b/dist-files.mk Tue Jul 01 09:11:16 2014 -0400 @@ -15,6 +15,8 @@ aubio.mk \ bfd.mk \ blas.mk \ + boost-1-intrinsics-fix.patch \ + boost-2-winerror.patch \ boost-test.cpp \ boost.mk \ build-autoconf.mk \ diff -r f362e10a0fa7 -r 5a459f007b2f src/boost-1-intrinsics-fix.patch --- /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 + +@@ -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* ); diff -r f362e10a0fa7 -r 5a459f007b2f src/boost-2-winerror.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/boost-2-winerror.patch Tue Jul 01 09:11:16 2014 -0400 @@ -0,0 +1,17 @@ +This file is part of MXE. +See index.html for further information. + +Fix WinError.h capitalization. See http://svn.boost.org/trac/boost/ticket/7081 + +diff -ur a/boost/detail/win/basic_types.hpp b/boost/detail/win/basic_types.hpp +--- a/boost/detail/win/basic_types.hpp 2011-03-25 02:20:55.000000000 +0100 ++++ b/boost/detail/win/basic_types.hpp 2013-11-13 18:59:00.225614699 +0100 +@@ -14,7 +14,7 @@ + #if defined( BOOST_USE_WINDOWS_H ) + # include + #elif defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ ) || defined(__CYGWIN__) +-# include ++# include + // @FIXME Which condition must be tested + # ifdef UNDER_CE + # ifndef WINAPI diff -r f362e10a0fa7 -r 5a459f007b2f src/boost.mk --- a/src/boost.mk Tue Jul 01 09:48:50 2014 -0400 +++ b/src/boost.mk Tue Jul 01 09:11:16 2014 -0400 @@ -3,8 +3,8 @@ PKG := boost $(PKG)_IGNORE := -$(PKG)_VERSION := 1.52.0 -$(PKG)_CHECKSUM := cddd6b4526a09152ddc5db856463eaa1dc29c5d9 +$(PKG)_VERSION := 1.53.0 +$(PKG)_CHECKSUM := e6dd1b62ceed0a51add3dda6f3fc3ce0f636a7f3 $(PKG)_SUBDIR := boost_$(subst .,_,$($(PKG)_VERSION)) $(PKG)_FILE := boost_$(subst .,_,$($(PKG)_VERSION)).tar.bz2 $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/boost/boost/$($(PKG)_VERSION)/$($(PKG)_FILE) @@ -21,8 +21,8 @@ # context switched library introduced in boost 1.51.0 does not build rm -r '$(1)/libs/context' # old version appears to interfere - rm -rf '$(HOST_INCDIR)/boost' - echo 'using gcc : : $(MXE_CXX) : $(MXE_WINDRES) $(MXE_AR) ;' > '$(1)/user-config.jam' + rm -rf '$(HOST_INCDIR)/boost/' + echo 'using gcc : : $(MXE_CXX) : $(MXE_WINDRES) $(MXE_AR) $(MXE_RANDLIB) ;' > '$(1)/user-config.jam' # compile boost jam cd '$(1)/tools/build/v2/engine' && ./build.sh cd '$(1)' && tools/build/v2/engine/bin.*/bjam \ @@ -31,9 +31,10 @@ --user-config=user-config.jam \ target-os=windows \ threading=multi \ - link=static \ + link=$(if $(filter $(BUILD_STATIC),,yes),static,shared) \ threadapi=win32 \ --layout=tagged \ + --disable-icu \ --without-mpi \ --without-python \ --prefix='$(HOST_PREFIX)' \ @@ -44,9 +45,9 @@ -sEXPAT_LIBPATH='$(HOST_LIBDIR)' \ stage install - '$(MXE_CXX)' \ + '$(TARGET)-g++' \ -W -Wall -Werror -ansi -U__STRICT_ANSI__ -pedantic \ - '$(2).cpp' -o '$(HOST_BINDIR)/test-boost.exe' \ + '$(2).cpp' -o '$(1)/test-boost.exe' \ -DBOOST_THREAD_USE_LIB \ -lboost_serialization-mt \ -lboost_thread_win32-mt \