Rebase to 1.75.0
This commit is contained in:
parent
ddd384021b
commit
5c328ce476
@ -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<thing_base_unit, boost::units::
|
||||
struct euro_base_unit : boost::units::base_unit<euro_base_unit, boost::units::dimensionless_type, 5>
|
||||
{
|
||||
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<euro_base_unit::unit_type> 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;
|
@ -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<Ch *>(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<compat_allocator_type>::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<Ch *>(vdptr);
|
||||
-#else
|
||||
+#elif defined BOOST_NO_CXX11_ALLOCATOR
|
||||
newptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0);
|
||||
+#else
|
||||
+ newptr = std::allocator_traits<compat_allocator_type>::allocate(alloc_,
|
||||
+ new_size, is_allocated_? oldptr : 0);
|
||||
#endif
|
||||
}
|
||||
|
@ -1,27 +0,0 @@
|
||||
From db6b98c72783351e0acd3c558691323a7a103ba9 Mon Sep 17 00:00:00 2001
|
||||
From: Raffi Enficiaud <raffi.enficiaud@mines-paris.org>
|
||||
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<char const*>::operator()( std::ostream& ostr, char const* t )
|
||||
void
|
||||
print_log_value<wchar_t const*>::operator()( std::ostream& ostr, wchar_t const* t )
|
||||
{
|
||||
- ostr << ( t ? reinterpret_cast<const void*>(t) : "null string" );
|
||||
+ if(t) {
|
||||
+ ostr << static_cast<const void*>(t);
|
||||
+ }
|
||||
+ else {
|
||||
+ ostr << "null w-string";
|
||||
+ }
|
||||
}
|
||||
|
||||
//____________________________________________________________________________//
|
@ -1,23 +0,0 @@
|
||||
From aafbceccc76dccb75963dd4f596fd1f10ee34b03 Mon Sep 17 00:00:00 2001
|
||||
From: Jonathan Wakely <boost@kayari.org>
|
||||
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 <typename Element, typename MembersHolder>
|
||||
class insert
|
||||
- : MembersHolder::visitor
|
||||
+ : public MembersHolder::visitor
|
||||
{
|
||||
protected:
|
||||
typedef typename MembersHolder::box_type box_type;
|
@ -1,534 +0,0 @@
|
||||
From 28a73eac54fbc7cfebfd3b2231ee607284233a00 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weik <fweik@icp.uni-stuttgart.de>
|
||||
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<T> 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<T>& 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<typename T>
|
||||
@@ -143,7 +143,7 @@ all_to_all(const communicator& comm, const std::vector<T>& 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<T>());
|
||||
else
|
||||
detail::gatherv_impl(comm, in_values, in_size, root, is_mpi_datatype<T>());
|
||||
@@ -99,7 +99,7 @@ gatherv(const communicator& comm, const std::vector<T>& in_values,
|
||||
T* out_values, const std::vector<int>& sizes, const std::vector<int>& 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<typename T>
|
||||
@@ -113,7 +113,7 @@ template<typename T>
|
||||
void gatherv(const communicator& comm, const std::vector<T>& in_values, int root)
|
||||
{
|
||||
BOOST_ASSERT(comm.rank() != root);
|
||||
- detail::gatherv_impl(comm, &in_values[0], in_values.size(), root, is_mpi_datatype<T>());
|
||||
+ detail::gatherv_impl(comm, detail::c_data(in_values), in_values.size(), root, is_mpi_datatype<T>());
|
||||
}
|
||||
|
||||
///////////////////////
|
||||
@@ -139,7 +139,7 @@ void
|
||||
gatherv(const communicator& comm, const std::vector<T>& in_values,
|
||||
T* out_values, const std::vector<int>& 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<T> 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<typename T, typename Op>
|
||||
@@ -344,7 +344,7 @@ reduce(const communicator & comm, std::vector<T> const & in_values,
|
||||
std::vector<T> & 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<T>& 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<typename T>
|
||||
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<T>& in_values,
|
||||
const std::vector<int>& 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<typename T>
|
||||
@@ -159,7 +159,7 @@ void
|
||||
scatterv(const communicator& comm, const std::vector<T>& 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 <class T>
|
||||
static T* get_data(std::vector<T>& v)
|
||||
{
|
||||
- return v.empty() ? 0 : &(v[0]);
|
||||
+ return detail::c_data(v);
|
||||
}
|
||||
|
||||
std::vector<MPI_Aint> 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<T>(),
|
||||
+ (detail::c_data(this->extra::m_values), this->extra::m_values.size(), get_mpi_datatype<T>(),
|
||||
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<T>(),
|
||||
+ (detail::c_data(this->extra::m_values), this->extra::m_values.size(), get_mpi_datatype<T>(),
|
||||
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 <boost/mpi/exception.hpp>
|
||||
+#include <boost/mpi/detail/antiques.hpp>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <boost/optional.hpp>
|
||||
#include <vector>
|
||||
@@ -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<int>::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<int> 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<int> 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<MPI_Status> 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<MPI_Status>::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<MPI_Status> 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 <cassert>
|
||||
|
||||
#include <boost/mpi/cartesian_communicator.hpp>
|
||||
+#include <boost/mpi/detail/antiques.hpp>
|
||||
|
||||
namespace boost { namespace mpi {
|
||||
|
||||
namespace {
|
||||
template <typename T, typename A>
|
||||
- T* c_data(std::vector<T,A>& v) { return &(v[0]); }
|
||||
+ T* c_data(std::vector<T,A>& v) { return c_data(v); }
|
||||
}
|
||||
|
||||
std::ostream&
|
||||
|
||||
From 5a8e9efe89ba00e32713fd777a82bc8f30a0900d Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weik <fweik@icp.uni-stuttgart.de>
|
||||
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<int> 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 <fweik@icp.uni-stuttgart.de>
|
||||
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 <typename T, typename A>
|
||||
- T* c_data(std::vector<T,A>& 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<int>& coords ) const {
|
||||
int r = -1;
|
||||
assert(int(coords.size()) == ndims());
|
||||
BOOST_MPI_CHECK_RESULT(MPI_Cart_rank,
|
||||
- (MPI_Comm(*this), c_data(const_cast<std::vector<int>&>(coords)),
|
||||
+ (MPI_Comm(*this), detail::c_data(const_cast<std::vector<int>&>(coords)),
|
||||
&r));
|
||||
return r;
|
||||
}
|
||||
@@ -123,7 +118,7 @@ std::vector<int>
|
||||
cartesian_communicator::coordinates(int rk) const {
|
||||
std::vector<int> 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<int> cdims(ndims);
|
||||
std::vector<int> 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<int>& 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;
|
||||
}
|
||||
|
@ -1,29 +0,0 @@
|
||||
From ba90b0adffb5fedc894889b0962c22fff5bb748d Mon Sep 17 00:00:00 2001
|
||||
From: Tomas Hrnciar <thrnciar@redhat.com>
|
||||
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<char *>(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<char*>("r"));
|
||||
--
|
||||
2.29.2
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,24 +0,0 @@
|
||||
From 9f414ea58264fe0a62172a06f4653adc7556c164 Mon Sep 17 00:00:00 2001
|
||||
From: "Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)"
|
||||
<spamtrap@nedprod.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<void> &dst, const status_code<void> &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<const _mycode &>(src); // NOLINT
|
@ -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 <warnings>off : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings>on : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings>all : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings>extra : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings>pedantic : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings-as-errors>on : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings>extra : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings>pedantic : ;
|
||||
+toolset.flags gcc.compile OPTIONS <warnings-as-errors>on : ;
|
||||
|
||||
toolset.flags gcc.compile OPTIONS <debug-symbols>on : -g ;
|
||||
toolset.flags gcc.compile OPTIONS <profiling>on : -pg ;
|
||||
--
|
||||
2.26.2
|
||||
|
@ -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)
|
@ -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 ()
|
83
boost.spec
83
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 <trodgers@redhat.com> - 1.75.0-1
|
||||
- Rebase to 1.75.0
|
||||
- Add boost-json subpackage
|
||||
|
||||
* Fri Jan 8 14:14:00 CET 2021 Tomas Hrnciar <thrnciar@redhat.com> - 1.73.0-12
|
||||
- Patch Boost.Python for Python 3.10 - replace _Py_fopen() with fopen() (#1912903)
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (boost_1_73_0.tar.bz2) = 86c296511c0766145097625a62bf099c3d155284d250ad6e528e788bc90b2945838498dfe473c6c6c78d1694b6fba8e19f7dee0d064a043841e6231603fff668
|
||||
SHA512 (boost_1_75_0.tar.bz2) = d86f060245e98dca5c7f3f831c98ea9ccbfa8310f20830dd913d9d4c939fbe7cb94accd35f1128e7c4faf6c27adb6f4bb54e5477a6bde983dfc7aa33c4eed03a
|
||||
|
Loading…
Reference in New Issue
Block a user