Rebase to 1.59.0

This commit is contained in:
Jonathan Wakely 2015-08-21 16:27:42 +01:00
parent fb630fe1a0
commit 3d13bdbd4b
8 changed files with 129 additions and 169 deletions

View File

@ -1,26 +0,0 @@
From 8787f6b0718b6b0750869ba52bc65d26db665a05 Mon Sep 17 00:00:00 2001
From: Ananth Jasty <ajasty@cavium.com>
Date: Wed, 15 Apr 2015 17:59:47 -0700
Subject: [PATCH] Changes required for aarch64 support in boost::config.
---
libs/config/checks/architecture/arm.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libs/config/checks/architecture/arm.cpp b/libs/config/checks/architecture/arm.cpp
index 6a83737..794aba8 100644
--- a/libs/config/checks/architecture/arm.cpp
+++ b/libs/config/checks/architecture/arm.cpp
@@ -8,6 +8,8 @@
#if !defined(__arm__) && !defined(__thumb__) && \
!defined(__TARGET_ARCH_ARM) && !defined(__TARGET_ARCH_THUMB) && \
- !defined(_ARM) && !defined(_M_ARM)
+ !defined(_ARM) && !defined(_M_ARM) && \
+ !defined(__aarch64__)
#error "Not ARM"
#endif
+
--
2.4.5

View File

@ -1,15 +0,0 @@
diff -up boost_1_53_0/boost/python/to_python_value.hpp\~ boost_1_53_0/boost/python/to_python_value.hpp
--- boost_1_53_0/boost/python/to_python_value.hpp~ 2007-12-16 11:12:07.000000000 +0100
+++ boost_1_53_0/boost/python/to_python_value.hpp 2013-07-23 16:19:02.518904596 +0200
@@ -147,8 +147,8 @@ namespace detail
template <class T>
inline PyObject* registry_to_python_value<T>::operator()(argument_type x) const
{
- typedef converter::registered<argument_type> r;
# if BOOST_WORKAROUND(__GNUC__, < 3)
+ typedef converter::registered<argument_type> r;
// suppresses an ICE, somehow
(void)r::converters;
# endif
Diff finished. Tue Jul 23 16:19:05 2013

View File

@ -1,22 +0,0 @@
From fc32eea4ac9e514a7d210306cd9fa3a017dfe02c Mon Sep 17 00:00:00 2001
From: VemundH <vehandel@online.no>
Date: Tue, 30 Sep 2014 21:53:45 +0200
Subject: [PATCH] remove incorrect casts
---
include/boost/uuid/detail/uuid_x86.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/boost/uuid/detail/uuid_x86.hpp b/include/boost/uuid/detail/uuid_x86.hpp
index 1a329b0..5a2cdec 100644
--- a/include/boost/uuid/detail/uuid_x86.hpp
+++ b/include/boost/uuid/detail/uuid_x86.hpp
@@ -100,7 +100,7 @@ inline bool operator< (uuid const& lhs, uuid const& rhs) BOOST_NOEXCEPT
cmp = (cmp - 1u) ^ cmp;
rcmp = (rcmp - 1u) ^ rcmp;
- return static_cast< uint16_t >(cmp) < static_cast< uint16_t >(rcmp);
+ return cmp < rcmp;
}
} // namespace uuids

View File

@ -1,52 +0,0 @@
From ca2ff08600fa63c8dea90897cfe649427bf58a6e Mon Sep 17 00:00:00 2001
From: Nasos <nasos_i@hotmail.com>
Date: Wed, 5 Aug 2015 10:17:51 -0400
Subject: [PATCH] Corrected inline issue in storage.hpp
---
include/boost/numeric/ublas/storage.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/boost/numeric/ublas/storage.hpp b/include/boost/numeric/ublas/storage.hpp
index 8821309..19bc907 100644
--- a/include/boost/numeric/ublas/storage.hpp
+++ b/include/boost/numeric/ublas/storage.hpp
@@ -777,8 +777,8 @@ namespace boost { namespace numeric { namespace ublas {
BOOST_UBLAS_INLINE
shallow_array_adaptor (size_type size, pointer data):
size_ (size), own_ (false), data_ (data, leaker<value_type> ()) {}
- BOOST_UBLAS_INLINE
template <size_t N>
+ BOOST_UBLAS_INLINE
shallow_array_adaptor (T (&data)[N]):
size_ (N), own_ (false), data_ (data, leaker<value_type> ()) {}
From b805369990aed13a2c837f642a280a7b6352e012 Mon Sep 17 00:00:00 2001
From: Nasos <nasos_i@hotmail.com>
Date: Wed, 5 Aug 2015 10:31:25 -0400
Subject: [PATCH] Corrected inline issue in storage.hpp
---
include/boost/numeric/ublas/storage.hpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/boost/numeric/ublas/storage.hpp b/include/boost/numeric/ublas/storage.hpp
index 19bc907..bd64892 100644
--- a/include/boost/numeric/ublas/storage.hpp
+++ b/include/boost/numeric/ublas/storage.hpp
@@ -833,13 +833,13 @@ namespace boost { namespace numeric { namespace ublas {
void resize (size_type size, pointer data, value_type init) {
resize_internal (size, data, init, true);
}
- BOOST_UBLAS_INLINE
template <size_t N>
+ BOOST_UBLAS_INLINE
void resize (T (&data)[N]) {
resize_internal (N, data, value_type (), false);
}
- BOOST_UBLAS_INLINE
template <size_t N>
+ BOOST_UBLAS_INLINE
void resize (T (&data)[N], value_type init) {
resize_internal (N, data, init, true);
}

View File

@ -1,18 +0,0 @@
commit 2b2cc6543c44beeb8331dc8e1a7eff2e071a8cc8
Author: Antony Polukhin <antoshkka@gmail.com>
Date: Sun May 10 21:53:27 2015 +0300
Fix error with missing include, that was found by Maarten de Vries
diff --git a/include/boost/variant/detail/element_index.hpp b/include/boost/variant/detail/element_index.hpp
index bd80bdd..842b018 100644
--- a/include/boost/variant/detail/element_index.hpp
+++ b/include/boost/variant/detail/element_index.hpp
@@ -16,6 +16,7 @@
#include "boost/variant/recursive_wrapper_fwd.hpp"
#include "boost/variant/variant_fwd.hpp"
+#include "boost/type_traits/remove_cv.hpp"
#include "boost/mpl/find_if.hpp"
namespace boost { namespace detail { namespace variant {

106
boost-1.59.0-log.patch Normal file
View File

@ -0,0 +1,106 @@
From 7da193fde1a9c1bc925ee980339f4df2e1a66fa7 Mon Sep 17 00:00:00 2001
From: Andrey Semashev <andrey.semashev@gmail.com>
Date: Sun, 23 Aug 2015 17:27:20 +0300
Subject: [PATCH] Fixed compilation of operator<< into a record ostream, when
the operator right hand argument is not directly supported by
formatting_ostream. Fixed #11549.
---
diff --git a/include/boost/log/sources/record_ostream.hpp b/include/boost/log/sources/record_ostream.hpp
index b3c58e2..c1e8059 100644
--- a/include/boost/log/sources/record_ostream.hpp
+++ b/include/boost/log/sources/record_ostream.hpp
@@ -39,6 +39,18 @@ namespace boost {
BOOST_LOG_OPEN_NAMESPACE
+template< typename CharT >
+class basic_record_ostream;
+
+namespace aux {
+
+template< typename StreamT, typename R >
+struct enable_if_record_ostream {};
+template< typename CharT, typename R >
+struct enable_if_record_ostream< basic_record_ostream< CharT >, R > { typedef R type; };
+
+} // namespace aux
+
/*!
* \brief Logging record adapter with a streaming capability
*
@@ -174,6 +186,55 @@ typedef basic_record_ostream< char > record_ostream; //!< Convenience typ
typedef basic_record_ostream< wchar_t > wrecord_ostream; //!< Convenience typedef for wide-character logging
#endif
+// Implementation note: these operators below should be the least attractive for the compiler
+// so that user's overloads are chosen, when present. We use function template partial ordering for this purpose.
+// We also don't use perfect forwarding for the right hand argument because in ths case the generic overload
+// would be more preferred than the typical one written by users:
+//
+// record_ostream& operator<< (record_ostream& strm, my_type const& arg);
+//
+// This is because my_type rvalues require adding const to the type, which counts as a conversion that is not required
+// if there is a perfect forwarding overload.
+template< typename StreamT, typename T >
+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type
+operator<< (StreamT& strm, T const& value)
+{
+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type;
+ static_cast< formatting_ostream_type& >(strm) << value;
+ return strm;
+}
+
+template< typename StreamT, typename T >
+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type
+operator<< (StreamT& strm, T& value)
+{
+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type;
+ static_cast< formatting_ostream_type& >(strm) << value;
+ return strm;
+}
+
+#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
+
+template< typename StreamT, typename T >
+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type
+operator<< (StreamT&& strm, T const& value)
+{
+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type;
+ static_cast< formatting_ostream_type& >(strm) << value;
+ return strm;
+}
+
+template< typename StreamT, typename T >
+inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type
+operator<< (StreamT&& strm, T& value)
+{
+ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type;
+ static_cast< formatting_ostream_type& >(strm) << value;
+ return strm;
+}
+
+#endif // !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
+
namespace aux {
//! Internal class that provides formatting streams for record pumps
diff --git a/include/boost/log/utility/formatting_ostream.hpp b/include/boost/log/utility/formatting_ostream.hpp
index 4345206..744acc0 100644
--- a/include/boost/log/utility/formatting_ostream.hpp
+++ b/include/boost/log/utility/formatting_ostream.hpp
@@ -779,6 +779,13 @@ void basic_formatting_ostream< CharT, TraitsT, AllocatorT >::aligned_write(const
// Implementation note: these operators below should be the least attractive for the compiler
// so that user's overloads are chosen, when present. We use function template partial ordering for this purpose.
+// We also don't use perfect forwarding for the right hand argument because in ths case the generic overload
+// would be more preferred than the typical one written by users:
+//
+// formatting_ostream& operator<< (formatting_ostream& strm, my_type const& arg);
+//
+// This is because my_type rvalues require adding const to the type, which counts as a conversion that is not required
+// if there is a perfect forwarding overload.
template< typename StreamT, typename T >
inline typename boost::log::aux::enable_if_formatting_ostream< StreamT, StreamT& >::type
operator<< (StreamT& strm, T const& value)

View File

@ -30,9 +30,9 @@
Name: boost
Summary: The free peer-reviewed portable C++ source libraries
Version: 1.58.0
%define version_enc 1_58_0
Release: 9%{?dist}
Version: 1.59.0
%define version_enc 1_59_0
Release: 1%{?dist}
License: Boost and MIT and Python
%define toplev_dirname %{name}_%{version_enc}
@ -107,9 +107,6 @@ Patch36: boost-1.57.0-spirit-unused_typedef.patch
# https://svn.boost.org/trac/boost/ticket/8878
Patch45: boost-1.54.0-locale-unused_typedef.patch
# https://svn.boost.org/trac/boost/ticket/8888
Patch49: boost-1.54.0-python-unused_typedef.patch
# https://svn.boost.org/trac/boost/ticket/9038
Patch51: boost-1.58.0-pool-test_linking.patch
@ -121,19 +118,11 @@ Patch63: boost-1.55.0-python-test-PyImport_AppendInittab.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1190039
Patch65: boost-1.57.0-build-optflags.patch
# https://svn.boost.org/trac/boost/ticket/10510
Patch66: boost-1.57.0-uuid-comparison.patch
# https://svn.boost.org/trac/boost/ticket/11283
Patch67: boost-1.58.0-variant-includes.patch
# Prevent gcc.jam from setting -m32 or -m64.
Patch68: boost-1.58.0-address-model.patch
# https://github.com/boostorg/ublas/pull/25
Patch69: boost-1.58-ublas-inlines.patch
Patch70: 0001-Changes-required-for-aarch64-support-in-boost-config.patch
# https://svn.boost.org/trac/boost/ticket/11549
Patch70: boost-1.59.0-log.patch
%bcond_with tests
%bcond_with docs_generated
@ -206,7 +195,7 @@ Group: System Environment/Libraries
%description date-time
Run-Time support for Boost Date Time, set of date-time libraries based
Run-Time support for Boost Date Time, a set of date-time libraries based
on generic programming concepts.
%package filesystem
@ -268,7 +257,7 @@ Group: System Environment/Libraries
%description math
Run-Time support for C99 and C++ TR1 C-style Functions from math
Run-Time support for C99 and C++ TR1 C-style Functions from the math
portion of Boost.TR1.
%package program-options
@ -279,7 +268,7 @@ Group: System Environment/Libraries
Run-Time support of boost program options library, which allows program
developers to obtain (name, value) pairs from the user, via
conventional methods such as command line and configuration file.
conventional methods such as command-line and configuration file.
%package python
Summary: Run-Time component of boost python library
@ -288,7 +277,7 @@ Group: System Environment/Libraries
%description python
The Boost Python Library is a framework for interfacing Python and
C++. It allows you to quickly and seamlessly expose C++ classes
C++. It allows you to quickly and seamlessly expose C++ classes,
functions and objects to Python, and vice versa, using no special
tools -- just your C++ compiler. This package contains run-time
support for Boost Python Library.
@ -302,7 +291,7 @@ Group: System Environment/Libraries
%description python3
The Boost Python Library is a framework for interfacing Python and
C++. It allows you to quickly and seamlessly expose C++ classes
C++. It allows you to quickly and seamlessly expose C++ classes,
functions and objects to Python, and vice versa, using no special
tools -- just your C++ compiler. This package contains run-time
support for Boost Python Library compiled for Python 3.
@ -358,8 +347,7 @@ Group: System Environment/Libraries
%description system
Run-Time component of Boost operating system support library, including
the diagnostics support that will be part of the C++0x standard
library.
the diagnostics support that is part of the C++11 standard library.
%package test
Summary: Run-Time component of boost test library
@ -623,17 +611,13 @@ a number of significant features and is now developed independently
%patch25 -p1
%patch36 -p1
%patch45 -p1
%patch49 -p1
%patch51 -p1
%patch61 -p1
%patch62 -p1
%patch63 -p1
%patch65 -p1
%patch66 -p2
%patch67 -p2
%patch68 -p1
%patch69 -p2
%patch70 -p1
%patch70 -p2
# At least python2_version needs to be a macro so that it's visible in
# %%install as well.
@ -652,7 +636,8 @@ a number of significant features and is now developed independently
# There are many strict aliasing warnings, and it's not feasible to go
# through them all at this time.
export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
# There are also lots of noisy but harmless unused local typedef warnings.
export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -Wno-unused-local-typedefs"
cat > ./tools/build/src/user-config.jam << "EOF"
import os ;
@ -663,8 +648,7 @@ using gcc : : : <compileflags>$(RPM_OPT_FLAGS) ;
using mpi ;
%endif
%if %{with python3}
# This _adds_ extra python version. It doesn't replace whatever
# python 2.X is default on the system.
using python : %{python2_version} : /usr/bin/python2 : /usr/include/python%{python2_version} : : : : ;
using python : %{python3_version} : /usr/bin/python3 : /usr/include/python%{python3_version}%{python3_abiflags} : : : : %{python3_abiflags} ;
%endif
EOF
@ -837,7 +821,7 @@ echo ============================= install Boost.QuickBook ==================
# Install documentation files (HTML pages) within the temporary place
echo ============================= install documentation ==================
# Prepare the place to temporary store the generated documentation
# Prepare the place to temporarily store the generated documentation
rm -rf %{boost_docdir} && %{__mkdir_p} %{boost_docdir}/html
DOCPATH=%{boost_docdir}
DOCREGEX='.*\.\(html?\|css\|png\|gif\)'
@ -850,8 +834,8 @@ sed "s:^:$DOCPATH/:" tmp-doc-directories \
| xargs -P 0 --no-run-if-empty %{__install} -d
cat tmp-doc-directories | while read tobeinstalleddocdir; do
find $tobeinstalleddocdir -mindepth 1 -maxdepth 1 -regex $DOCREGEX \
| xargs -P 0 %{__install} -p -m 644 -t $DOCPATH/$tobeinstalleddocdir
find $tobeinstalleddocdir -mindepth 1 -maxdepth 1 -regex $DOCREGEX -print0 \
| xargs -P 0 -0 %{__install} -p -m 644 -t $DOCPATH/$tobeinstalleddocdir
done
rm -f tmp-doc-directories
%{__install} -p -m 644 -t $DOCPATH LICENSE_1_0.txt index.htm index.html boost.png rst.css boost.css
@ -870,7 +854,7 @@ do
rm -f libs/${tmp_doc_file}.iso8859
done
# Prepare the place to temporary store the examples
# Prepare the place to temporarily store the examples
rm -rf %{boost_examplesdir} && mkdir -p %{boost_examplesdir}/html
EXAMPLESPATH=%{boost_examplesdir}
find libs -type d -name example -exec find {} -type f \; \
@ -1295,6 +1279,9 @@ fi
%{_mandir}/man1/bjam.1*
%changelog
* Wed Aug 26 2015 Jonathan Wakely <jwakely@redhat.com> 1.59.0-1
- Rebase to 1.59.0
* Tue Aug 25 2015 Jonathan Wakely <jwakely@redhat.com> 1.58.0-9
- Add boost-doctools subpackage (#1244268).

View File

@ -1 +1 @@
b8839650e61e9c1c0a89f371dd475546 boost_1_58_0.tar.bz2
6aa9a5c6a4ca1016edd0ed1178e3cb87 boost_1_59_0.tar.bz2