From 6e3f05c5ded21d0154f03f56414b9f0853e2a5b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Mon, 24 Jul 2017 13:05:34 +0200 Subject: [PATCH] Drop obsolete patch for mpi serialization make_array Purge unused patches from repo --- boost-1.50.0-long-double-1.patch | 12 --- boost-1.53.0-context.patch | 57 -------------- boost-1.59-python-make_setter.patch | 25 ------- boost-1.59.0-log.patch | 106 --------------------------- boost-1.64.0-dual-python-build.patch | 25 ------- boost-1.64.0-mpi-make_array.patch | 21 ------ boost.spec | 11 +-- 7 files changed, 6 insertions(+), 251 deletions(-) delete mode 100644 boost-1.50.0-long-double-1.patch delete mode 100644 boost-1.53.0-context.patch delete mode 100644 boost-1.59-python-make_setter.patch delete mode 100644 boost-1.59.0-log.patch delete mode 100644 boost-1.64.0-dual-python-build.patch delete mode 100644 boost-1.64.0-mpi-make_array.patch diff --git a/boost-1.50.0-long-double-1.patch b/boost-1.50.0-long-double-1.patch deleted file mode 100644 index 2574539..0000000 --- a/boost-1.50.0-long-double-1.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/libs/math/config/has_long_double_support.cpp b/libs/math/config/has_long_double_support.cpp -index d314cf3..9022408 100644 ---- a/libs/math/config/has_long_double_support.cpp -+++ b/libs/math/config/has_long_double_support.cpp -@@ -8,3 +8,7 @@ - #ifdef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS - #error "long double support is not supported by Boost.Math on this Plaform: the long double version of the TR1 library will not be built." - #endif -+ -+int main(int argc, char *argv[]) { -+ return 0; -+} diff --git a/boost-1.53.0-context.patch b/boost-1.53.0-context.patch deleted file mode 100644 index 3cc1cf0..0000000 --- a/boost-1.53.0-context.patch +++ /dev/null @@ -1,57 +0,0 @@ ---- boost_1_53_0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S.orig 2013-02-11 14:03:46.631005713 -0600 -+++ boost_1_53_0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S 2013-02-11 14:06:52.704815403 -0600 -@@ -87,12 +87,10 @@ - subi %r0, %r3, 64 # reserve 64 bytes (linkage + parameter area), R4 % 16 == 0 - stw %r0, 76(%r3) # save address in R3 as stack pointer for context function - -- mflr %r0 # load LR - bl 1f # jump to label 1 - 1: - mflr %r4 # load LR into R4 - addi %r4, %r4, finish - 1b # compute abs address of label finish -- mtlr %r0 # restore LR - stw %r4, 84(%r3) # save address of finish as return address for context function - # entered after context function returns - -@@ -108,4 +106,5 @@ - - li %r3, 0 # exit code is zero - bl _exit@plt # exit application -+ .long 0 # We should never get here, so SIGILL if we do - .size make_fcontext, .-make_fcontext - ---- boost_1_53_0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S.orig 2013-02-11 14:03:43.726849715 -0600 -+++ boost_1_53_0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S 2013-02-11 14:22:48.202839078 -0600 -@@ -99,21 +99,19 @@ - - # call align_stack, R3 contains address at 16 byte boundary after return - # == pointer to fcontext_t and address of context stack -- rlwinm %r3, %r3, 0, 0, 59 -+ clrrdi %r3, %r3, 4 - - std %r0, 184(%r3) # save address of context stack (base) in fcontext_t - std %r4, 192(%r3) # save context stack size in fcontext_t - std %r5, 176(%r3) # save address of context function in fcontext_t - -- subf %r0, %r3, 64 # 64 bytes on stack for parameter area (== 8 registers) -+ subi %r0, %r3, 64 # 64 bytes on stack for parameter area (== 8 registers) - std %r0, 152(%r3) # save the stack base - -- mflr %r0 # load LR - bl 1f # jump to label 1 - 1: - mflr %r4 # load LR into R4 - addi %r4, %r4, finish - 1b # compute abs address of label finish -- mtlr %r0 # restore LR - std %r4, 168(%r3) # save address of finish as return address for context function - # entered after context function returns - -@@ -128,5 +126,7 @@ - stwu %r1, -32(%r1) # allocate stack space, SP % 16 == 0 - - li %r3, 0 # set return value to zero -- bl _exit@plt # exit application -+ bl _exit # exit application -+ nop # nop is required by the linker -+ .long 0 # We should never get here, so SIGILL if we do - .size .make_fcontext, .-.make_fcontext diff --git a/boost-1.59-python-make_setter.patch b/boost-1.59-python-make_setter.patch deleted file mode 100644 index 6c00658..0000000 --- a/boost-1.59-python-make_setter.patch +++ /dev/null @@ -1,25 +0,0 @@ -From f410fbd64d887e2a8824f968b0533588489b5430 Mon Sep 17 00:00:00 2001 -From: Jonathan Wakely -Date: Wed, 2 Sep 2015 13:02:12 +0100 -Subject: [PATCH] Python: Fix condition for make_setter overload. - -This fixes the regression caused by 42e7d7b. - -Fixes #39 ---- - include/boost/python/data_members.hpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/boost/python/data_members.hpp b/include/boost/python/data_members.hpp -index 139bde3..5d3309c 100644 ---- a/include/boost/python/data_members.hpp -+++ b/include/boost/python/data_members.hpp -@@ -305,7 +305,7 @@ inline object make_setter(D& x) - return detail::make_setter(x, default_call_policies(), is_member_pointer(), 0); - } - --# if BOOST_WORKAROUND(__EDG_VERSION__, <= 238) -+# if !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - template - inline object make_setter(D const& x) - { diff --git a/boost-1.59.0-log.patch b/boost-1.59.0-log.patch deleted file mode 100644 index 844b3ff..0000000 --- a/boost-1.59.0-log.patch +++ /dev/null @@ -1,106 +0,0 @@ -From 7da193fde1a9c1bc925ee980339f4df2e1a66fa7 Mon Sep 17 00:00:00 2001 -From: Andrey Semashev -Date: Sun, 23 Aug 2015 17:27:20 +0300 -Subject: [PATCH] Fixed compilation of operator<< into a record ostream, when - the operator right hand argument is not directly supported by - formatting_ostream. Fixed #11549. - ---- - -diff --git a/include/boost/log/sources/record_ostream.hpp b/include/boost/log/sources/record_ostream.hpp -index b3c58e2..c1e8059 100644 ---- a/include/boost/log/sources/record_ostream.hpp -+++ b/include/boost/log/sources/record_ostream.hpp -@@ -39,6 +39,18 @@ namespace boost { - - BOOST_LOG_OPEN_NAMESPACE - -+template< typename CharT > -+class basic_record_ostream; -+ -+namespace aux { -+ -+template< typename StreamT, typename R > -+struct enable_if_record_ostream {}; -+template< typename CharT, typename R > -+struct enable_if_record_ostream< basic_record_ostream< CharT >, R > { typedef R type; }; -+ -+} // namespace aux -+ - /*! - * \brief Logging record adapter with a streaming capability - * -@@ -174,6 +186,55 @@ typedef basic_record_ostream< char > record_ostream; //!< Convenience typ - typedef basic_record_ostream< wchar_t > wrecord_ostream; //!< Convenience typedef for wide-character logging - #endif - -+// Implementation note: these operators below should be the least attractive for the compiler -+// so that user's overloads are chosen, when present. We use function template partial ordering for this purpose. -+// We also don't use perfect forwarding for the right hand argument because in ths case the generic overload -+// would be more preferred than the typical one written by users: -+// -+// record_ostream& operator<< (record_ostream& strm, my_type const& arg); -+// -+// This is because my_type rvalues require adding const to the type, which counts as a conversion that is not required -+// if there is a perfect forwarding overload. -+template< typename StreamT, typename T > -+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type -+operator<< (StreamT& strm, T const& value) -+{ -+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; -+ static_cast< formatting_ostream_type& >(strm) << value; -+ return strm; -+} -+ -+template< typename StreamT, typename T > -+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type -+operator<< (StreamT& strm, T& value) -+{ -+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; -+ static_cast< formatting_ostream_type& >(strm) << value; -+ return strm; -+} -+ -+#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) -+ -+template< typename StreamT, typename T > -+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type -+operator<< (StreamT&& strm, T const& value) -+{ -+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; -+ static_cast< formatting_ostream_type& >(strm) << value; -+ return strm; -+} -+ -+template< typename StreamT, typename T > -+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type -+operator<< (StreamT&& strm, T& value) -+{ -+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; -+ static_cast< formatting_ostream_type& >(strm) << value; -+ return strm; -+} -+ -+#endif // !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) -+ - namespace aux { - - //! Internal class that provides formatting streams for record pumps -diff --git a/include/boost/log/utility/formatting_ostream.hpp b/include/boost/log/utility/formatting_ostream.hpp -index 4345206..744acc0 100644 ---- a/include/boost/log/utility/formatting_ostream.hpp -+++ b/include/boost/log/utility/formatting_ostream.hpp -@@ -779,6 +779,13 @@ void basic_formatting_ostream< CharT, TraitsT, AllocatorT >::aligned_write(const - - // Implementation note: these operators below should be the least attractive for the compiler - // so that user's overloads are chosen, when present. We use function template partial ordering for this purpose. -+// We also don't use perfect forwarding for the right hand argument because in ths case the generic overload -+// would be more preferred than the typical one written by users: -+// -+// formatting_ostream& operator<< (formatting_ostream& strm, my_type const& arg); -+// -+// This is because my_type rvalues require adding const to the type, which counts as a conversion that is not required -+// if there is a perfect forwarding overload. - template< typename StreamT, typename T > - inline typename boost::log::aux::enable_if_formatting_ostream< StreamT, StreamT& >::type - operator<< (StreamT& strm, T const& value) diff --git a/boost-1.64.0-dual-python-build.patch b/boost-1.64.0-dual-python-build.patch deleted file mode 100644 index 2934475..0000000 --- a/boost-1.64.0-dual-python-build.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- boost_1_64_0/tools/build/src/tools/python.jam -+++ boost_1_64_0/tools/build/src/tools/python.jam -@@ -939,14 +939,14 @@ - # for a particular target OS as the default. This makes it so that we can - # select a python interpreter with only knowledge of the target OS. And hence - # can configure different Pythons based on the target OS only. -- local toolset-requirements = [ toolset.requirements ] ; -- local toolset-target-os-requirements -- = [ property.evaluate-conditionals-in-context -- [ $(toolset-requirements).raw ] : $(target-os) ] ; -- if ! in $(toolset-target-os-requirements:G) -- { -- toolset.add-requirements $(target-os):$(version:E=default) ; -- } -+ #local toolset-requirements = [ toolset.requirements ] ; -+ #local toolset-target-os-requirements -+ # = [ property.evaluate-conditionals-in-context -+ # [ $(toolset-requirements).raw ] : $(target-os) ] ; -+ #if ! in $(toolset-target-os-requirements:G) -+ #{ -+ # toolset.add-requirements $(target-os):$(version:E=default) ; -+ #} - - # Register the right suffix for extensions. - register-extension-suffix $(extension-suffix) : $(target-requirements) ; diff --git a/boost-1.64.0-mpi-make_array.patch b/boost-1.64.0-mpi-make_array.patch deleted file mode 100644 index 7ac800c..0000000 --- a/boost-1.64.0-mpi-make_array.patch +++ /dev/null @@ -1,21 +0,0 @@ -From ab924bb5abfa4c00ad11c21632adf97c002ac481 Mon Sep 17 00:00:00 2001 -From: Jonathan Wakely -Date: Thu, 26 Jan 2017 21:52:37 +0000 -Subject: [PATCH] Add header for serialization::make_array - ---- - include/boost/mpi/python/serialize.hpp | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/include/boost/mpi/python/serialize.hpp b/include/boost/mpi/python/serialize.hpp -index 5f9136b..8933b34 100644 ---- a/include/boost/mpi/python/serialize.hpp -+++ b/include/boost/mpi/python/serialize.hpp -@@ -36,6 +36,7 @@ - - #include - #include -+#include - - #include - diff --git a/boost.spec b/boost.spec index 6160a95..874667d 100644 --- a/boost.spec +++ b/boost.spec @@ -35,7 +35,7 @@ Name: boost Summary: The free peer-reviewed portable C++ source libraries Version: 1.64.0 %global version_enc 1_64_0 -Release: 0.3%{?dist} +Release: 0.4%{?dist} License: Boost and MIT and Python %global toplev_dirname %{name}_%{version_enc} @@ -135,12 +135,10 @@ Patch83: boost-1.63.0-dual-python-build-v2.patch # https://github.com/boostorg/mpi/pull/39 Patch84: boost-1.64.0-mpi-get_data.patch -# https://github.com/boostorg/mpi/pull/40 -Patch85: boost-1.64.0-mpi-make_array.patch # https://svn.boost.org/trac10/ticket/12516 # https://github.com/boostorg/serialization/commit/1d86261581230e2dc5d617a9b16287d326f3e229 -Patch86: boost-1.64.0-serialization-make_array.patch +Patch85: boost-1.64.0-serialization-make_array.patch %bcond_with tests %bcond_with docs_generated @@ -759,7 +757,6 @@ a number of significant features and is now developed independently %patch83 -p1 %patch84 -p2 %patch85 -p2 -%patch86 -p2 # At least python2_version needs to be a macro so that it's visible in # %%install as well. @@ -1549,6 +1546,10 @@ fi %{_mandir}/man1/bjam.1* %changelog +* Mon Jul 24 2017 Björn Esser - 1.64.0-0.4 +- Drop obsolete patch for mpi serialization make_array +- Purge unused patches from repo + * Mon Jul 24 2017 Björn Esser - 1.64.0-0.3 - Add patch to fix make_array in serialization