diff --git a/boost-1.50.0-fix-non-utf8-files.patch b/boost-1.50.0-fix-non-utf8-files.patch deleted file mode 100644 index 469b35d..0000000 --- a/boost-1.50.0-fix-non-utf8-files.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/libs/units/example/autoprefixes.cpp b/libs/units/example/autoprefixes.cpp -index 8b2bc43..d04f2fe 100644 ---- a/libs/units/example/autoprefixes.cpp -+++ b/libs/units/example/autoprefixes.cpp -@@ -67,7 +67,7 @@ struct thing_base_unit : boost::units::base_unit - { - static constexpr const char* name() { return("EUR"); } -- static constexpr const char* symbol() { return("€"); } -+ static constexpr const char* symbol() { return("€"); } - }; - - int main() -@@ -140,7 +140,7 @@ int main() - - quantity ce = 2048. * euro_base_unit::unit_type(); - cout << name_format << engineering_prefix << ce << endl; // 2.048 kiloEUR -- cout << symbol_format << engineering_prefix << ce << endl; // 2.048 k€ -+ cout << symbol_format << engineering_prefix << ce << endl; // 2.048 k€ - - - return 0; diff --git a/boost-1.69-format-allocator.patch b/boost-1.69-format-allocator.patch deleted file mode 100644 index 28c43a8..0000000 --- a/boost-1.69-format-allocator.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- boost_1_69_0/boost/format/alt_sstream_impl.hpp~ 2020-03-30 15:20:18.565658757 +0100 -+++ boost_1_69_0/boost/format/alt_sstream_impl.hpp 2020-03-30 15:20:33.768636162 +0100 -@@ -40,8 +40,11 @@ - #ifdef _RWSTD_NO_CLASS_PARTIAL_SPEC - void *vd_ptr = alloc_.allocate(sz, is_allocated_? eback() : 0); - Ch *new_ptr = static_cast(vd_ptr); --#else -+#elif defined BOOST_NO_CXX11_ALLOCATOR - Ch *new_ptr = alloc_.allocate(sz, is_allocated_? eback() : 0); -+#else -+ Ch *new_ptr = std::allocator_traits::allocate(alloc_, -+ sz, is_allocated_? eback() : 0); - #endif - // if this didnt throw, we're safe, update the buffer - dealloc(); -@@ -257,8 +260,11 @@ - #ifdef _RWSTD_NO_CLASS_PARTIAL_SPEC - void *vdptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0); - newptr = static_cast(vdptr); --#else -+#elif defined BOOST_NO_CXX11_ALLOCATOR - newptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0); -+#else -+ newptr = std::allocator_traits::allocate(alloc_, -+ new_size, is_allocated_? oldptr : 0); - #endif - } - diff --git a/boost-1.69.0-test-cxx20.patch b/boost-1.69.0-test-cxx20.patch deleted file mode 100644 index be1b52c..0000000 --- a/boost-1.69.0-test-cxx20.patch +++ /dev/null @@ -1,27 +0,0 @@ -From db6b98c72783351e0acd3c558691323a7a103ba9 Mon Sep 17 00:00:00 2001 -From: Raffi Enficiaud -Date: Sat, 9 May 2020 10:42:38 +0200 -Subject: [PATCH] Fixing cast issue when logging wchar_t - ---- - include/boost/test/impl/test_tools.ipp | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/include/boost/test/impl/test_tools.ipp b/include/boost/test/impl/test_tools.ipp -index 025cd1a92a..bbee21fbbc 100644 ---- a/include/boost/test/impl/test_tools.ipp -+++ b/include/boost/test/impl/test_tools.ipp -@@ -124,7 +124,12 @@ print_log_value::operator()( std::ostream& ostr, char const* t ) - void - print_log_value::operator()( std::ostream& ostr, wchar_t const* t ) - { -- ostr << ( t ? reinterpret_cast(t) : "null string" ); -+ if(t) { -+ ostr << static_cast(t); -+ } -+ else { -+ ostr << "null w-string"; -+ } - } - - //____________________________________________________________________________// diff --git a/boost-1.73-geometry-issue721.patch b/boost-1.73-geometry-issue721.patch deleted file mode 100644 index 0e843b9..0000000 --- a/boost-1.73-geometry-issue721.patch +++ /dev/null @@ -1,23 +0,0 @@ -From aafbceccc76dccb75963dd4f596fd1f10ee34b03 Mon Sep 17 00:00:00 2001 -From: Jonathan Wakely -Date: Fri, 5 Jun 2020 19:29:27 +0100 -Subject: [PATCH] Make index::detail::rtree::visitors::insert base class public - -Fixes #721 ---- - include/boost/geometry/index/detail/rtree/visitors/insert.hpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/boost/geometry/index/detail/rtree/visitors/insert.hpp b/include/boost/geometry/index/detail/rtree/visitors/insert.hpp -index 2d324cb7f4..5709a930cc 100644 ---- a/boost/geometry/index/detail/rtree/visitors/insert.hpp -+++ b/boost/geometry/index/detail/rtree/visitors/insert.hpp -@@ -265,7 +265,7 @@ struct insert_traverse_data - // Default insert visitor - template - class insert -- : MembersHolder::visitor -+ : public MembersHolder::visitor - { - protected: - typedef typename MembersHolder::box_type box_type; diff --git a/boost-1.73-mpi-vector-data.patch b/boost-1.73-mpi-vector-data.patch deleted file mode 100644 index 4fe162a..0000000 --- a/boost-1.73-mpi-vector-data.patch +++ /dev/null @@ -1,534 +0,0 @@ -From 28a73eac54fbc7cfebfd3b2231ee607284233a00 Mon Sep 17 00:00:00 2001 -From: Florian Weik -Date: Wed, 10 Jun 2020 10:18:21 +0200 -Subject: [PATCH 1/4] fixed ub access to first element of empty vectors - ---- - include/boost/mpi/collectives/all_reduce.hpp | 2 +- - include/boost/mpi/collectives/all_to_all.hpp | 12 ++++++------ - include/boost/mpi/collectives/gatherv.hpp | 8 ++++---- - include/boost/mpi/collectives/reduce.hpp | 4 ++-- - include/boost/mpi/collectives/scatter.hpp | 2 +- - include/boost/mpi/collectives/scatterv.hpp | 4 ++-- - .../mpi/detail/binary_buffer_iprimitive.hpp | 4 ++-- - .../mpi/detail/binary_buffer_oprimitive.hpp | 2 +- - .../mpi/detail/mpi_datatype_primitive.hpp | 2 +- - include/boost/mpi/detail/packed_iprimitive.hpp | 4 ++-- - include/boost/mpi/detail/packed_oprimitive.hpp | 4 ++-- - include/boost/mpi/detail/request_handlers.hpp | 4 ++-- - include/boost/mpi/graph_communicator.hpp | 4 ++-- - include/boost/mpi/group.hpp | 9 +++++---- - include/boost/mpi/nonblocking.hpp | 18 +++++++++--------- - src/cartesian_communicator.cpp | 3 ++- - 16 files changed, 44 insertions(+), 42 deletions(-) - -diff --git a/include/boost/mpi/collectives/all_reduce.hpp b/include/boost/mpi/collectives/all_reduce.hpp -index e6ce93c8..302430ff 100644 ---- a/boost/mpi/collectives/all_reduce.hpp -+++ b/boost/mpi/collectives/all_reduce.hpp -@@ -77,7 +77,7 @@ namespace detail { - // implementation in this case. - // it's not clear how/if we can avoid the copy. - std::vector tmp_in( out_values, out_values + n); -- reduce(comm, &(tmp_in[0]), n, out_values, op, 0); -+ reduce(comm, detail::c_data(tmp_in), n, out_values, op, 0); - } else { - reduce(comm, in_values, n, out_values, op, 0); - } -diff --git a/include/boost/mpi/collectives/all_to_all.hpp b/include/boost/mpi/collectives/all_to_all.hpp -index 4f20be73..a0af5ff3 100644 ---- a/boost/mpi/collectives/all_to_all.hpp -+++ b/boost/mpi/collectives/all_to_all.hpp -@@ -91,10 +91,10 @@ namespace detail { - - // Transmit the actual data - BOOST_MPI_CHECK_RESULT(MPI_Alltoallv, -- (&outgoing[0], &send_sizes[0], -- &send_disps[0], MPI_PACKED, -- &incoming[0], &recv_sizes[0], -- &recv_disps[0], MPI_PACKED, -+ (detail::c_data(outgoing), detail::c_data(send_sizes), -+ detail::c_data(send_disps), MPI_PACKED, -+ detail::c_data(incoming), detail::c_data(recv_sizes), -+ detail::c_data(recv_disps), MPI_PACKED, - comm)); - - // Deserialize data from the iarchive -@@ -126,7 +126,7 @@ all_to_all(const communicator& comm, const std::vector& in_values, - { - BOOST_ASSERT((int)in_values.size() == comm.size()); - out_values.resize(comm.size()); -- ::boost::mpi::all_to_all(comm, &in_values[0], &out_values[0]); -+ ::boost::mpi::all_to_all(comm, detail::c_data(in_values), detail::c_data(out_values)); - } - - template -@@ -143,7 +143,7 @@ all_to_all(const communicator& comm, const std::vector& in_values, int n, - { - BOOST_ASSERT((int)in_values.size() == comm.size() * n); - out_values.resize(comm.size() * n); -- ::boost::mpi::all_to_all(comm, &in_values[0], n, &out_values[0]); -+ ::boost::mpi::all_to_all(comm, detail::c_data(in_values), n, detail::c_data(out_values)); - } - - } } // end namespace boost::mpi -diff --git a/include/boost/mpi/collectives/gatherv.hpp b/include/boost/mpi/collectives/gatherv.hpp -index 6b8d706f..5fae9942 100644 ---- a/boost/mpi/collectives/gatherv.hpp -+++ b/boost/mpi/collectives/gatherv.hpp -@@ -87,7 +87,7 @@ gatherv(const communicator& comm, const T* in_values, int in_size, - { - if (comm.rank() == root) - detail::gatherv_impl(comm, in_values, in_size, -- out_values, &sizes[0], &displs[0], -+ out_values, detail::c_data(sizes), detail::c_data(displs), - root, is_mpi_datatype()); - else - detail::gatherv_impl(comm, in_values, in_size, root, is_mpi_datatype()); -@@ -99,7 +99,7 @@ gatherv(const communicator& comm, const std::vector& in_values, - T* out_values, const std::vector& sizes, const std::vector& displs, - int root) - { -- ::boost::mpi::gatherv(comm, &in_values[0], in_values.size(), out_values, sizes, displs, root); -+ ::boost::mpi::gatherv(comm, detail::c_data(in_values), in_values.size(), out_values, sizes, displs, root); - } - - template -@@ -113,7 +113,7 @@ template - void gatherv(const communicator& comm, const std::vector& in_values, int root) - { - BOOST_ASSERT(comm.rank() != root); -- detail::gatherv_impl(comm, &in_values[0], in_values.size(), root, is_mpi_datatype()); -+ detail::gatherv_impl(comm, detail::c_data(in_values), in_values.size(), root, is_mpi_datatype()); - } - - /////////////////////// -@@ -139,7 +139,7 @@ void - gatherv(const communicator& comm, const std::vector& in_values, - T* out_values, const std::vector& sizes, int root) - { -- ::boost::mpi::gatherv(comm, &in_values[0], in_values.size(), out_values, sizes, root); -+ ::boost::mpi::gatherv(comm, detail::c_data(in_values), in_values.size(), out_values, sizes, root); - } - - } } // end namespace boost::mpi -diff --git a/include/boost/mpi/collectives/reduce.hpp b/include/boost/mpi/collectives/reduce.hpp -index 3248e324..76a28212 100644 ---- a/boost/mpi/collectives/reduce.hpp -+++ b/boost/mpi/collectives/reduce.hpp -@@ -335,7 +335,7 @@ void - reduce(const communicator & comm, std::vector const & in_values, Op op, - int root) - { -- reduce(comm, &in_values.front(), in_values.size(), op, root); -+ reduce(comm, detail::c_data(in_values), in_values.size(), op, root); - } - - template -@@ -344,7 +344,7 @@ reduce(const communicator & comm, std::vector const & in_values, - std::vector & out_values, Op op, int root) - { - if (root == comm.rank()) out_values.resize(in_values.size()); -- reduce(comm, &in_values.front(), in_values.size(), &out_values.front(), op, -+ reduce(comm, detail::c_data(in_values), in_values.size(), detail::c_data(out_values), op, - root); - } - -diff --git a/include/boost/mpi/collectives/scatter.hpp b/include/boost/mpi/collectives/scatter.hpp -index ae3adcbc..f967060a 100644 ---- a/boost/mpi/collectives/scatter.hpp -+++ b/boost/mpi/collectives/scatter.hpp -@@ -188,7 +188,7 @@ void - scatter(const communicator& comm, const std::vector& in_values, - T* out_values, int n, int root) - { -- ::boost::mpi::scatter(comm, &in_values[0], out_values, n, root); -+ ::boost::mpi::scatter(comm, detail::c_data(in_values), out_values, n, root); - } - - template -diff --git a/include/boost/mpi/collectives/scatterv.hpp b/include/boost/mpi/collectives/scatterv.hpp -index f53f704b..7f2fd129 100644 ---- a/boost/mpi/collectives/scatterv.hpp -+++ b/boost/mpi/collectives/scatterv.hpp -@@ -142,7 +142,7 @@ void - scatterv(const communicator& comm, const std::vector& in_values, - const std::vector& sizes, T* out_values, int root) - { -- ::boost::mpi::scatterv(comm, &in_values[0], sizes, out_values, root); -+ ::boost::mpi::scatterv(comm, detail::c_data(in_values), sizes, out_values, root); - } - - template -@@ -159,7 +159,7 @@ void - scatterv(const communicator& comm, const std::vector& in_values, - T* out_values, int out_size, int root) - { -- ::boost::mpi::scatterv(comm, &in_values[0], out_values, out_size, root); -+ ::boost::mpi::scatterv(comm, detail::c_data(in_values), out_values, out_size, root); - } - - } } // end namespace boost::mpi -diff --git a/include/boost/mpi/detail/binary_buffer_iprimitive.hpp b/include/boost/mpi/detail/binary_buffer_iprimitive.hpp -index 388cd44c..087d8529 100644 ---- a/boost/mpi/detail/binary_buffer_iprimitive.hpp -+++ b/boost/mpi/detail/binary_buffer_iprimitive.hpp -@@ -41,12 +41,12 @@ class BOOST_MPI_DECL binary_buffer_iprimitive - - void* address () - { -- return &buffer_.front(); -+ return detail::c_data(buffer_); - } - - void const* address () const - { -- return &buffer_.front(); -+ return detail::c_data(buffer_); - } - - const std::size_t& size() const -diff --git a/include/boost/mpi/detail/binary_buffer_oprimitive.hpp b/include/boost/mpi/detail/binary_buffer_oprimitive.hpp -index 313097b7..fa0645d7 100644 ---- a/boost/mpi/detail/binary_buffer_oprimitive.hpp -+++ b/boost/mpi/detail/binary_buffer_oprimitive.hpp -@@ -40,7 +40,7 @@ class BOOST_MPI_DECL binary_buffer_oprimitive - - void const * address() const - { -- return &buffer_.front(); -+ return detail::c_data(buffer_); - } - - const std::size_t& size() const -diff --git a/include/boost/mpi/detail/mpi_datatype_primitive.hpp b/include/boost/mpi/detail/mpi_datatype_primitive.hpp -index fc05d786..5b3cdf54 100644 ---- a/boost/mpi/detail/mpi_datatype_primitive.hpp -+++ b/boost/mpi/detail/mpi_datatype_primitive.hpp -@@ -133,7 +133,7 @@ class mpi_datatype_primitive - template - static T* get_data(std::vector& v) - { -- return v.empty() ? 0 : &(v[0]); -+ return detail::c_data(v); - } - - std::vector addresses; -diff --git a/include/boost/mpi/detail/packed_iprimitive.hpp b/include/boost/mpi/detail/packed_iprimitive.hpp -index 85a4010f..e402a20a 100644 ---- a/boost/mpi/detail/packed_iprimitive.hpp -+++ b/boost/mpi/detail/packed_iprimitive.hpp -@@ -39,12 +39,12 @@ class BOOST_MPI_DECL packed_iprimitive - - void* address () - { -- return &buffer_[0]; -+ return detail::c_data(buffer_); - } - - void const* address () const - { -- return &buffer_[0]; -+ return detail::c_data(buffer_); - } - - const std::size_t& size() const -diff --git a/include/boost/mpi/detail/packed_oprimitive.hpp b/include/boost/mpi/detail/packed_oprimitive.hpp -index 4ca8e072..c9ce44dc 100644 ---- a/boost/mpi/detail/packed_oprimitive.hpp -+++ b/boost/mpi/detail/packed_oprimitive.hpp -@@ -38,7 +38,7 @@ class BOOST_MPI_DECL packed_oprimitive - - void const * address() const - { -- return &buffer_[0]; -+ return detail::c_data(buffer_); - } - - const std::size_t& size() const -@@ -114,7 +114,7 @@ class BOOST_MPI_DECL packed_oprimitive - - static buffer_type::value_type* get_data(buffer_type& b) - { -- return b.empty() ? 0 : &(b[0]); -+ return detail::c_data(b); - } - - buffer_type& buffer_; -diff --git a/include/boost/mpi/detail/request_handlers.hpp b/include/boost/mpi/detail/request_handlers.hpp -index 50a22ec3..8283918b 100644 ---- a/boost/mpi/detail/request_handlers.hpp -+++ b/boost/mpi/detail/request_handlers.hpp -@@ -456,7 +456,7 @@ class request::legacy_dynamic_primitive_array_handler - // Resize our buffer and get ready to receive its data - this->extra::m_values.resize(this->extra::m_count); - BOOST_MPI_CHECK_RESULT(MPI_Irecv, -- (&(this->extra::m_values[0]), this->extra::m_values.size(), get_mpi_datatype(), -+ (detail::c_data(this->extra::m_values), this->extra::m_values.size(), get_mpi_datatype(), - stat.source(), stat.tag(), - MPI_Comm(m_comm), m_requests + 1)); - } -@@ -478,7 +478,7 @@ class request::legacy_dynamic_primitive_array_handler - // Resize our buffer and get ready to receive its data - this->extra::m_values.resize(this->extra::m_count); - BOOST_MPI_CHECK_RESULT(MPI_Irecv, -- (&(this->extra::m_values[0]), this->extra::m_values.size(), get_mpi_datatype(), -+ (detail::c_data(this->extra::m_values), this->extra::m_values.size(), get_mpi_datatype(), - stat.source(), stat.tag(), - MPI_Comm(m_comm), m_requests + 1)); - } else -diff --git a/include/boost/mpi/graph_communicator.hpp b/include/boost/mpi/graph_communicator.hpp -index d49703eb..5bd1cf28 100644 ---- a/boost/mpi/graph_communicator.hpp -+++ b/boost/mpi/graph_communicator.hpp -@@ -235,8 +235,8 @@ graph_communicator::setup_graph(const communicator& comm, const Graph& graph, - BOOST_MPI_CHECK_RESULT(MPI_Graph_create, - ((MPI_Comm)comm, - nvertices, -- &indices[0], -- edges.empty()? (int*)0 : &edges[0], -+ detail::c_data(indices), -+ detail::c_data(edges), - reorder, - &newcomm)); - this->comm_ptr.reset(new MPI_Comm(newcomm), comm_free()); -diff --git a/include/boost/mpi/group.hpp b/include/boost/mpi/group.hpp -index 103b35a1..7be24df1 100644 ---- a/boost/mpi/group.hpp -+++ b/boost/mpi/group.hpp -@@ -16,6 +16,7 @@ - #define BOOST_MPI_GROUP_HPP - - #include -+#include - #include - #include - #include -@@ -272,9 +273,9 @@ group::translate_ranks(InputIterator first, InputIterator last, - BOOST_MPI_CHECK_RESULT(MPI_Group_translate_ranks, - ((MPI_Group)*this, - in_array.size(), -- &in_array[0], -+ detail::c_data(in_array), - (MPI_Group)to_group, -- &out_array[0])); -+ detail::c_data(out_array))); - - for (std::vector::size_type i = 0, n = out_array.size(); i < n; ++i) - *out++ = out_array[i]; -@@ -300,7 +301,7 @@ group group::include(InputIterator first, InputIterator last) - std::vector ranks(first, last); - MPI_Group result; - BOOST_MPI_CHECK_RESULT(MPI_Group_incl, -- ((MPI_Group)*this, ranks.size(), &ranks[0], &result)); -+ ((MPI_Group)*this, ranks.size(), detail::c_data(ranks), &result)); - return group(result, /*adopt=*/true); - } - -@@ -322,7 +323,7 @@ group group::exclude(InputIterator first, InputIterator last) - std::vector ranks(first, last); - MPI_Group result; - BOOST_MPI_CHECK_RESULT(MPI_Group_excl, -- ((MPI_Group)*this, ranks.size(), &ranks[0], &result)); -+ ((MPI_Group)*this, ranks.size(), detail::c_data(ranks), &result)); - return group(result, /*adopt=*/true); - } - -diff --git a/include/boost/mpi/nonblocking.hpp b/include/boost/mpi/nonblocking.hpp -index fe944be8..5ffd00f7 100644 ---- a/boost/mpi/nonblocking.hpp -+++ b/boost/mpi/nonblocking.hpp -@@ -91,7 +91,7 @@ wait_any(ForwardIterator first, ForwardIterator last) - int index; - status stat; - BOOST_MPI_CHECK_RESULT(MPI_Waitany, -- (n, &requests[0], &index, &stat.m_status)); -+ (n, detail::c_data(requests), &index, &stat.m_status)); - - // We don't have a notion of empty requests or status objects, - // so this is an error. -@@ -222,8 +222,8 @@ wait_all(ForwardIterator first, ForwardIterator last, OutputIterator out) - // Let MPI wait until all of these operations completes. - std::vector stats(num_outstanding_requests); - BOOST_MPI_CHECK_RESULT(MPI_Waitall, -- (num_outstanding_requests, &requests[0], -- &stats[0])); -+ (num_outstanding_requests, detail::c_data(requests), -+ detail::c_data(stats))); - - for (std::vector::iterator i = stats.begin(); - i != stats.end(); ++i, ++out) { -@@ -289,7 +289,7 @@ wait_all(ForwardIterator first, ForwardIterator last) - - // Let MPI wait until all of these operations completes. - BOOST_MPI_CHECK_RESULT(MPI_Waitall, -- (num_outstanding_requests, &requests[0], -+ (num_outstanding_requests, detail::c_data(requests), - MPI_STATUSES_IGNORE)); - - // Signal completion -@@ -346,7 +346,7 @@ test_all(ForwardIterator first, ForwardIterator last, OutputIterator out) - int flag = 0; - int n = requests.size(); - std::vector stats(n); -- BOOST_MPI_CHECK_RESULT(MPI_Testall, (n, &requests[0], &flag, &stats[0])); -+ BOOST_MPI_CHECK_RESULT(MPI_Testall, (n, detail::c_data(requests), &flag, detail::c_data(stats))); - if (flag) { - for (int i = 0; i < n; ++i, ++out) { - status stat; -@@ -379,7 +379,7 @@ test_all(ForwardIterator first, ForwardIterator last) - int flag = 0; - int n = requests.size(); - BOOST_MPI_CHECK_RESULT(MPI_Testall, -- (n, &requests[0], &flag, MPI_STATUSES_IGNORE)); -+ (n, detail::c_data(requests), &flag, MPI_STATUSES_IGNORE)); - return flag != 0; - } - -@@ -483,8 +483,8 @@ wait_some(BidirectionalIterator first, BidirectionalIterator last, - // Let MPI wait until some of these operations complete. - int num_completed; - BOOST_MPI_CHECK_RESULT(MPI_Waitsome, -- (n, &requests[0], &num_completed, &indices[0], -- &stats[0])); -+ (n, detail::c_data(requests), &num_completed, detail::c_data(indices), -+ detail::c_data(stats))); - - // Translate the index-based result of MPI_Waitsome into a - // partitioning on the requests. -@@ -591,7 +591,7 @@ wait_some(BidirectionalIterator first, BidirectionalIterator last) - // Let MPI wait until some of these operations complete. - int num_completed; - BOOST_MPI_CHECK_RESULT(MPI_Waitsome, -- (n, &requests[0], &num_completed, &indices[0], -+ (n, detail::c_data(requests), &num_completed, detail::c_data(indices), - MPI_STATUSES_IGNORE)); - - // Translate the index-based result of MPI_Waitsome into a -diff --git a/src/cartesian_communicator.cpp b/src/cartesian_communicator.cpp -index a46f0bc2..3b15eb0d 100644 ---- a/libs/mpi/src/cartesian_communicator.cpp -+++ b/libs/mpi/src/cartesian_communicator.cpp -@@ -10,12 +10,13 @@ - #include - - #include -+#include - - namespace boost { namespace mpi { - - namespace { - template -- T* c_data(std::vector& v) { return &(v[0]); } -+ T* c_data(std::vector& v) { return c_data(v); } - } - - std::ostream& - -From 5a8e9efe89ba00e32713fd777a82bc8f30a0900d Mon Sep 17 00:00:00 2001 -From: Florian Weik -Date: Wed, 10 Jun 2020 11:04:23 +0200 -Subject: [PATCH 2/4] added test with empty vector - ---- - test/block_nonblock_test.cpp | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/test/block_nonblock_test.cpp b/test/block_nonblock_test.cpp -index 3088b655..2ec02256 100644 ---- a/libs/mpi/test/block_nonblock_test.cpp -+++ b/libs/mpi/test/block_nonblock_test.cpp -@@ -82,7 +82,12 @@ BOOST_AUTO_TEST_CASE(non_blocking) - fmt << "S" << i; - strings[i] = fmt.str(); - } -- -+ -+ std::vector empty; -+ -+ BOOST_CHECK(test(world, empty, false, true)); -+ BOOST_CHECK(test(world, empty, false, false)); -+ - BOOST_CHECK(test(world, integers, true, true)); - BOOST_CHECK(test(world, integers, true, false)); - BOOST_CHECK(test(world, strings, true, true)); - -From 5e8edd184cb0d5af842392eb58dd797a23241615 Mon Sep 17 00:00:00 2001 -From: Florian Weik -Date: Thu, 11 Jun 2020 14:59:45 +0200 -Subject: [PATCH 4/4] fixed cartesian communicator - ---- - src/cartesian_communicator.cpp | 17 ++++++----------- - 1 file changed, 6 insertions(+), 11 deletions(-) - -diff --git a/src/cartesian_communicator.cpp b/src/cartesian_communicator.cpp -index 3b15eb0d..946d41fd 100644 ---- a/libs/mpi/src/cartesian_communicator.cpp -+++ b/libs/mpi/src/cartesian_communicator.cpp -@@ -14,11 +14,6 @@ - - namespace boost { namespace mpi { - --namespace { -- template -- T* c_data(std::vector& v) { return c_data(v); } --} -- - std::ostream& - operator<<(std::ostream& out, cartesian_dimension const& d) { - out << '(' << d.size << ','; -@@ -64,7 +59,7 @@ cartesian_communicator::cartesian_communicator(const communicator& comm, - MPI_Comm newcomm; - BOOST_MPI_CHECK_RESULT(MPI_Cart_create, - ((MPI_Comm)comm, dims.size(), -- c_data(dims), c_data(periodic), -+ detail::c_data(dims), detail::c_data(periodic), - int(reorder), &newcomm)); - if(newcomm != MPI_COMM_NULL) { - comm_ptr.reset(new MPI_Comm(newcomm), comm_free()); -@@ -86,7 +81,7 @@ cartesian_communicator::cartesian_communicator(const cartesian_communicator& com - - MPI_Comm newcomm; - BOOST_MPI_CHECK_RESULT(MPI_Cart_sub, -- ((MPI_Comm)comm, c_data(bitset), &newcomm)); -+ ((MPI_Comm)comm, detail::c_data(bitset), &newcomm)); - if(newcomm != MPI_COMM_NULL) { - comm_ptr.reset(new MPI_Comm(newcomm), comm_free()); - } -@@ -105,7 +100,7 @@ cartesian_communicator::rank(const std::vector& coords ) const { - int r = -1; - assert(int(coords.size()) == ndims()); - BOOST_MPI_CHECK_RESULT(MPI_Cart_rank, -- (MPI_Comm(*this), c_data(const_cast&>(coords)), -+ (MPI_Comm(*this), detail::c_data(const_cast&>(coords)), - &r)); - return r; - } -@@ -123,7 +118,7 @@ std::vector - cartesian_communicator::coordinates(int rk) const { - std::vector cbuf(ndims()); - BOOST_MPI_CHECK_RESULT(MPI_Cart_coords, -- (MPI_Comm(*this), rk, cbuf.size(), c_data(cbuf) )); -+ (MPI_Comm(*this), rk, cbuf.size(), detail::c_data(cbuf) )); - return cbuf; - } - -@@ -136,7 +131,7 @@ cartesian_communicator::topology( cartesian_topology& topo, - std::vector cdims(ndims); - std::vector cperiods(ndims); - BOOST_MPI_CHECK_RESULT(MPI_Cart_get, -- (MPI_Comm(*this), ndims, c_data(cdims), c_data(cperiods), c_data(coords))); -+ (MPI_Comm(*this), ndims, detail::c_data(cdims), detail::c_data(cperiods), detail::c_data(coords))); - cartesian_topology res(cdims.begin(), cperiods.begin(), ndims); - topo.swap(res); - } -@@ -173,7 +168,7 @@ cartesian_dimensions(int sz, std::vector& dims) { - int leftover = sz % min; - - BOOST_MPI_CHECK_RESULT(MPI_Dims_create, -- (sz-leftover, dims.size(), c_data(dims))); -+ (sz-leftover, dims.size(), detail::c_data(dims))); - return dims; - } - diff --git a/boost-1.73-python3.10-Py_fopen.patch b/boost-1.73-python3.10-Py_fopen.patch deleted file mode 100644 index 047403f..0000000 --- a/boost-1.73-python3.10-Py_fopen.patch +++ /dev/null @@ -1,29 +0,0 @@ -From ba90b0adffb5fedc894889b0962c22fff5bb748d Mon Sep 17 00:00:00 2001 -From: Tomas Hrnciar -Date: Thu, 7 Jan 2021 11:46:29 +0100 -Subject: [PATCH] fix Boost with Python 3.10 - ---- - src/exec.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/exec.cpp b/src/exec.cpp -index 171c6f41..caa7d086 100644 ---- a/libs/python/src/exec.cpp -+++ b/libs/python/src/exec.cpp -@@ -106,10 +106,10 @@ object BOOST_PYTHON_DECL exec_file(char const *filename, object global, object l - char *f = const_cast(filename); - // Let python open the file to avoid potential binary incompatibilities. - #if PY_VERSION_HEX >= 0x03040000 -- FILE *fs = _Py_fopen(f, "r"); -+ FILE *fs = fopen(f, "r"); - #elif PY_VERSION_HEX >= 0x03000000 - PyObject *fo = Py_BuildValue("s", f); -- FILE *fs = _Py_fopen(fo, "r"); -+ FILE *fs = fopen(fo, "r"); - Py_DECREF(fo); - #else - PyObject *pyfile = PyFile_FromString(f, const_cast("r")); --- -2.29.2 - diff --git a/boost-1.73.0-beast-coroutines.patch b/boost-1.73.0-beast-coroutines.patch deleted file mode 100644 index a95b5f3..0000000 --- a/boost-1.73.0-beast-coroutines.patch +++ /dev/null @@ -1,1466 +0,0 @@ -diff -aruN a/boost/beast/core/detail/impl/read.hpp b/boost/beast/core/detail/impl/read.hpp ---- a/boost/beast/core/detail/impl/read.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/core/detail/impl/read.hpp 2020-05-02 13:50:11.141761700 -0400 -@@ -214,7 +214,7 @@ - class AsyncReadStream, - class DynamicBuffer, - class CompletionCondition, -- class ReadHandler, -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler, - class> - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - async_read( -diff -aruN a/boost/beast/core/detail/is_invocable.hpp b/boost/beast/core/detail/is_invocable.hpp ---- a/boost/beast/core/detail/is_invocable.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/core/detail/is_invocable.hpp 2020-05-02 13:50:11.141761700 -0400 -@@ -10,6 +10,8 @@ - #ifndef BOOST_BEAST_DETAIL_IS_INVOCABLE_HPP - #define BOOST_BEAST_DETAIL_IS_INVOCABLE_HPP - -+#include -+#include - #include - #include - -@@ -51,6 +53,26 @@ - }; - /** @} */ - -+template -+struct is_completion_token_for : std::false_type -+{ -+}; -+ -+struct any_initiation -+{ -+ template -+ void operator()(AnyArgs&&...); -+}; -+ -+template -+struct is_completion_token_for< -+ CompletionToken, R(Args...), boost::void_t( -+ any_initiation(), std::declval()) -+ )>> : std::true_type -+{ -+}; -+ - } // detail - } // beast - } // boost -diff -aruN a/boost/beast/core/detail/read.hpp b/boost/beast/core/detail/read.hpp ---- a/boost/beast/core/detail/read.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/core/detail/read.hpp 2020-05-02 13:50:11.142761711 -0400 -@@ -219,7 +219,7 @@ - class AsyncReadStream, - class DynamicBuffer, - class CompletionCondition, -- class ReadHandler -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler - #if ! BOOST_BEAST_DOXYGEN - , class = typename std::enable_if< - is_async_read_stream::value && -diff -aruN a/boost/beast/core/detect_ssl.hpp b/boost/beast/core/detect_ssl.hpp ---- a/boost/beast/core/detect_ssl.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/core/detect_ssl.hpp 2020-05-02 13:50:11.143761722 -0400 -@@ -374,13 +374,13 @@ - void operator()( - DetectHandler&& h, - AsyncReadStream* s, // references are passed as pointers -- DynamicBuffer& b) -+ DynamicBuffer* b) - { - detect_ssl_op< - typename std::decay::type, - AsyncReadStream, - DynamicBuffer>( -- std::forward(h), *s, b); -+ std::forward(h), *s, *b); - } - }; - -@@ -439,7 +439,7 @@ - detail::run_detect_ssl_op{}, - token, - &stream, // pass the reference by pointer -- buffer); -+ &buffer); - } - - //] -diff -aruN a/boost/beast/core/impl/basic_stream.hpp b/boost/beast/core/impl/basic_stream.hpp ---- a/boost/beast/core/impl/basic_stream.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/core/impl/basic_stream.hpp 2020-05-02 13:50:11.144761733 -0400 -@@ -776,7 +776,7 @@ - //------------------------------------------------------------------------------ - - template --template -+template - BOOST_BEAST_ASYNC_RESULT1(ConnectHandler) - basic_stream:: - async_connect( -@@ -795,7 +795,7 @@ - template - template< - class EndpointSequence, -- class RangeConnectHandler, -+ BOOST_ASIO_COMPLETION_TOKEN_FOR(void(error_code, typename Protocol::endpoint)) RangeConnectHandler, - class> - BOOST_ASIO_INITFN_RESULT_TYPE(RangeConnectHandler,void(error_code, typename Protocol::endpoint)) - basic_stream:: -@@ -817,7 +817,7 @@ - template< - class EndpointSequence, - class ConnectCondition, -- class RangeConnectHandler, -+ BOOST_ASIO_COMPLETION_TOKEN_FOR(void(error_code, typename Protocol::endpoint)) RangeConnectHandler, - class> - BOOST_ASIO_INITFN_RESULT_TYPE(RangeConnectHandler,void (error_code, typename Protocol::endpoint)) - basic_stream:: -@@ -839,7 +839,7 @@ - template - template< - class Iterator, -- class IteratorConnectHandler> -+ BOOST_ASIO_COMPLETION_TOKEN_FOR(void(error_code, Iterator)) IteratorConnectHandler> - BOOST_ASIO_INITFN_RESULT_TYPE(IteratorConnectHandler,void (error_code, Iterator)) - basic_stream:: - async_connect( -@@ -860,7 +860,7 @@ - template< - class Iterator, - class ConnectCondition, -- class IteratorConnectHandler> -+ BOOST_ASIO_COMPLETION_TOKEN_FOR(void(error_code, Iterator)) IteratorConnectHandler> - BOOST_ASIO_INITFN_RESULT_TYPE(IteratorConnectHandler,void (error_code, Iterator)) - basic_stream:: - async_connect( -@@ -881,7 +881,7 @@ - //------------------------------------------------------------------------------ - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - basic_stream:: - async_read_some( -@@ -901,7 +901,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - basic_stream:: - async_write_some( -diff -aruN a/boost/beast/core/impl/buffered_read_stream.hpp b/boost/beast/core/impl/buffered_read_stream.hpp ---- a/boost/beast/core/impl/buffered_read_stream.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/core/impl/buffered_read_stream.hpp 2020-05-02 13:50:11.144761733 -0400 -@@ -110,7 +110,7 @@ - operator()( - ReadHandler&& h, - buffered_read_stream* s, -- Buffers const& b) -+ Buffers const* b) - { - // If you get an error on the following line it means - // that your handler does not meet the documented type -@@ -124,7 +124,7 @@ - read_op< - Buffers, - typename std::decay::type>( -- std::forward(h), *s, b); -+ std::forward(h), *s, *b); - } - }; - -@@ -141,7 +141,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - buffered_read_stream:: - async_write_some( -@@ -153,7 +153,7 @@ - static_assert(net::is_const_buffer_sequence< - ConstBufferSequence>::value, - "ConstBufferSequence type requirements not met"); -- static_assert(detail::is_invocable::value, - "WriteHandler type requirements not met"); - return next_layer_.async_write_some(buffers, -@@ -212,7 +212,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - buffered_read_stream:: - async_read_some( -@@ -233,7 +233,7 @@ - typename ops::run_read_op{}, - handler, - this, -- buffers); -+ &buffers); - } - - } // beast -diff -aruN a/boost/beast/core/impl/flat_stream.hpp b/boost/beast/core/impl/flat_stream.hpp ---- a/boost/beast/core/impl/flat_stream.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/core/impl/flat_stream.hpp 2020-05-02 13:50:11.145761743 -0400 -@@ -144,7 +144,7 @@ - template - template< - class MutableBufferSequence, -- class ReadHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler> - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - flat_stream:: - async_read_some( -@@ -225,7 +225,7 @@ - template - template< - class ConstBufferSequence, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - flat_stream:: - async_write_some( -diff -aruN a/boost/beast/_experimental/http/impl/icy_stream.hpp b/boost/beast/_experimental/http/impl/icy_stream.hpp ---- a/boost/beast/_experimental/http/impl/icy_stream.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/_experimental/http/impl/icy_stream.hpp 2020-05-02 13:50:11.146761754 -0400 -@@ -259,7 +259,7 @@ - template - template< - class MutableBufferSequence, -- class ReadHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler> - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - icy_stream:: - async_read_some( -@@ -311,7 +311,7 @@ - template - template< - class MutableBufferSequence, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - icy_stream:: - async_write_some( -diff -aruN a/boost/beast/_experimental/test/impl/stream.hpp b/boost/beast/_experimental/test/impl/stream.hpp ---- a/boost/beast/_experimental/test/impl/stream.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/_experimental/test/impl/stream.hpp 2020-05-02 13:50:11.147761765 -0400 -@@ -306,7 +306,7 @@ - return 0; - } - --template -+template - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - stream:: - async_read_some( -@@ -386,7 +386,7 @@ - return n; - } - --template -+template - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - stream:: - async_write_some( -diff -aruN a/boost/beast/http/field.hpp b/boost/beast/http/field.hpp ---- a/boost/beast/http/field.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/http/field.hpp 2020-05-02 13:50:11.149761786 -0400 -@@ -396,12 +396,9 @@ - string_to_field(string_view s); - - /// Write the text for a field name to an output stream. --inline -+BOOST_BEAST_DECL - std::ostream& --operator<<(std::ostream& os, field f) --{ -- return os << to_string(f); --} -+operator<<(std::ostream& os, field f); - - } // http - } // beast -diff -aruN a/boost/beast/http/impl/field.ipp b/boost/beast/http/impl/field.ipp ---- a/boost/beast/http/impl/field.ipp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/http/impl/field.ipp 2020-05-02 13:50:11.150761798 -0400 -@@ -11,10 +11,12 @@ - #define BOOST_BEAST_HTTP_IMPL_FIELD_IPP - - #include -+#include - #include - #include - #include --#include -+#include -+ - - namespace boost { - namespace beast { -@@ -565,6 +567,12 @@ - return detail::get_field_table().string_to_field(s); - } - -+std::ostream& -+operator<<(std::ostream& os, field f) -+{ -+ return os << to_string(f); -+} -+ - } // http - } // beast - } // boost -diff -aruN a/boost/beast/http/impl/file_body_win32.hpp b/boost/beast/http/impl/file_body_win32.hpp ---- a/boost/beast/http/impl/file_body_win32.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/http/impl/file_body_win32.hpp 2020-05-02 13:50:11.150761798 -0400 -@@ -597,7 +597,7 @@ - template< - class Protocol, class Executor, - bool isRequest, class Fields, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - async_write_some( - net::basic_stream_socket< -diff -aruN a/boost/beast/http/impl/read.hpp b/boost/beast/http/impl/read.hpp ---- a/boost/beast/http/impl/read.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/http/impl/read.hpp 2020-05-02 13:50:11.150761798 -0400 -@@ -304,7 +304,7 @@ - class AsyncReadStream, - class DynamicBuffer, - bool isRequest, -- class ReadHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler> - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - async_read_some( - AsyncReadStream& stream, -@@ -373,7 +373,7 @@ - class AsyncReadStream, - class DynamicBuffer, - bool isRequest, -- class ReadHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler> - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - async_read_header( - AsyncReadStream& stream, -@@ -443,7 +443,7 @@ - class AsyncReadStream, - class DynamicBuffer, - bool isRequest, -- class ReadHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler> - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - async_read( - AsyncReadStream& stream, -@@ -531,7 +531,7 @@ - class AsyncReadStream, - class DynamicBuffer, - bool isRequest, class Body, class Allocator, -- class ReadHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 ReadHandler> - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - async_read( - AsyncReadStream& stream, -diff -aruN a/boost/beast/http/impl/write.hpp b/boost/beast/http/impl/write.hpp ---- a/boost/beast/http/impl/write.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/http/impl/write.hpp 2020-05-02 13:50:11.150761798 -0400 -@@ -463,7 +463,7 @@ - template< - class AsyncWriteStream, - bool isRequest, class Body, class Fields, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - async_write_some_impl( - AsyncWriteStream& stream, -@@ -526,7 +526,7 @@ - template< - class AsyncWriteStream, - bool isRequest, class Body, class Fields, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - async_write_some( - AsyncWriteStream& stream, -@@ -608,7 +608,7 @@ - template< - class AsyncWriteStream, - bool isRequest, class Body, class Fields, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - async_write_header( - AsyncWriteStream& stream, -@@ -681,7 +681,7 @@ - template< - class AsyncWriteStream, - bool isRequest, class Body, class Fields, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - async_write( - AsyncWriteStream& stream, -@@ -801,7 +801,7 @@ - template< - class AsyncWriteStream, - bool isRequest, class Body, class Fields, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - async_write( - AsyncWriteStream& stream, -@@ -830,7 +830,7 @@ - template< - class AsyncWriteStream, - bool isRequest, class Body, class Fields, -- class WriteHandler> -+ BOOST_BEAST_ASYNC_TPARAM2 WriteHandler> - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - async_write( - AsyncWriteStream& stream, -diff -aruN a/boost/beast/http/span_body.hpp b/boost/beast/http/span_body.hpp ---- a/boost/beast/http/span_body.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/http/span_body.hpp 2020-05-02 13:50:11.151761808 -0400 -@@ -36,8 +36,10 @@ - struct span_body - { - private: -- static_assert(std::is_pod::value, -- "POD requirements not met"); -+ static_assert( -+ std::is_trivial::value && -+ std::is_standard_layout::value, -+ "POD requirements not met"); - - public: - /** The type of container used for the body -diff -aruN a/boost/beast/ssl/ssl_stream.hpp b/boost/beast/ssl/ssl_stream.hpp ---- a/boost/beast/ssl/ssl_stream.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/ssl/ssl_stream.hpp 2020-05-02 13:50:11.151761808 -0400 -@@ -555,7 +555,7 @@ - need to ensure that all data is written before the asynchronous operation - completes. - */ -- template -+ template - BOOST_ASIO_INITFN_RESULT_TYPE(WriteHandler, void(boost::system::error_code, std::size_t)) - async_write_some(ConstBufferSequence const& buffers, - BOOST_ASIO_MOVE_ARG(WriteHandler) handler) -@@ -636,7 +636,7 @@ - if you need to ensure that the requested amount of data is read before - the asynchronous operation completes. - */ -- template -+ template - BOOST_ASIO_INITFN_RESULT_TYPE(ReadHandler, void(boost::system::error_code, std::size_t)) - async_read_some(MutableBufferSequence const& buffers, - BOOST_ASIO_MOVE_ARG(ReadHandler) handler) -diff -aruN a/boost/beast/version.hpp b/boost/beast/version.hpp ---- a/boost/beast/version.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/version.hpp 2020-05-02 13:50:11.151761808 -0400 -@@ -20,7 +20,7 @@ - This is a simple integer that is incremented by one every - time a set of code changes is merged to the develop branch. - */ --#define BOOST_BEAST_VERSION 290 -+#define BOOST_BEAST_VERSION 292 - - #define BOOST_BEAST_VERSION_STRING "Boost.Beast/" BOOST_STRINGIZE(BOOST_BEAST_VERSION) - -diff -aruN a/boost/beast/websocket/impl/accept.hpp b/boost/beast/websocket/impl/accept.hpp ---- a/boost/beast/websocket/impl/accept.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/websocket/impl/accept.hpp 2020-05-02 13:50:11.153761830 -0400 -@@ -542,7 +542,7 @@ - - template - template< -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - stream:: - async_accept( -@@ -564,7 +564,7 @@ - template - template< - class ResponseDecorator, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - stream:: - async_accept_ex( -@@ -590,7 +590,7 @@ - template - template< - class ConstBufferSequence, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - stream:: - async_accept( -@@ -621,7 +621,7 @@ - template< - class ConstBufferSequence, - class ResponseDecorator, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - stream:: - async_accept_ex( -@@ -654,7 +654,7 @@ - template - template< - class Body, class Allocator, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - stream:: - async_accept( -@@ -678,7 +678,7 @@ - template< - class Body, class Allocator, - class ResponseDecorator, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - stream:: - async_accept_ex( -diff -aruN a/boost/beast/websocket/impl/close.hpp b/boost/beast/websocket/impl/close.hpp ---- a/boost/beast/websocket/impl/close.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/websocket/impl/close.hpp 2020-05-02 13:50:11.153761830 -0400 -@@ -382,7 +382,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT1(CloseHandler) - stream:: - async_close(close_reason const& cr, CloseHandler&& handler) -diff -aruN a/boost/beast/websocket/impl/handshake.hpp b/boost/beast/websocket/impl/handshake.hpp ---- a/boost/beast/websocket/impl/handshake.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/websocket/impl/handshake.hpp 2020-05-02 13:50:11.153761830 -0400 -@@ -268,7 +268,7 @@ - //------------------------------------------------------------------------------ - - template --template -+template - BOOST_BEAST_ASYNC_RESULT1(HandshakeHandler) - stream:: - async_handshake( -@@ -293,7 +293,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT1(HandshakeHandler) - stream:: - async_handshake( -diff -aruN a/boost/beast/websocket/impl/ping.hpp b/boost/beast/websocket/impl/ping.hpp ---- a/boost/beast/websocket/impl/ping.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/websocket/impl/ping.hpp 2020-05-02 13:50:11.153761830 -0400 -@@ -288,7 +288,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT1(WriteHandler) - stream:: - async_ping(ping_data const& payload, WriteHandler&& handler) -@@ -306,7 +306,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT1(WriteHandler) - stream:: - async_pong(ping_data const& payload, WriteHandler&& handler) -diff -aruN a/boost/beast/websocket/impl/read.hpp b/boost/beast/websocket/impl/read.hpp ---- a/boost/beast/websocket/impl/read.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/websocket/impl/read.hpp 2020-05-02 13:50:11.153761830 -0400 -@@ -804,7 +804,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - stream:: - async_read(DynamicBuffer& buffer, ReadHandler&& handler) -@@ -878,7 +878,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - stream:: - async_read_some( -@@ -1263,7 +1263,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(ReadHandler) - stream:: - async_read_some( -diff -aruN a/boost/beast/websocket/impl/write.hpp b/boost/beast/websocket/impl/write.hpp ---- a/boost/beast/websocket/impl/write.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/websocket/impl/write.hpp 2020-05-02 13:50:11.153761830 -0400 -@@ -700,7 +700,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - stream:: - async_write_some(bool fin, -@@ -756,7 +756,7 @@ - } - - template --template -+template - BOOST_BEAST_ASYNC_RESULT2(WriteHandler) - stream:: - async_write( -diff -aruN a/boost/beast/websocket/stream.hpp b/boost/beast/websocket/stream.hpp ---- a/boost/beast/websocket/stream.hpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/boost/beast/websocket/stream.hpp 2020-05-02 13:50:11.154761841 -0400 -@@ -2634,7 +2634,7 @@ - - template< - class ResponseDecorator, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - async_accept_ex( - ResponseDecorator const& decorator, -@@ -2643,7 +2643,7 @@ - template< - class ConstBufferSequence, - class ResponseDecorator, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - async_accept_ex( - ConstBufferSequence const& buffers, -@@ -2656,7 +2656,7 @@ - template< - class Body, class Allocator, - class ResponseDecorator, -- class AcceptHandler> -+ BOOST_BEAST_ASYNC_TPARAM1 AcceptHandler> - BOOST_BEAST_ASYNC_RESULT1(AcceptHandler) - async_accept_ex( - http::request -+ template - typename net::async_result::return_type - async_read(AsyncReadStream& stream, net::mutable_buffer buffer, ReadHandler&& handler) - { -diff -aruN a/libs/beast/test/beast/core/basic_stream.cpp b/libs/beast/test/beast/core/basic_stream.cpp ---- a/libs/beast/test/beast/core/basic_stream.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/core/basic_stream.cpp 2020-05-02 13:51:02.470315892 -0400 -@@ -30,6 +30,13 @@ - #include - #include - -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#include -+#include -+#endif -+ -+ - namespace boost { - namespace beast { - -@@ -258,7 +265,7 @@ - { - string_view s_; - net::ip::tcp::socket socket_; -- -+ - public: - session( - string_view s, -@@ -1297,6 +1304,52 @@ - - //-------------------------------------------------------------------------- - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompilation( -+ basic_stream& stream, -+ net::mutable_buffer outbuf, -+ net::const_buffer inbuf, -+ net::ip::tcp::resolver::results_type resolve_results) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_read_some(outbuf, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_write_some(inbuf, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_connect( -+ resolve_results.begin(), -+ resolve_results.end(), -+ net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_connect( -+ resolve_results, -+ net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_connect( -+ resolve_results.begin()->endpoint(), -+ net::use_awaitable))>); -+ -+ auto comparison_function = [](error_code&, net::ip::tcp::endpoint) { return true; }; -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_connect( -+ resolve_results.begin(), -+ resolve_results.end(), -+ comparison_function, -+ net::use_awaitable))>); -+ } -+#endif -+ - void - run() - { -@@ -1307,6 +1360,11 @@ - testMembers(); - testJavadocs(); - testIssue1589(); -+ -+#if BOOST_ASIO_HAS_CO_AWAIT -+ // test for compilation success only -+ boost::ignore_unused(&basic_stream_test::testAwaitableCompilation); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/core/buffered_read_stream.cpp b/libs/beast/test/beast/core/buffered_read_stream.cpp ---- a/libs/beast/test/beast/core/buffered_read_stream.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/core/buffered_read_stream.cpp 2020-05-02 13:51:02.470315892 -0400 -@@ -21,6 +21,9 @@ - #include - #include - #include -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif - - namespace boost { - namespace beast { -@@ -211,6 +214,22 @@ - } - }; - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ buffered_read_stream& stream, -+ net::mutable_buffer rxbuf, -+ net::const_buffer txbuf) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_read_some(rxbuf, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_write_some(txbuf, net::use_awaitable))>); -+ } -+#endif -+ - void run() override - { - testSpecialMembers(); -@@ -221,6 +240,10 @@ - }); - - testAsyncLoop(); -+ -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&buffered_read_stream_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/core/detect_ssl.cpp b/libs/beast/test/beast/core/detect_ssl.cpp ---- a/libs/beast/test/beast/core/detect_ssl.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/core/detect_ssl.cpp 2020-05-02 13:51:02.470315892 -0400 -@@ -16,6 +16,11 @@ - #include - #include - #include -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#include -+#include -+#endif - namespace boost { - namespace beast { - -@@ -166,12 +171,25 @@ - } - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles(test::stream& stream, flat_buffer& b) -+ { -+ static_assert( -+ std::is_same_v< -+ net::awaitable, decltype( -+ async_detect_ssl(stream, b, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { - testDetect(); - testRead(); - testAsyncRead(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&detect_ssl_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/core/flat_stream.cpp b/libs/beast/test/beast/core/flat_stream.cpp ---- a/libs/beast/test/beast/core/flat_stream.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/core/flat_stream.cpp 2020-05-02 13:51:02.471315902 -0400 -@@ -17,6 +17,9 @@ - #include - #include - #include -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif - - namespace boost { - namespace beast { -@@ -208,11 +211,30 @@ - check({1,2,3,4}, 3, 3, true); - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ flat_stream& stream, -+ net::mutable_buffer rxbuf, -+ net::const_buffer txbuf) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_read_some(rxbuf, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ stream.async_write_some(txbuf, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { - testMembers(); - testSplit(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&flat_stream_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/core/stream_traits.cpp b/libs/beast/test/beast/core/stream_traits.cpp ---- a/libs/beast/test/beast/core/stream_traits.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/core/stream_traits.cpp 2020-05-02 13:51:02.471315902 -0400 -@@ -214,14 +214,14 @@ - struct async_read_stream - { - net::io_context::executor_type get_executor() noexcept; -- template -+ template - void async_read_some(MutableBufferSequence const&, ReadHandler&&); - }; - - struct async_write_stream - { - net::io_context::executor_type get_executor() noexcept; -- template -+ template - void async_write_some(ConstBufferSequence const&, WriteHandler&&); - }; - -@@ -232,9 +232,9 @@ - struct async_stream : async_read_stream, async_write_stream - { - net::io_context::executor_type get_executor() noexcept; -- template -+ template - void async_read_some(MutableBufferSequence const&, ReadHandler&&); -- template -+ template - void async_write_some(ConstBufferSequence const&, WriteHandler&&); - }; - -diff -aruN a/libs/beast/test/beast/http/CMakeLists.txt b/libs/beast/test/beast/http/CMakeLists.txt ---- a/libs/beast/test/beast/http/CMakeLists.txt 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/http/CMakeLists.txt 2020-05-02 13:51:02.472315914 -0400 -@@ -26,6 +26,7 @@ - empty_body.cpp - error.cpp - field.cpp -+ field_compiles.cpp - fields.cpp - file_body.cpp - message.cpp -diff -aruN a/libs/beast/test/beast/http/field_compiles.cpp b/libs/beast/test/beast/http/field_compiles.cpp ---- a/libs/beast/test/beast/http/field_compiles.cpp 1969-12-31 19:00:00.000000000 -0500 -+++ b/libs/beast/test/beast/http/field_compiles.cpp 2020-05-02 13:51:02.473315924 -0400 -@@ -0,0 +1,11 @@ -+// -+// Copyright (c) 2016-2019 Vinnie Falco (vinnie dot falco at gmail dot com) -+// -+// Distributed under the Boost Software License, Version 1.0. (See accompanying -+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -+// -+// Official repository: https://github.com/boostorg/beast -+// -+ -+// Test that header file is self-contained. -+#include -diff -aruN a/libs/beast/test/beast/http/Jamfile b/libs/beast/test/beast/http/Jamfile ---- a/libs/beast/test/beast/http/Jamfile 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/http/Jamfile 2020-05-02 13:51:02.472315914 -0400 -@@ -16,6 +16,7 @@ - dynamic_body.cpp - error.cpp - field.cpp -+ field_compiles.cpp - fields.cpp - file_body.cpp - message.cpp -diff -aruN a/libs/beast/test/beast/http/read.cpp b/libs/beast/test/beast/http/read.cpp ---- a/libs/beast/test/beast/http/read.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/http/read.cpp 2020-05-02 13:51:02.472315914 -0400 -@@ -25,6 +25,9 @@ - #include - #include - #include -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif - - namespace boost { - namespace beast { -@@ -529,6 +532,49 @@ - } - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ test::stream& stream, -+ flat_buffer& dynbuf, -+ parser& request_parser, -+ request& request, -+ parser& response_parser, -+ response& response) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read(stream, dynbuf, request, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read(stream, dynbuf, request_parser, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read(stream, dynbuf, response, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read(stream, dynbuf, response_parser, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read_some(stream, dynbuf, request_parser, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read_some(stream, dynbuf, response_parser, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read_header(stream, dynbuf, request_parser, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_read_header(stream, dynbuf, response_parser, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { -@@ -552,6 +598,9 @@ - testRegression430(); - testReadGrind(); - testAsioHandlerInvoke(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&read_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/http/write.cpp b/libs/beast/test/beast/http/write.cpp ---- a/libs/beast/test/beast/http/write.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/http/write.cpp 2020-05-02 13:51:02.473315924 -0400 -@@ -26,6 +26,9 @@ - #include - #include - #include -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif - - namespace boost { - namespace beast { -@@ -994,6 +997,59 @@ - } - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ test::stream& stream, -+ serializer& request_serializer, -+ request& req, -+ request const& creq, -+ serializer& response_serializer, -+ response& resp, -+ response const& cresp) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write(stream, request_serializer, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write(stream, response_serializer, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write(stream, req, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write(stream, creq, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write(stream, resp, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write(stream, cresp, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write_some(stream, request_serializer, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write_some(stream, response_serializer, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write_header(stream, request_serializer, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ http::async_write_header(stream, response_serializer, net::use_awaitable))>); -+ } -+#endif -+ -+ - void - run() override - { -@@ -1017,6 +1073,9 @@ - }); - testAsioHandlerInvoke(); - testBodyWriters(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&write_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/websocket/accept.cpp b/libs/beast/test/beast/websocket/accept.cpp ---- a/libs/beast/test/beast/websocket/accept.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/websocket/accept.cpp 2020-05-02 13:51:02.473315924 -0400 -@@ -14,7 +14,9 @@ - #include - #include - #include "test.hpp" -- -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif - namespace boost { - namespace beast { - namespace websocket { -@@ -810,6 +812,27 @@ - } - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ stream& s, -+ http::request& req, -+ net::mutable_buffer buf -+ ) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_accept(net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_accept(req, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_accept(buf, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { -@@ -820,6 +843,9 @@ - testInvalidInputs(); - testEndOfStream(); - testAsync(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&accept_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/websocket/close.cpp b/libs/beast/test/beast/websocket/close.cpp ---- a/libs/beast/test/beast/websocket/close.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/websocket/close.cpp 2020-05-02 13:51:02.473315924 -0400 -@@ -16,6 +16,9 @@ - - #include - #include -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif - - namespace boost { - namespace beast { -@@ -735,6 +738,15 @@ - } - }; - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles(stream& s, close_reason cr ) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_close(cr, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { -@@ -742,6 +754,9 @@ - testTimeout(); - testSuspend(); - testMoveOnly(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&close_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/websocket/handshake.cpp b/libs/beast/test/beast/websocket/handshake.cpp ---- a/libs/beast/test/beast/websocket/handshake.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/websocket/handshake.cpp 2020-05-02 13:51:02.473315924 -0400 -@@ -18,6 +18,9 @@ - #include - #include - #include -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif - - namespace boost { - namespace beast { -@@ -704,6 +707,23 @@ - } - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ stream& s, -+ std::string host, -+ std::string port, -+ response_type& resp) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_handshake(host, port, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_handshake(resp, host, port, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { -@@ -714,6 +734,9 @@ - testMoveOnly(); - testAsync(); - testIssue1460(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&handshake_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/websocket/ping.cpp b/libs/beast/test/beast/websocket/ping.cpp ---- a/libs/beast/test/beast/websocket/ping.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/websocket/ping.cpp 2020-05-02 13:51:02.474315935 -0400 -@@ -18,6 +18,10 @@ - #include - #include - -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif -+ - namespace boost { - namespace beast { - namespace websocket { -@@ -483,12 +487,30 @@ - } - }; - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ stream& s, -+ ping_data& pdat) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_ping(pdat, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_pong(pdat, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { - testPing(); - testSuspend(); - testMoveOnly(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&ping_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/websocket/read2.cpp b/libs/beast/test/beast/websocket/read2.cpp ---- a/libs/beast/test/beast/websocket/read2.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/websocket/read2.cpp 2020-05-02 13:51:02.474315935 -0400 -@@ -14,6 +14,10 @@ - - #include - -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif -+ - #include - #if BOOST_WORKAROUND(BOOST_GCC, < 80200) - #define BOOST_BEAST_SYMBOL_HIDDEN __attribute__ ((visibility("hidden"))) -@@ -673,10 +677,34 @@ - } - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ stream& s, -+ flat_buffer& dynbuf, -+ net::mutable_buffer buf, -+ std::size_t limit) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_read(dynbuf, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_read_some(buf, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_read_some(dynbuf, limit, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { - testRead(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&read2_test::testAwaitableCompiles); -+#endif - } - }; - -diff -aruN a/libs/beast/test/beast/websocket/write.cpp b/libs/beast/test/beast/websocket/write.cpp ---- a/libs/beast/test/beast/websocket/write.cpp 2020-04-22 09:34:50.000000000 -0400 -+++ b/libs/beast/test/beast/websocket/write.cpp 2020-05-02 13:51:02.474315935 -0400 -@@ -13,6 +13,10 @@ - #include - #include - -+#if BOOST_ASIO_HAS_CO_AWAIT -+#include -+#endif -+ - #include "test.hpp" - - namespace boost { -@@ -716,6 +720,22 @@ - BEAST_EXPECT(n1 < n0 + s.size()); - } - -+#if BOOST_ASIO_HAS_CO_AWAIT -+ void testAwaitableCompiles( -+ stream& s, -+ net::mutable_buffer buf, -+ bool fin) -+ { -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_write(buf, net::use_awaitable))>); -+ -+ static_assert(std::is_same_v< -+ net::awaitable, decltype( -+ s.async_write_some(fin, buf, net::use_awaitable))>); -+ } -+#endif -+ - void - run() override - { -@@ -726,6 +746,9 @@ - testMoveOnly(); - testIssue300(); - testIssue1666(); -+#if BOOST_ASIO_HAS_CO_AWAIT -+ boost::ignore_unused(&write_test::testAwaitableCompiles); -+#endif - } - }; - diff --git a/boost-1.73.0-outcome-assert.patch b/boost-1.73.0-outcome-assert.patch deleted file mode 100644 index 1dfeb71..0000000 --- a/boost-1.73.0-outcome-assert.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 9f414ea58264fe0a62172a06f4653adc7556c164 Mon Sep 17 00:00:00 2001 -From: "Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)" - -Date: Mon, 27 Apr 2020 12:00:22 +0100 -Subject: [PATCH] Fix https://github.com/ned14/outcome/issues/223 where in - debug builds, cloning a status_code_ptr causes a segfault. - ---- - include/status_code_ptr.hpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/status_code_ptr.hpp b/include/status_code_ptr.hpp -index 0f5efa1..bd5c278 100644 ---- boost_1_73_0/boost/outcome/experimental/status-code/status_code_ptr.hpp -+++ boost_1_73_0/boost/outcome/experimental/status-code/status_code_ptr.hpp -@@ -97,7 +97,7 @@ namespace detail - #endif - virtual void _do_erased_copy(status_code &dst, const status_code &src, size_t /*unused*/) const override // NOLINT - { -- assert(dst.domain() == *this); -+ // Note that dst will not have its domain set - assert(src.domain() == *this); - auto &d = static_cast<_mycode &>(dst); // NOLINT - const auto &_s = static_cast(src); // NOLINT diff --git a/boost-1.73.0-build-optflags.patch b/boost-1.75.0-build-optflags.patch similarity index 70% rename from boost-1.73.0-build-optflags.patch rename to boost-1.75.0-build-optflags.patch index a2895f6..d9c6dd4 100644 --- a/boost-1.73.0-build-optflags.patch +++ b/boost-1.75.0-build-optflags.patch @@ -1,24 +1,26 @@ ---- boost_1_73_0/tools/build/src/tools/gcc.jam~ 2020-03-31 21:50:30.687635266 +0100 -+++ boost_1_73_0/tools/build/src/tools/gcc.jam 2020-03-31 21:50:32.943632779 +0100 -@@ -571,7 +571,7 @@ +diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam +index ff3209f7b..1d8e7cbfe 100644 +--- a/tools/build/src/tools/gcc.jam ++++ b/tools/build/src/tools/gcc.jam +@@ -577,7 +577,7 @@ rule compile.fortran ( targets * : sources * : properties * ) actions compile.c++ bind PCH_FILE { -- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" +- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" -c -o "$(<:W)" "$(>:W)" ++ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" -c -o "$(<:W)" "$(>:W)" } actions compile.c bind PCH_FILE -@@ -581,7 +581,7 @@ +@@ -587,7 +587,7 @@ actions compile.c bind PCH_FILE actions compile.c++.preprocess bind PCH_FILE { -- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" +- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" "$(>:W)" -E >"$(<:W)" ++ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" "$(>:W)" -E >"$(<:W)" } actions compile.c.preprocess bind PCH_FILE -@@ -704,20 +704,20 @@ +@@ -704,20 +704,20 @@ actions compile.c.pch ### # Declare flags and action for compilation. @@ -47,9 +49,12 @@ +toolset.flags gcc.compile OPTIONS off : ; +toolset.flags gcc.compile OPTIONS on : ; +toolset.flags gcc.compile OPTIONS all : ; -+toolset.flags gcc.compile OPTIONS extra : ; -+toolset.flags gcc.compile OPTIONS pedantic : ; -+toolset.flags gcc.compile OPTIONS on : ; ++toolset.flags gcc.compile OPTIONS extra : ; ++toolset.flags gcc.compile OPTIONS pedantic : ; ++toolset.flags gcc.compile OPTIONS on : ; toolset.flags gcc.compile OPTIONS on : -g ; toolset.flags gcc.compile OPTIONS on : -pg ; +-- +2.26.2 + diff --git a/boost-1.66.0-no-rpath.patch b/boost-1.75.0-no-rpath.patch similarity index 59% rename from boost-1.66.0-no-rpath.patch rename to boost-1.75.0-no-rpath.patch index e69e0b4..a025241 100644 --- a/boost-1.66.0-no-rpath.patch +++ b/boost-1.75.0-no-rpath.patch @@ -1,6 +1,14 @@ ---- boost_1_66_0/tools/build/src/tools/gcc.jam~ 2018-01-19 13:23:45.361330881 +0000 -+++ boost_1_66_0/tools/build/src/tools/gcc.jam 2018-01-19 13:23:45.362330880 +0000 -@@ -1191,7 +1191,7 @@ rule link ( targets * : sources * : prop +diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam +index 02dc154cf..c076f70f4 100644 +--- a/tools/build/src/tools/gcc.jam ++++ b/tools/build/src/tools/gcc.jam +@@ -1132,17 +1132,17 @@ actions link.mingw bind LIBRARIES + + actions link.dll.mingw bind LIBRARIES + { +- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" -shared @"@($(<[-1]:T).rsp:E=$(START-GROUP) "$(>:T)" "$(LIBRARIES:T)" $(FINDLIBS-ST-PFX:T) -l$(FINDLIBS-ST:T) $(FINDLIBS-SA-PFX:T) -l$(FINDLIBS-SA:T) $(END-GROUP))" $(OPTIONS) $(USER_OPTIONS) ++ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[0])" -o "$(<[-1])" -shared @"@($(<[-1]:T).rsp:E=$(START-GROUP) "$(>:T)" "$(LIBRARIES:T)" $(FINDLIBS-ST-PFX:T) -l$(FINDLIBS-ST:T) $(FINDLIBS-SA-PFX:T) -l$(FINDLIBS-SA:T) $(END-GROUP))" $(OPTIONS) $(USER_OPTIONS) + } actions link bind LIBRARIES { @@ -8,9 +16,6 @@ + "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) } - rule link.dll ( targets * : sources * : properties * ) -@@ -1204,7 +1204,7 @@ rule link.dll ( targets * : sources * : - # Differs from 'link' above only by -shared. actions link.dll bind LIBRARIES { - "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) diff --git a/boost-cmake-soname.patch b/boost-cmake-soname.patch deleted file mode 100644 index 8d732eb..0000000 --- a/boost-cmake-soname.patch +++ /dev/null @@ -1,19 +0,0 @@ -*** tools/build/CMake/BoostCore.cmake.orig 2010-01-12 20:01:46.006547352 -0800 ---- tools/build/CMake/BoostCore.cmake 2010-01-12 20:02:54.222546929 -0800 -*************** macro(boost_library_variant LIBNAME) -*** 755,761 **** - if (BUILD_SOVERSIONED) - set_target_properties(${VARIANT_LIBNAME} - PROPERTIES -! SOVERSION "${BOOST_VERSION}" - ) - endif() - endif () ---- 755,761 ---- - if (BUILD_SOVERSIONED) - set_target_properties(${VARIANT_LIBNAME} - PROPERTIES -! SOVERSION "_FEDORA_SONAME" - ) - endif() - endif () diff --git a/boost.spec b/boost.spec index c0ffd30..d6afa68 100644 --- a/boost.spec +++ b/boost.spec @@ -41,8 +41,8 @@ Name: boost %global real_name boost Summary: The free peer-reviewed portable C++ source libraries -Version: 1.73.0 -Release: 12%{?dist} +Version: 1.75.0 +Release: 1%{?dist} License: Boost and MIT and Python # Replace each . with _ in %%{version} @@ -54,8 +54,7 @@ License: Boost and MIT and Python %global toplev_dirname %{real_name}_%{version_enc} URL: http://www.boost.org -Source0: https://sourceforge.net/projects/%%{name}/files/%{name}/%{version}/%{toplev_dirname}.tar.bz2 -#Source0: https://dl.bintray.com/boostorg/master/%%{name}_%%{version_enc}.tar.gz +Source0: https://dl.bintray.com/boostorg/release/%{version}/source/%{name}_%%{version_enc}.tar.bz2 Source1: libboost_thread.so # Add a manual page for b2, based on the online documentation: # http://www.boost.org/boost-build2/doc/html/bbv2/overview.html @@ -125,9 +124,6 @@ BuildRequires: libquadmath-devel %endif BuildRequires: bison -# https://svn.boost.org/trac/boost/ticket/6150 -Patch4: boost-1.50.0-fix-non-utf8-files.patch - # https://bugzilla.redhat.com/show_bug.cgi?id=828856 # https://bugzilla.redhat.com/show_bug.cgi?id=828857 # https://svn.boost.org/trac/boost/ticket/6701 @@ -136,37 +132,18 @@ Patch15: boost-1.58.0-pool.patch # https://svn.boost.org/trac/boost/ticket/9038 Patch51: boost-1.58.0-pool-test_linking.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=1190039 -Patch65: boost-1.73.0-build-optflags.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1541035 +Patch96: boost-1.75.0-build-optflags.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1318383 -Patch82: boost-1.66.0-no-rpath.patch +Patch97: boost-1.75.0-no-rpath.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1541035 Patch83: boost-1.73.0-b2-build-flags.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=1818723 -Patch86: boost-1.69-format-allocator.patch - -# https://bugzilla.redhat.com/show_bug.cgi?id=1832639 -Patch87: boost-1.69.0-test-cxx20.patch - # https://lists.boost.org/Archives/boost/2020/04/248812.php Patch88: boost-1.73.0-cmakedir.patch -# https://github.com/ned14/outcome/issues/223 -Patch89: boost-1.73.0-outcome-assert.patch - -# https://github.com/boostorg/beast/pull/1927 -Patch90: boost-1.73.0-beast-coroutines.patch - -# https://github.com/boostorg/geometry/issues/721 -Patch91: boost-1.73-geometry-issue721.patch - -# https://bugzilla.redhat.com/show_bug.cgi?id=1843105 -# https://github.com/boostorg/mpi/pull/119 -Patch92: boost-1.73-mpi-vector-data.patch - # https://bugzilla.redhat.com/show_bug.cgi?id=1896382 # https://github.com/boostorg/python/issues/325 Patch93: boost-1.73-python3.10.patch @@ -175,9 +152,6 @@ Patch93: boost-1.73-python3.10.patch # https://github.com/boostorg/locale/issues/52 Patch94: boost-1.73-locale-empty-vector.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=1912903 -Patch95: boost-1.73-python3.10-Py_fopen.patch - %bcond_with tests %bcond_with docs_generated @@ -296,6 +270,15 @@ Summary: Run-time component of boost iostreams library Run-time support for Boost.Iostreams, a framework for defining streams, stream buffers and i/o filters. +%package json +Summary: Run-time component of boost json library + +%description json + +Run-time support for Boost.Json, a portable C++ library which provides +containers and algorithms that implement JavaScript Object Notation, or +simply "JSON" + %package locale Summary: Run-time component of boost locale library Requires: %{name}-chrono%{?_isa} = %{version}-%{release} @@ -681,22 +664,14 @@ a number of significant features and is now developed independently. %setup -q -n %{toplev_dirname} find ./boost -name '*.hpp' -perm /111 | xargs chmod a-x -%patch4 -p1 %patch15 -p0 %patch51 -p1 -%patch65 -p1 -%patch82 -p1 +%patch96 -p1 +%patch97 -p1 %patch83 -p1 -%patch86 -p1 -%patch87 -p2 %patch88 -p1 -%patch89 -p1 -%patch90 -p1 -%patch91 -p1 -%patch92 -p1 %patch93 -p1 %patch94 -p1 -%patch95 -p1 %build %set_build_flags @@ -844,11 +819,6 @@ rm -f ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_numpy* # Remove cmake files (some of these are duplicates of the generic bits anyway). rm -r ${RPM_BUILD_ROOT}${MPI_HOME}/lib/cmake -# Remove the useless libboost_foo.so.1.NN and libboost_foo.so.1 symlinks. -version=%{version} -rm ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_*.so.${version%%.*} -rm ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_*.so.${version%%%%.*} - %{_openmpi_unload} export PATH=/bin${PATH:+:}$PATH %endif @@ -878,11 +848,6 @@ rm -f ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_numpy* # Remove cmake files (some of these are duplicates of the generic bits anyway). rm -r ${RPM_BUILD_ROOT}${MPI_HOME}/lib/cmake -# Remove the useless libboost_foo.so.1.NN and libboost_foo.so.1 symlinks. -version=%{version} -rm ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_*.so.${version%%.*} -rm ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_*.so.${version%%%%.*} - %{_mpich_unload} export PATH=/bin${PATH:+:}$PATH %endif @@ -911,11 +876,6 @@ install -p -m 644 $(basename %{SOURCE1}) $RPM_BUILD_ROOT%{_libdir}/ # Remove cmake files until we know somebody wants them. rm -r $RPM_BUILD_ROOT/%{_libdir}/cmake -# Remove the useless libboost_foo.so.1.NN and libboost_foo.so.1 symlinks. -version=%{version} -rm $RPM_BUILD_ROOT%{_libdir}/libboost_*.so.${version%%.*} -rm $RPM_BUILD_ROOT%{_libdir}/libboost_*.so.${version%%%%.*} - echo ============================= install Boost.Build ================== (cd tools/build ./b2 --prefix=$RPM_BUILD_ROOT%{_prefix} install @@ -1079,6 +1039,10 @@ fi %license LICENSE_1_0.txt %{_libdir}/libboost_iostreams.so.%{sonamever} +%files json +%license LICENSE_1_0.txt +%{_libdir}/libboost_json.so.%{sonamever} + %files locale %license LICENSE_1_0.txt %{_libdir}/libboost_locale.so.%{sonamever} @@ -1189,6 +1153,7 @@ fi %{_libdir}/libboost_filesystem.so %{_libdir}/libboost_graph.so %{_libdir}/libboost_iostreams.so +%{_libdir}/libboost_json.so %{_libdir}/libboost_locale.so %{_libdir}/libboost_log.so %{_libdir}/libboost_log_setup.so @@ -1308,6 +1273,10 @@ fi %{_mandir}/man1/b2.1* %changelog +* Mon Jan 11 2021 Thomas Rodgers - 1.75.0-1 +- Rebase to 1.75.0 +- Add boost-json subpackage + * Fri Jan 8 14:14:00 CET 2021 Tomas Hrnciar - 1.73.0-12 - Patch Boost.Python for Python 3.10 - replace _Py_fopen() with fopen() (#1912903) diff --git a/sources b/sources index 9bda6dc..784d5b3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (boost_1_73_0.tar.bz2) = 86c296511c0766145097625a62bf099c3d155284d250ad6e528e788bc90b2945838498dfe473c6c6c78d1694b6fba8e19f7dee0d064a043841e6231603fff668 +SHA512 (boost_1_75_0.tar.bz2) = d86f060245e98dca5c7f3f831c98ea9ccbfa8310f20830dd913d9d4c939fbe7cb94accd35f1128e7c4faf6c27adb6f4bb54e5477a6bde983dfc7aa33c4eed03a