diff --git a/001-coroutine.patch b/001-coroutine.patch new file mode 100644 index 0000000..f9b3f4a --- /dev/null +++ b/001-coroutine.patch @@ -0,0 +1,19 @@ +------------------------------------------------------------------------ +r84947 | danieljames | 2013-07-03 22:57:56 +0100 (Wed, 03 Jul 2013) | 4 lines + +coroutine: fix typo in Jamfile + +From [84622], by olli + +------------------------------------------------------------------------ +--- 1_54_0/libs/coroutine/build/Jamfile.v2 (revision 84946) ++++ 1_54_0/libs/coroutine/build/Jamfile.v2 (revision 84947) +@@ -40,7 +40,7 @@ + : detail/standard_stack_allocator_posix.cpp + ; + +-explicit yield_sources ; ++explicit allocator_sources ; + + lib boost_coroutine + : allocator_sources diff --git a/002-date-time.patch b/002-date-time.patch new file mode 100644 index 0000000..a05efeb --- /dev/null +++ b/002-date-time.patch @@ -0,0 +1,19 @@ +------------------------------------------------------------------------ +r84948 | danieljames | 2013-07-03 23:02:30 +0100 (Wed, 03 Jul 2013) | 4 lines + +In C++11 the shared_ptr -> bool conversion is explicit. In custom time zone code, make the cast explicit. Fixes compilation failure in C++11 + +From [84626], by marshall. + +------------------------------------------------------------------------ +--- 1_54_0/boost/date_time/local_time/custom_time_zone.hpp (revision 84947) ++++ 1_54_0/boost/date_time/local_time/custom_time_zone.hpp (revision 84948) +@@ -64,7 +64,7 @@ + //! True if zone uses daylight savings adjustments + virtual bool has_dst() const + { +- return (dst_calc_rules_); //if calc_rule is set the tz has dst ++ return (bool) dst_calc_rules_; //if calc_rule is set the tz has dst + } + //! Local time that DST starts -- NADT if has_dst is false + virtual posix_time::ptime dst_local_start_time(gregorian::greg_year y) const diff --git a/003-log.patch b/003-log.patch new file mode 100644 index 0000000..a67c91f --- /dev/null +++ b/003-log.patch @@ -0,0 +1,16 @@ +------------------------------------------------------------------------ +r84966 | andysem | 2013-07-07 11:43:20 +0100 (Sun, 07 Jul 2013) | 1 line + +Backported fix for BOOST_LOG_ONCE_BLOCK_FLAG macro definition. +------------------------------------------------------------------------ +--- 1_54_0/boost/log/utility/once_block.hpp (revision 84965) ++++ 1_54_0/boost/log/utility/once_block.hpp (revision 84966) +@@ -176,7 +176,7 @@ + * been executed. + */ + #define BOOST_LOG_ONCE_BLOCK_FLAG(flag_var)\ +- BOOST_LOG_ONCE_BLOCK_INTERNAL(\ ++ BOOST_LOG_ONCE_BLOCK_FLAG_INTERNAL(\ + flag_var,\ + BOOST_LOG_UNIQUE_IDENTIFIER_NAME(_boost_log_once_block_sentry_)) + diff --git a/boost-1.53.0-__GLIBC_HAVE_LONG_LONG.patch b/boost-1.53.0-__GLIBC_HAVE_LONG_LONG.patch deleted file mode 100644 index 3c425f3..0000000 --- a/boost-1.53.0-__GLIBC_HAVE_LONG_LONG.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up boost/cstdint.hpp\~ boost/cstdint.hpp ---- boost/cstdint.hpp~ 2013-03-07 01:46:19.000000000 +0100 -+++ boost/cstdint.hpp 2013-06-25 21:56:25.930276225 +0200 -@@ -41,7 +41,15 @@ - // so we disable use of stdint.h when GLIBC does not define __GLIBC_HAVE_LONG_LONG. - // See https://svn.boost.org/trac/boost/ticket/3548 and http://sources.redhat.com/bugzilla/show_bug.cgi?id=10990 - // --#if defined(BOOST_HAS_STDINT_H) && (!defined(__GLIBC__) || defined(__GLIBC_HAVE_LONG_LONG)) -+// This define has been dropped altogether in GLIBC 2.17. As of then, -+// support for long long is part of baseline requirements, and -+// [u]int64_t is always defined. See here: -+// http://sourceware.org/ml/libc-alpha/2013-01/msg00440.html -+// -+#if defined(BOOST_HAS_STDINT_H) \ -+ && (!defined(__GLIBC__) \ -+ || defined(__GLIBC_HAVE_LONG_LONG) \ -+ || (defined __GLIBC_PREREQ && __GLIBC_PREREQ(2,17))) - - // The following #include is an implementation artifact; not part of interface. - # ifdef __hpux - -Diff finished. Tue Jun 25 21:56:32 2013 diff --git a/boost-1.53.0-attribute.patch b/boost-1.53.0-attribute.patch index e17f9e7..aaa0f5d 100644 --- a/boost-1.53.0-attribute.patch +++ b/boost-1.53.0-attribute.patch @@ -31,27 +31,3 @@ diff -urp boost_1_48_0~/boost/gil/gil_config.hpp boost_1_48_0/boost/gil/gil_conf #else # define GIL_FORCEINLINE inline #endif -diff -urp boost_1_48_0~/boost/optional/optional.hpp boost_1_48_0/boost/optional/optional.hpp ---- boost_1_48_0~/boost/optional/optional.hpp 2012-01-16 16:15:29.743239804 +0100 -+++ boost_1_48_0/boost/optional/optional.hpp 2012-01-16 16:17:47.488242994 +0100 -@@ -127,7 +127,7 @@ class aligned_storage - union - // This works around GCC warnings about breaking strict aliasing rules when casting storage address to T* - #if defined(BOOST_OPTIONAL_DETAIL_USE_ATTRIBUTE_MAY_ALIAS) -- __attribute__((may_alias)) -+ __attribute__((__may_alias__)) - #endif - dummy_u - { -diff -up /home/ant/rpm/BUILD/boost_1_53_0/boost/random/detail/integer_log2.hpp\~ /home/ant/rpm/BUILD/boost_1_53_0/boost/random/detail/integer_log2.hpp ---- boost_1_53_0/boost/random/detail/integer_log2.hpp~ 2013-01-25 18:06:07.000000000 +0100 -+++ boost_1_53_0/boost/random/detail/integer_log2.hpp 2013-02-07 17:37:53.000000000 +0100 -@@ -27,7 +27,7 @@ namespace detail { - #elif defined(BOOST_MSVC) - #define BOOST_RANDOM_DETAIL_CONSTEXPR __forceinline - #elif defined(__GNUC__) && __GNUC__ >= 4 --#define BOOST_RANDOM_DETAIL_CONSTEXPR inline __attribute__((const)) __attribute__((always_inline)) -+#define BOOST_RANDOM_DETAIL_CONSTEXPR inline __attribute__((__const__)) __attribute__((__always_inline__)) - #else - #define BOOST_RANDOM_DETAIL_CONSTEXPR inline - #endif diff --git a/boost-1.53.0-context.patch b/boost-1.53.0-context.patch index 2f80f07..3cc1cf0 100644 --- a/boost-1.53.0-context.patch +++ b/boost-1.53.0-context.patch @@ -1,14 +1,5 @@ --- boost_1_53_0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S.orig 2013-02-11 14:03:46.631005713 -0600 +++ boost_1_53_0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S 2013-02-11 14:06:52.704815403 -0600 -@@ -78,7 +78,7 @@ - - # call align_stack, R3 contains address at 16 byte boundary after return - # == pointer to fcontext_t and address of context stack -- rlwinm %r3, %r3, 0, 0, 27 -+ clrrwi %r3, %r3, 4 - - stw %r0, 92(%r3) # save address of context stack (base) in fcontext_t - stw %r4, 96(%r3) # save context stack size in fcontext_t @@ -87,12 +87,10 @@ subi %r0, %r3, 64 # reserve 64 bytes (linkage + parameter area), R4 % 16 == 0 stw %r0, 76(%r3) # save address in R3 as stack pointer for context function diff --git a/boost-1.54.0-algorithm-unused_typedef.patch b/boost-1.54.0-algorithm-unused_typedef.patch new file mode 100644 index 0000000..6bc8fe1 --- /dev/null +++ b/boost-1.54.0-algorithm-unused_typedef.patch @@ -0,0 +1,43 @@ +diff -urp boost_1_54_0-orig/boost/algorithm/string/detail/finder.hpp boost_1_54_0/boost/algorithm/string/detail/finder.hpp +--- boost_1_54_0-orig/boost/algorithm/string/detail/finder.hpp 2013-07-23 00:47:43.933889672 +0200 ++++ boost_1_54_0/boost/algorithm/string/detail/finder.hpp 2013-07-23 00:50:40.324958667 +0200 +@@ -142,7 +142,6 @@ namespace boost { + ForwardIteratorT End, + std::forward_iterator_tag ) const + { +- typedef ForwardIteratorT input_iterator_type; + typedef iterator_range result_type; + + first_finder_type first_finder( +@@ -263,7 +262,6 @@ namespace boost { + ForwardIteratorT End, + unsigned int N) const + { +- typedef ForwardIteratorT input_iterator_type; + typedef iterator_range result_type; + + // Sanity check +@@ -298,7 +296,6 @@ namespace boost { + ForwardIteratorT End, + unsigned int N) const + { +- typedef ForwardIteratorT input_iterator_type; + typedef iterator_range result_type; + + // Sanity check +@@ -362,7 +359,6 @@ namespace boost { + unsigned int N, + std::random_access_iterator_tag ) + { +- typedef ForwardIteratorT input_iterator_type; + typedef iterator_range result_type; + + if ( (End<=Begin) || ( static_cast(End-Begin) < N ) ) +@@ -436,7 +432,6 @@ namespace boost { + unsigned int N, + std::random_access_iterator_tag ) + { +- typedef ForwardIteratorT input_iterator_type; + typedef iterator_range result_type; + + if ( (End<=Begin) || ( static_cast(End-Begin) < N ) ) diff --git a/boost-1.54.0-bind-static_assert.patch b/boost-1.54.0-bind-static_assert.patch new file mode 100644 index 0000000..bd1800e --- /dev/null +++ b/boost-1.54.0-bind-static_assert.patch @@ -0,0 +1,21 @@ +diff -up ./boost/bind/arg.hpp~ ./boost/bind/arg.hpp +--- ./boost/bind/arg.hpp~ 2007-11-25 10:07:19.000000000 -0800 ++++ ./boost/bind/arg.hpp 2013-07-18 00:41:41.667412595 -0700 +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + namespace boost + { +@@ -33,8 +34,7 @@ template< int I > struct arg + + template< class T > arg( T const & /* t */ ) + { +- // static assert I == is_placeholder::value +- typedef char T_must_be_placeholder[ I == is_placeholder::value? 1: -1 ]; ++ BOOST_STATIC_ASSERT(I == is_placeholder::value); + } + }; + diff --git a/boost-1.54.0-concept-unused_typedef.patch b/boost-1.54.0-concept-unused_typedef.patch new file mode 100644 index 0000000..9559a5c --- /dev/null +++ b/boost-1.54.0-concept-unused_typedef.patch @@ -0,0 +1,21 @@ +diff -up ./boost/concept/detail/general.hpp~ ./boost/concept/detail/general.hpp +--- ./boost/concept/detail/general.hpp~ 2010-06-08 12:31:13.000000000 -0700 ++++ ./boost/concept/detail/general.hpp 2013-07-18 06:01:05.967747186 -0700 +@@ -6,6 +6,7 @@ + + # include + # include ++# include + + # ifdef BOOST_OLD_CONCEPT_SUPPORT + # include +@@ -68,7 +69,8 @@ struct requirement_ + # define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \ + typedef ::boost::concepts::detail::instantiate< \ + &::boost::concepts::requirement_::failed> \ +- BOOST_PP_CAT(boost_concept_check,__LINE__) ++ BOOST_PP_CAT(boost_concept_check,__LINE__) \ ++ BOOST_STATIC_ASSERT_UNUSED_ATTRIBUTE + + }} + diff --git a/boost-1.54.0-context-execstack.patch b/boost-1.54.0-context-execstack.patch new file mode 100644 index 0000000..8bf3eb1 --- /dev/null +++ b/boost-1.54.0-context-execstack.patch @@ -0,0 +1,129 @@ +diff -up boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S~ 2012-12-21 02:22:09.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S 2013-07-15 11:11:46.772543152 -0700 +@@ -71,3 +71,6 @@ jump_fcontext: + @ and as first arg in context function + ldmia a2, {v1-v8,sp-pc} @ restore v1-V8,SP-PC + .size jump_fcontext,.-jump_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S~ 2012-09-18 02:06:47.000000000 -0700 ++++ boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S 2013-07-15 11:10:32.829144835 -0700 +@@ -70,3 +70,6 @@ jump_fcontext: + + jmp *%edx /* indirect jump to context */ + .size jump_fcontext,.-jump_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S~ 2012-11-27 23:52:08.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S 2013-07-15 11:10:57.848279687 -0700 +@@ -178,3 +178,6 @@ jump_fcontext: + + bctr # jump to context + .size jump_fcontext, .-jump_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S~ 2012-11-27 23:52:08.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S 2013-07-15 11:11:07.189330597 -0700 +@@ -199,3 +199,6 @@ jump_fcontext: + + bctr # jump to context + .size .jump_fcontext, .-.jump_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S~ 2012-09-18 02:06:47.000000000 -0700 ++++ boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S 2013-07-15 11:09:49.724912924 -0700 +@@ -80,3 +80,6 @@ jump_fcontext: + + jmp *%rcx /* indirect jump to context */ + .size jump_fcontext,.-jump_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S~ 2013-01-15 01:51:39.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S 2013-07-15 11:11:38.626499289 -0700 +@@ -74,3 +74,6 @@ finish: + mov a1, #0 @ exit code is zero + bl _exit@PLT @ exit application + .size make_fcontext,.-make_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S~ 2013-06-07 08:38:10.000000000 -0700 ++++ boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S 2013-07-15 11:10:40.333185226 -0700 +@@ -75,3 +75,6 @@ finish: + call _exit@PLT /* exit application */ + hlt + .size make_fcontext,.-make_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S~ 2012-11-27 23:52:08.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S 2013-07-15 11:12:34.392799546 -0700 +@@ -83,3 +83,6 @@ finish: + jalr $t9 # exit application + .end make_fcontext + .size make_fcontext, .-make_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S~ 2013-05-08 22:40:43.000000000 -0700 ++++ boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S 2013-07-15 11:11:20.247400344 -0700 +@@ -109,3 +109,6 @@ finish: + li %r3, 0 # exit code is zero + bl _exit@plt # exit application + .size make_fcontext, .-make_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S~ 2013-05-08 22:40:43.000000000 -0700 ++++ boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S 2013-07-15 11:11:13.400363259 -0700 +@@ -131,3 +131,6 @@ finish: + bl _exit # exit application + nop + .size .make_fcontext, .-.make_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_sparc64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_sparc64_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_sparc64_sysv_elf_gas.S~ 2013-02-12 04:55:22.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/make_sparc64_sysv_elf_gas.S 2013-07-15 11:12:41.643838416 -0700 +@@ -84,3 +84,6 @@ finish: + nop + + .size make_fcontext,.-make_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_sparc_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_sparc_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_sparc_sysv_elf_gas.S~ 2013-02-12 04:55:22.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/make_sparc_sysv_elf_gas.S 2013-07-15 11:12:48.733876794 -0700 +@@ -80,3 +80,6 @@ finish: + nop + + .size make_fcontext,.-make_fcontext ++ ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits +diff -up boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S +--- boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S~ 2012-11-29 23:38:52.000000000 -0800 ++++ boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S 2013-07-15 11:10:06.151001366 -0700 +@@ -72,3 +72,5 @@ finish: + hlt + .size make_fcontext,.-make_fcontext + ++/* Mark that we don't need executable stack. */ ++.section .note.GNU-stack,"",@progbits diff --git a/boost-1.54.0-date_time-unused_typedef-2.patch b/boost-1.54.0-date_time-unused_typedef-2.patch new file mode 100644 index 0000000..b39abe5 --- /dev/null +++ b/boost-1.54.0-date_time-unused_typedef-2.patch @@ -0,0 +1,13 @@ +diff -up boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp\~ boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp +--- boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp~ 2008-11-23 12:13:35.000000000 +0100 ++++ boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp 2013-07-22 23:44:42.834012788 +0200 +@@ -215,7 +215,6 @@ namespace gregorian { + { + std::istream_iterator, charT> beg(is), eos; + +- typedef boost::date_time::all_date_names_put facet_def; + d = from_stream(beg, eos); + return is; + } + +Diff finished. Mon Jul 22 23:44:50 2013 diff --git a/boost-1.54.0-date_time-unused_typedef.patch b/boost-1.54.0-date_time-unused_typedef.patch new file mode 100644 index 0000000..0f287ee --- /dev/null +++ b/boost-1.54.0-date_time-unused_typedef.patch @@ -0,0 +1,100 @@ +Index: boost/date_time/date_parsing.hpp +=================================================================== +--- boost/date_time/date_parsing.hpp (revision 85073) ++++ boost/date_time/date_parsing.hpp (working copy) +@@ -113,7 +113,6 @@ + spec_str = "mdy"; + } + +- typedef typename date_type::year_type year_type; + typedef typename date_type::month_type month_type; + unsigned pos = 0; + unsigned short year(0), month(0), day(0); +@@ -160,7 +159,6 @@ + parse_undelimited_date(const std::string& s) { + int offsets[] = {4,2,2}; + int pos = 0; +- typedef typename date_type::year_type year_type; + //typename date_type::ymd_type ymd((year_type::min)(),1,1); + unsigned short y = 0, m = 0, d = 0; + +Index: boost/date_time/local_time/local_time_io.hpp +=================================================================== +--- boost/date_time/local_time/local_time_io.hpp (revision 85073) ++++ boost/date_time/local_time/local_time_io.hpp (working copy) +@@ -36,7 +36,6 @@ + boost::io::ios_flags_saver iflags(os); + typedef local_date_time time_type;//::utc_time_type typename + typedef date_time::time_facet custom_time_facet; +- typedef std::time_put std_time_facet; + std::ostreambuf_iterator oitr(os); + + if(std::has_facet(os.getloc())) { +@@ -123,7 +122,6 @@ + const boost::local_time::local_time_period& p) { + boost::io::ios_flags_saver iflags(os); + typedef boost::date_time::time_facet custom_facet; +- typedef std::time_put std_time_facet; + std::ostreambuf_iterator oitr(os); + if (std::has_facet(os.getloc())) { + std::use_facet(os.getloc()).put(oitr, os, os.fill(), p); +Index: boost/date_time/posix_time/posix_time_io.hpp +=================================================================== +--- boost/date_time/posix_time/posix_time_io.hpp (revision 85073) ++++ boost/date_time/posix_time/posix_time_io.hpp (working copy) +@@ -47,7 +47,6 @@ + const ptime& p) { + boost::io::ios_flags_saver iflags(os); + typedef boost::date_time::time_facet custom_ptime_facet; +- typedef std::time_put std_ptime_facet; + std::ostreambuf_iterator oitr(os); + if (std::has_facet(os.getloc())) + std::use_facet(os.getloc()).put(oitr, os, os.fill(), p); +@@ -114,7 +113,6 @@ + const boost::posix_time::time_period& p) { + boost::io::ios_flags_saver iflags(os); + typedef boost::date_time::time_facet custom_ptime_facet; +- typedef std::time_put std_time_facet; + std::ostreambuf_iterator oitr(os); + if (std::has_facet(os.getloc())) { + std::use_facet(os.getloc()).put(oitr, os, os.fill(), p); +@@ -180,7 +178,6 @@ + { + boost::io::ios_flags_saver iflags(os); + typedef boost::date_time::time_facet custom_ptime_facet; +- typedef std::time_put std_ptime_facet; + std::ostreambuf_iterator oitr(os); + if (std::has_facet(os.getloc())) + std::use_facet(os.getloc()).put(oitr, os, os.fill(), td); +Index: boost/date_time/string_convert.hpp +=================================================================== +--- boost/date_time/string_convert.hpp (revision 85073) ++++ boost/date_time/string_convert.hpp (working copy) +@@ -21,7 +21,6 @@ + inline + std::basic_string convert_string_type(const std::basic_string& inp_str) + { +- typedef std::basic_string input_type; + typedef std::basic_string output_type; + output_type result; + result.insert(result.begin(), inp_str.begin(), inp_str.end()); +Index: boost/date_time/strings_from_facet.hpp +=================================================================== +--- boost/date_time/strings_from_facet.hpp (revision 85073) ++++ boost/date_time/strings_from_facet.hpp (working copy) +@@ -35,7 +35,6 @@ + { + typedef std::basic_string string_type; + typedef std::vector collection_type; +- typedef std::basic_ostringstream ostream_type; + typedef std::ostreambuf_iterator ostream_iter_type; + typedef std::basic_ostringstream stringstream_type; + typedef std::time_put time_put_facet_type; +@@ -86,7 +85,6 @@ + { + typedef std::basic_string string_type; + typedef std::vector collection_type; +- typedef std::basic_ostringstream ostream_type; + typedef std::ostreambuf_iterator ostream_iter_type; + typedef std::basic_ostringstream stringstream_type; + typedef std::time_put time_put_facet_type; diff --git a/boost-1.54.0-graph-unused_typedef.patch b/boost-1.54.0-graph-unused_typedef.patch new file mode 100644 index 0000000..62dee44 --- /dev/null +++ b/boost-1.54.0-graph-unused_typedef.patch @@ -0,0 +1,11 @@ +diff -urp boost_1_54_0-orig/boost/graph/breadth_first_search.hpp boost_1_54_0/boost/graph/breadth_first_search.hpp +--- boost_1_54_0-orig/boost/graph/breadth_first_search.hpp 2013-07-23 00:47:43.418886551 +0200 ++++ boost_1_54_0/boost/graph/breadth_first_search.hpp 2013-07-23 00:50:40.339958756 +0200 +@@ -64,7 +64,6 @@ namespace boost { + BOOST_CONCEPT_ASSERT(( IncidenceGraphConcept )); + typedef graph_traits GTraits; + typedef typename GTraits::vertex_descriptor Vertex; +- typedef typename GTraits::edge_descriptor Edge; + BOOST_CONCEPT_ASSERT(( BFSVisitorConcept )); + BOOST_CONCEPT_ASSERT(( ReadWritePropertyMapConcept )); + typedef typename property_traits::value_type ColorValue; diff --git a/boost-1.54.0-locale-unused_typedef.patch b/boost-1.54.0-locale-unused_typedef.patch new file mode 100644 index 0000000..b7c9128 --- /dev/null +++ b/boost-1.54.0-locale-unused_typedef.patch @@ -0,0 +1,11 @@ +diff -urp boost_1_54_0-orig/boost/locale/boundary/segment.hpp boost_1_54_0/boost/locale/boundary/segment.hpp +--- boost_1_54_0-orig/boost/locale/boundary/segment.hpp 2013-07-23 00:47:27.020787174 +0200 ++++ boost_1_54_0/boost/locale/boundary/segment.hpp 2013-07-23 00:50:40.382959016 +0200 +@@ -27,7 +27,6 @@ namespace boundary { + int compare_text(LeftIterator l_begin,LeftIterator l_end,RightIterator r_begin,RightIterator r_end) + { + typedef LeftIterator left_iterator; +- typedef RightIterator right_iterator; + typedef typename std::iterator_traits::value_type char_type; + typedef std::char_traits traits; + while(l_begin!=l_end && r_begin!=r_end) { diff --git a/boost-1.54.0-math-unused_typedef-2.patch b/boost-1.54.0-math-unused_typedef-2.patch new file mode 100644 index 0000000..d2ab628 --- /dev/null +++ b/boost-1.54.0-math-unused_typedef-2.patch @@ -0,0 +1,52 @@ +Index: boost/math/special_functions/airy.hpp +=================================================================== +--- boost/math/special_functions/airy.hpp (revision 85073) ++++ boost/math/special_functions/airy.hpp (working copy) +@@ -340,13 +340,6 @@ + inline T airy_ai_zero(unsigned m, const Policy& pol) + { + BOOST_FPU_EXCEPTION_GUARD +- typedef typename policies::evaluation::type value_type; +- typedef typename policies::normalise< +- Policy, +- policies::promote_float, +- policies::promote_double, +- policies::discrete_quantile<>, +- policies::assert_undefined<> >::type forwarding_policy; + BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits::is_integer, "Airy return type must be a floating-point type."); + return policies::checked_narrowing_cast(detail::airy_ai_zero_imp(m, pol), "boost::math::airy_ai_zero<%1%>(unsigned)"); + } +@@ -388,13 +381,6 @@ + inline T airy_bi_zero(unsigned m, const Policy& pol) + { + BOOST_FPU_EXCEPTION_GUARD +- typedef typename policies::evaluation::type value_type; +- typedef typename policies::normalise< +- Policy, +- policies::promote_float, +- policies::promote_double, +- policies::discrete_quantile<>, +- policies::assert_undefined<> >::type forwarding_policy; + BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits::is_integer, "Airy return type must be a floating-point type."); + return policies::checked_narrowing_cast(detail::airy_bi_zero_imp(m, pol), "boost::math::airy_bi_zero<%1%>(unsigned)"); + } +Index: boost/math/special_functions/beta.hpp +=================================================================== +--- boost/math/special_functions/beta.hpp (revision 85073) ++++ boost/math/special_functions/beta.hpp (working copy) +@@ -1331,7 +1331,6 @@ + BOOST_FPU_EXCEPTION_GUARD + typedef typename tools::promote_args::type result_type; + typedef typename policies::evaluation::type value_type; +- typedef typename lanczos::lanczos::type evaluation_type; + typedef typename policies::normalise< + Policy, + policies::promote_float, +@@ -1349,7 +1348,6 @@ + BOOST_FPU_EXCEPTION_GUARD + typedef typename tools::promote_args::type result_type; + typedef typename policies::evaluation::type value_type; +- typedef typename lanczos::lanczos::type evaluation_type; + typedef typename policies::normalise< + Policy, + policies::promote_float, diff --git a/boost-1.54.0-math-unused_typedef.patch b/boost-1.54.0-math-unused_typedef.patch new file mode 100644 index 0000000..f413279 --- /dev/null +++ b/boost-1.54.0-math-unused_typedef.patch @@ -0,0 +1,15 @@ +diff -up boost_1_54_0/boost/math/distributions/inverse_gaussian.hpp~ boost_1_54_0/boost/math/distributions/inverse_gaussian.hpp +--- boost_1_54_0/boost/math/distributions/inverse_gaussian.hpp~ 2012-09-07 01:43:19.000000000 -0700 ++++ boost_1_54_0/boost/math/distributions/inverse_gaussian.hpp 2013-07-22 03:42:15.216142075 -0700 +@@ -285,10 +285,8 @@ namespace detail + + // Define the distribution, using gamma_nooverflow: + typedef gamma_distribution gamma_nooverflow; ++ gamma_nooverflow g(static_cast(0.5), static_cast(1.)); + +- gamma_distribution g(static_cast(0.5), static_cast(1.)); +- +- // gamma_nooverflow g(static_cast(0.5), static_cast(1.)); + // R qgamma(0.2, 0.5, 1) 0.0320923 + RealType qg = quantile(complement(g, p)); + //RealType qg1 = qgamma(1.- p, 0.5, 1.0, true, false); diff --git a/boost-1.54.0-mpi-unused_typedef.patch b/boost-1.54.0-mpi-unused_typedef.patch new file mode 100644 index 0000000..3a01d61 --- /dev/null +++ b/boost-1.54.0-mpi-unused_typedef.patch @@ -0,0 +1,11 @@ +diff -urp boost_1_54_0-orig/libs/mpi/src/communicator.cpp boost_1_54_0/libs/mpi/src/communicator.cpp +--- boost_1_54_0-orig/libs/mpi/src/communicator.cpp 2013-07-23 00:48:17.317091987 +0200 ++++ boost_1_54_0/libs/mpi/src/communicator.cpp 2013-07-23 00:50:40.722961078 +0200 +@@ -118,7 +118,6 @@ optional communicator::iprobe(in + + status communicator::probe(int source, int tag) const + { +- typedef optional result_type; + + status stat; + BOOST_MPI_CHECK_RESULT(MPI_Probe, diff --git a/boost-1.54.0-mpl-print.patch b/boost-1.54.0-mpl-print.patch new file mode 100644 index 0000000..6c27b14 --- /dev/null +++ b/boost-1.54.0-mpl-print.patch @@ -0,0 +1,37 @@ +Index: boost/mpl/print.hpp +=================================================================== +--- boost/mpl/print.hpp (revision 83411) ++++ boost/mpl/print.hpp (working copy) +@@ -45,22 +45,21 @@ + : mpl::identity + #if defined(__MWERKS__) + , aux::print_base +-#endif ++#endif + { + #if defined(BOOST_MSVC) + enum { n = sizeof(T) + -1 }; + #elif defined(__MWERKS__) + void f(int); +-#else +- enum { +- n = +-# if defined(__EDG_VERSION__) +- aux::dependent_unsigned::value > -1 +-# else +- sizeof(T) > -1 +-# endif +- }; +-#endif ++#elif defined(__EDG_VERSION__) ++ enum { n = aux::dependent_unsigned::value > -1 }; ++#elif defined(BOOST_GCC) ++ enum { n1 }; ++ enum { n2 }; ++ enum { n = n1 != n2 }; ++#else ++ enum { n = sizeof(T) > -1 }; ++#endif + }; + + #if defined(BOOST_MSVC) diff --git a/boost-1.54.0-multiprecision-unused_typedef.patch b/boost-1.54.0-multiprecision-unused_typedef.patch new file mode 100644 index 0000000..af245af --- /dev/null +++ b/boost-1.54.0-multiprecision-unused_typedef.patch @@ -0,0 +1,148 @@ +diff -up boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp~ boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp +--- boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp~ 2012-09-20 09:04:02.000000000 -0700 ++++ boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp 2013-07-22 03:31:01.145084522 -0700 +@@ -81,7 +81,6 @@ template + void calc_e(T& result, unsigned digits) + { + typedef typename mpl::front::type ui_type; +- typedef typename mpl::front::type real_type; + // + // 1100 digits in string form: + // +diff -up boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp~ boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp +--- boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp~ 2013-03-31 09:34:50.000000000 -0700 ++++ boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp 2013-07-22 03:43:12.495489757 -0700 +@@ -142,10 +142,6 @@ void hyp1F0(T& H1F0, const T& a, const T + // There are no checks on input range or parameter boundaries. + + typedef typename boost::multiprecision::detail::canonical::type si_type; +- typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; +- typedef typename mpl::front::type fp_type; + + BOOST_ASSERT(&H1F0 != &x); + BOOST_ASSERT(&H1F0 != &a); +@@ -200,7 +196,6 @@ void eval_exp(T& result, const T& x) + typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename T::exponent_type exp_type; + typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; +- typedef typename boost::multiprecision::detail::canonical::type float_type; + + // Handle special arguments. + int type = eval_fpclassify(x); +@@ -326,7 +321,6 @@ void eval_log(T& result, const T& arg) + // then let y = x - 1 and compute: + // log(x) = log(2) * n + log1p(1 + y) + // +- typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; + typedef typename T::exponent_type exp_type; + typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; +@@ -409,9 +403,6 @@ inline void eval_pow(T& result, const T& + { + BOOST_STATIC_ASSERT_MSG(number_category::value == number_kind_floating_point, "The pow function is only valid for floating point types."); + typedef typename boost::multiprecision::detail::canonical::type si_type; +- typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; + typedef typename mpl::front::type fp_type; + + if((&result == &x) || (&result == &a)) +@@ -595,10 +586,7 @@ namespace detail{ + template + void sinhcosh(const T& x, T* p_sinh, T* p_cosh) + { +- typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; + typedef typename mpl::front::type fp_type; + + switch(eval_fpclassify(x)) +diff -up boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp~ boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp +--- boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp~ 2013-03-31 09:34:50.000000000 -0700 ++++ boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp 2013-07-22 03:44:30.512963273 -0700 +@@ -17,9 +17,6 @@ void hyp0F1(T& result, const T& b, const + { + typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; +- typedef typename mpl::front::type fp_type; + + // Compute the series representation of Hypergeometric0F1 taken from + // http://functions.wolfram.com/HypergeometricFunctions/Hypergeometric0F1/06/01/01/ +@@ -82,8 +79,6 @@ void eval_sin(T& result, const T& x) + + typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; + typedef typename mpl::front::type fp_type; + + switch(eval_fpclassify(x)) +@@ -228,8 +223,6 @@ void eval_cos(T& result, const T& x) + + typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; + typedef typename mpl::front::type fp_type; + + switch(eval_fpclassify(x)) +@@ -381,11 +374,7 @@ void hyp2F1(T& result, const T& a, const + // Abramowitz and Stegun 15.1.1. + // There are no checks on input range or parameter boundaries. + +- typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; +- typedef typename mpl::front::type fp_type; + + T x_pow_n_div_n_fact(x); + T pochham_a (a); +@@ -443,10 +432,7 @@ template + void eval_asin(T& result, const T& x) + { + BOOST_STATIC_ASSERT_MSG(number_category::value == number_kind_floating_point, "The asin function is only valid for floating point types."); +- typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; + typedef typename mpl::front::type fp_type; + + if(&result == &x) +@@ -597,8 +583,6 @@ void eval_atan(T& result, const T& x) + BOOST_STATIC_ASSERT_MSG(number_category::value == number_kind_floating_point, "The atan function is only valid for floating point types."); + typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; + typedef typename mpl::front::type fp_type; + + switch(eval_fpclassify(x)) +@@ -699,11 +683,7 @@ void eval_atan2(T& result, const T& y, c + return; + } + +- typedef typename boost::multiprecision::detail::canonical::type si_type; + typedef typename boost::multiprecision::detail::canonical::type ui_type; +- typedef typename T::exponent_type exp_type; +- typedef typename boost::multiprecision::detail::canonical::type canonical_exp_type; +- typedef typename mpl::front::type fp_type; + + switch(eval_fpclassify(y)) + { +diff -up boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp~ boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp +--- boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp~ 2012-12-20 09:42:14.000000000 -0800 ++++ boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp 2013-07-22 03:38:51.614906286 -0700 +@@ -191,7 +191,6 @@ void generic_interconvert(To& to, const + template + void generic_interconvert(To& to, const From& from, const mpl::int_& /*to_type*/, const mpl::int_& /*from_type*/) + { +- typedef typename component_type >::type from_component_type; + typedef typename component_type >::type to_component_type; + + number t(from); diff --git a/boost-1.54.0-numeric-unused_typedef.patch b/boost-1.54.0-numeric-unused_typedef.patch new file mode 100644 index 0000000..b391725 --- /dev/null +++ b/boost-1.54.0-numeric-unused_typedef.patch @@ -0,0 +1,250 @@ +diff -up boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp~ boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp +--- boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp~ 2010-10-19 00:01:35.000000000 -0700 ++++ boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp 2013-07-22 04:33:26.399038120 -0700 +@@ -1303,7 +1303,6 @@ namespace detail { + void matrix_swap (M &m, matrix_expression &e, packed_proxy_tag, row_major_tag) { + typedef F functor_type; + // R unnecessary, make_conformant not required +- typedef typename M::size_type size_type; + typedef typename M::difference_type difference_type; + typename M::iterator1 it1 (m.begin1 ()); + typename E::iterator1 it1e (e ().begin1 ()); +@@ -1329,7 +1328,6 @@ namespace detail { + void matrix_swap (M &m, matrix_expression &e, packed_proxy_tag, column_major_tag) { + typedef F functor_type; + // R unnecessary, make_conformant not required +- typedef typename M::size_type size_type; + typedef typename M::difference_type difference_type; + typename M::iterator2 it2 (m.begin2 ()); + typename E::iterator2 it2e (e ().begin2 ()); +@@ -1357,7 +1355,6 @@ namespace detail { + typedef R conformant_restrict_type; + typedef typename M::size_type size_type; + typedef typename M::difference_type difference_type; +- typedef typename M::value_type value_type; + BOOST_UBLAS_CHECK (m.size1 () == e ().size1 (), bad_size ()); + BOOST_UBLAS_CHECK (m.size2 () == e ().size2 (), bad_size ()); + +@@ -1482,7 +1479,6 @@ namespace detail { + typedef R conformant_restrict_type; + typedef typename M::size_type size_type; + typedef typename M::difference_type difference_type; +- typedef typename M::value_type value_type; + BOOST_UBLAS_CHECK (m.size1 () == e ().size1 (), bad_size ()); + BOOST_UBLAS_CHECK (m.size2 () == e ().size2 (), bad_size ()); + +diff -up boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp~ boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp +--- boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp~ 2007-11-25 10:07:19.000000000 -0800 ++++ boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp 2013-07-22 04:32:21.774650296 -0700 +@@ -379,7 +379,6 @@ namespace detail { + typedef typename V::size_type size_type; + typedef typename V::difference_type difference_type; + typedef typename V::value_type value_type; +- typedef typename V::reference reference; + #if BOOST_UBLAS_TYPE_CHECK + vector cv (v.size ()); + indexing_vector_assign (cv, v); +@@ -513,7 +512,6 @@ namespace detail { + typedef F functor_type; + typedef typename V::size_type size_type; + typedef typename V::difference_type difference_type; +- typedef typename V::value_type value_type; + + detail::make_conformant (v, e); + // FIXME should be a seperate restriction for E +diff -up boost_1_54_0/boost/numeric/ublas/lu.hpp~ boost_1_54_0/boost/numeric/ublas/lu.hpp +--- boost_1_54_0/boost/numeric/ublas/lu.hpp~ 2010-07-04 23:06:24.000000000 -0700 ++++ boost_1_54_0/boost/numeric/ublas/lu.hpp 2013-07-22 04:40:06.634440205 -0700 +@@ -63,7 +63,6 @@ namespace boost { namespace numeric { na + BOOST_UBLAS_INLINE + void swap_rows (const PM &pm, MV &mv, vector_tag) { + typedef typename PM::size_type size_type; +- typedef typename MV::value_type value_type; + + size_type size = pm.size (); + for (size_type i = 0; i < size; ++ i) { +@@ -75,7 +74,6 @@ namespace boost { namespace numeric { na + BOOST_UBLAS_INLINE + void swap_rows (const PM &pm, MV &mv, matrix_tag) { + typedef typename PM::size_type size_type; +- typedef typename MV::value_type value_type; + + size_type size = pm.size (); + for (size_type i = 0; i < size; ++ i) { +diff -up boost_1_54_0/boost/numeric/ublas/operation.hpp~ boost_1_54_0/boost/numeric/ublas/operation.hpp +--- boost_1_54_0/boost/numeric/ublas/operation.hpp~ 2007-11-25 10:07:19.000000000 -0800 ++++ boost_1_54_0/boost/numeric/ublas/operation.hpp 2013-07-22 04:42:19.436046788 -0700 +@@ -129,7 +129,6 @@ namespace boost { namespace numeric { na + const vector_expression &e2, + V &v, packed_random_access_iterator_tag, row_major_tag) { + typedef const E1 expression1_type; +- typedef const E2 expression2_type; + typedef typename V::size_type size_type; + + typename expression1_type::const_iterator1 it1 (e1 ().begin1 ()); +@@ -159,7 +158,6 @@ namespace boost { namespace numeric { na + const vector_expression &e2, + V &v, packed_random_access_iterator_tag, column_major_tag) { + typedef const E1 expression1_type; +- typedef const E2 expression2_type; + typedef typename V::size_type size_type; + + typename expression1_type::const_iterator2 it2 (e1 ().begin2 ()); +@@ -188,9 +186,7 @@ namespace boost { namespace numeric { na + axpy_prod (const matrix_expression &e1, + const vector_expression &e2, + V &v, sparse_bidirectional_iterator_tag) { +- typedef const E1 expression1_type; + typedef const E2 expression2_type; +- typedef typename V::size_type size_type; + + typename expression2_type::const_iterator it (e2 ().begin ()); + typename expression2_type::const_iterator it_end (e2 ().end ()); +@@ -350,7 +346,6 @@ namespace boost { namespace numeric { na + axpy_prod (const vector_expression &e1, + const matrix_expression &e2, + V &v, packed_random_access_iterator_tag, column_major_tag) { +- typedef const E1 expression1_type; + typedef const E2 expression2_type; + typedef typename V::size_type size_type; + +@@ -380,7 +375,6 @@ namespace boost { namespace numeric { na + axpy_prod (const vector_expression &e1, + const matrix_expression &e2, + V &v, packed_random_access_iterator_tag, row_major_tag) { +- typedef const E1 expression1_type; + typedef const E2 expression2_type; + typedef typename V::size_type size_type; + +@@ -411,8 +405,6 @@ namespace boost { namespace numeric { na + const matrix_expression &e2, + V &v, sparse_bidirectional_iterator_tag) { + typedef const E1 expression1_type; +- typedef const E2 expression2_type; +- typedef typename V::size_type size_type; + + typename expression1_type::const_iterator it (e1 ().begin ()); + typename expression1_type::const_iterator it_end (e1 ().end ()); +@@ -501,9 +493,6 @@ namespace boost { namespace numeric { na + const matrix_expression &e2, + M &m, TRI, + dense_proxy_tag, row_major_tag) { +- typedef M matrix_type; +- typedef const E1 expression1_type; +- typedef const E2 expression2_type; + typedef typename M::size_type size_type; + typedef typename M::value_type value_type; + +@@ -530,11 +519,9 @@ namespace boost { namespace numeric { na + const matrix_expression &e2, + M &m, TRI, + sparse_proxy_tag, row_major_tag) { +- typedef M matrix_type; + typedef TRI triangular_restriction; + typedef const E1 expression1_type; + typedef const E2 expression2_type; +- typedef typename M::size_type size_type; + typedef typename M::value_type value_type; + + #if BOOST_UBLAS_TYPE_CHECK +@@ -580,9 +567,6 @@ namespace boost { namespace numeric { na + const matrix_expression &e2, + M &m, TRI, + dense_proxy_tag, column_major_tag) { +- typedef M matrix_type; +- typedef const E1 expression1_type; +- typedef const E2 expression2_type; + typedef typename M::size_type size_type; + typedef typename M::value_type value_type; + +@@ -609,11 +593,9 @@ namespace boost { namespace numeric { na + const matrix_expression &e2, + M &m, TRI, + sparse_proxy_tag, column_major_tag) { +- typedef M matrix_type; + typedef TRI triangular_restriction; + typedef const E1 expression1_type; + typedef const E2 expression2_type; +- typedef typename M::size_type size_type; + typedef typename M::value_type value_type; + + #if BOOST_UBLAS_TYPE_CHECK +@@ -738,9 +720,6 @@ namespace boost { namespace numeric { na + const matrix_expression &e2, + M &m, + dense_proxy_tag, row_major_tag) { +- typedef M matrix_type; +- typedef const E1 expression1_type; +- typedef const E2 expression2_type; + typedef typename M::size_type size_type; + typedef typename M::value_type value_type; + +@@ -769,9 +748,6 @@ namespace boost { namespace numeric { na + const matrix_expression &e2, + M &m, + dense_proxy_tag, column_major_tag) { +- typedef M matrix_type; +- typedef const E1 expression1_type; +- typedef const E2 expression2_type; + typedef typename M::size_type size_type; + typedef typename M::value_type value_type; + +diff -up boost_1_54_0/boost/numeric/ublas/triangular.hpp~ boost_1_54_0/boost/numeric/ublas/triangular.hpp +--- boost_1_54_0/boost/numeric/ublas/triangular.hpp~ 2012-09-18 14:07:07.000000000 -0700 ++++ boost_1_54_0/boost/numeric/ublas/triangular.hpp 2013-07-22 04:39:31.667230329 -0700 +@@ -1859,7 +1859,6 @@ namespace boost { namespace numeric { na + void inplace_solve (const matrix_expression &e1, vector_expression &e2, + lower_tag, column_major_tag, dense_proxy_tag) { + typedef typename E2::size_type size_type; +- typedef typename E2::difference_type difference_type; + typedef typename E2::value_type value_type; + + BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); +@@ -1914,7 +1913,6 @@ namespace boost { namespace numeric { na + void inplace_solve (const matrix_expression &e1, vector_expression &e2, + lower_tag, column_major_tag, unknown_storage_tag) { + typedef typename E2::size_type size_type; +- typedef typename E2::difference_type difference_type; + typedef typename E2::value_type value_type; + + BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); +@@ -1943,7 +1941,6 @@ namespace boost { namespace numeric { na + void inplace_solve (const matrix_expression &e1, vector_expression &e2, + lower_tag, row_major_tag, dense_proxy_tag) { + typedef typename E2::size_type size_type; +- typedef typename E2::difference_type difference_type; + typedef typename E2::value_type value_type; + + BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); +@@ -1969,7 +1966,6 @@ namespace boost { namespace numeric { na + void inplace_solve (const matrix_expression &e1, vector_expression &e2, + lower_tag, row_major_tag, packed_proxy_tag) { + typedef typename E2::size_type size_type; +- typedef typename E2::difference_type difference_type; + typedef typename E2::value_type value_type; + + BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); +@@ -1998,7 +1994,6 @@ namespace boost { namespace numeric { na + void inplace_solve (const matrix_expression &e1, vector_expression &e2, + lower_tag, row_major_tag, unknown_storage_tag) { + typedef typename E2::size_type size_type; +- typedef typename E2::difference_type difference_type; + typedef typename E2::value_type value_type; + + BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); +@@ -2374,7 +2369,6 @@ namespace boost { namespace numeric { na + void inplace_solve (const matrix_expression &e1, matrix_expression &e2, + lower_tag, dense_proxy_tag) { + typedef typename E2::size_type size_type; +- typedef typename E2::difference_type difference_type; + typedef typename E2::value_type value_type; + + BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); +@@ -2435,7 +2429,6 @@ namespace boost { namespace numeric { na + void inplace_solve (const matrix_expression &e1, matrix_expression &e2, + lower_tag, unknown_storage_tag) { + typedef typename E2::size_type size_type; +- typedef typename E2::difference_type difference_type; + typedef typename E2::value_type value_type; + + BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); diff --git a/boost-1.54.0-property_tree-unused_typedef.patch b/boost-1.54.0-property_tree-unused_typedef.patch new file mode 100644 index 0000000..05158ef --- /dev/null +++ b/boost-1.54.0-property_tree-unused_typedef.patch @@ -0,0 +1,19 @@ +diff -urp boost_1_54_0-orig/boost/property_tree/detail/xml_parser_write.hpp boost_1_54_0/boost/property_tree/detail/xml_parser_write.hpp +--- boost_1_54_0-orig/boost/property_tree/detail/xml_parser_write.hpp 2013-07-23 00:47:43.731888449 +0200 ++++ boost_1_54_0/boost/property_tree/detail/xml_parser_write.hpp 2013-07-23 00:50:40.597960319 +0200 +@@ -35,7 +35,6 @@ namespace boost { namespace property_tre + const xml_writer_settings & settings + ) + { +- typedef typename std::basic_string Str; + if (separate_line) + write_xml_indent(stream,indent,settings); + stream << Ch('<') << Ch('!') << Ch('-') << Ch('-'); +@@ -69,7 +68,6 @@ namespace boost { namespace property_tre + { + + typedef typename Ptree::key_type::value_type Ch; +- typedef typename std::basic_string Str; + typedef typename Ptree::const_iterator It; + + bool want_pretty = settings.indent_count > 0; diff --git a/boost-1.54.0-python-unused_typedef.patch b/boost-1.54.0-python-unused_typedef.patch new file mode 100644 index 0000000..8adf8ed --- /dev/null +++ b/boost-1.54.0-python-unused_typedef.patch @@ -0,0 +1,15 @@ +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 + inline PyObject* registry_to_python_value::operator()(argument_type x) const + { +- typedef converter::registered r; + # if BOOST_WORKAROUND(__GNUC__, < 3) ++ typedef converter::registered r; + // suppresses an ICE, somehow + (void)r::converters; + # endif + +Diff finished. Tue Jul 23 16:19:05 2013 diff --git a/boost-1.54.0-random-unused_typedef.patch b/boost-1.54.0-random-unused_typedef.patch new file mode 100644 index 0000000..fff4226 --- /dev/null +++ b/boost-1.54.0-random-unused_typedef.patch @@ -0,0 +1,24 @@ +Index: boost/random/generate_canonical.hpp +=================================================================== +--- boost/random/generate_canonical.hpp (revision 85073) ++++ boost/random/generate_canonical.hpp (working copy) +@@ -54,7 +54,6 @@ + using std::floor; + BOOST_ASSERT((g.min)() == 0); + BOOST_ASSERT((g.max)() == 1); +- typedef typename URNG::result_type base_result; + std::size_t digits = std::numeric_limits::digits; + std::size_t engine_bits = detail::generator_bits::value(); + std::size_t b = (std::min)(bits, digits); +Index: boost/random/uniform_real_distribution.hpp +=================================================================== +--- boost/random/uniform_real_distribution.hpp (revision 85073) ++++ boost/random/uniform_real_distribution.hpp (working copy) +@@ -36,7 +36,6 @@ + { + for(;;) { + typedef T result_type; +- typedef typename Engine::result_type base_result; + result_type numerator = static_cast(eng() - (eng.min)()); + result_type divisor = static_cast((eng.max)() - (eng.min)()); + BOOST_ASSERT(divisor > 0); diff --git a/boost-1.54.0-spirit-unused_typedef-2.patch b/boost-1.54.0-spirit-unused_typedef-2.patch new file mode 100644 index 0000000..fdc9849 --- /dev/null +++ b/boost-1.54.0-spirit-unused_typedef-2.patch @@ -0,0 +1,22 @@ +diff -urp boost_1_54_0-orig/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp boost_1_54_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp +--- boost_1_54_0-orig/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp 2013-07-23 00:47:37.497850668 +0200 ++++ boost_1_54_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp 2013-07-23 00:50:40.662960713 +0200 +@@ -307,7 +307,6 @@ struct grammar_definition + #if !defined(BOOST_SPIRIT_SINGLE_GRAMMAR_INSTANCE) + typedef impl::grammar_helper_base helper_base_t; + typedef grammar_helper_list helper_list_t; +- typedef typename helper_list_t::vector_t::reverse_iterator iterator_t; + + helper_list_t& helpers = + # if !defined(__GNUC__) || (__GNUC__ > 2) +diff -urp boost_1_54_0-orig/boost/spirit/home/classic/tree/parse_tree.hpp boost_1_54_0/boost/spirit/home/classic/tree/parse_tree.hpp +--- boost_1_54_0-orig/boost/spirit/home/classic/tree/parse_tree.hpp 2013-07-23 00:47:37.407850122 +0200 ++++ boost_1_54_0/boost/spirit/home/classic/tree/parse_tree.hpp 2013-07-23 00:50:40.674960786 +0200 +@@ -76,7 +76,6 @@ struct pt_tree_policy : + template + static void concat(MatchAT& a, MatchBT const& b) + { +- typedef typename match_t::attr_t attr_t; + BOOST_SPIRIT_ASSERT(a && b); + + std::copy(b.trees.begin(), b.trees.end(), diff --git a/boost-1.54.0-spirit-unused_typedef.patch b/boost-1.54.0-spirit-unused_typedef.patch new file mode 100644 index 0000000..830e418 --- /dev/null +++ b/boost-1.54.0-spirit-unused_typedef.patch @@ -0,0 +1,11 @@ +diff -up boost_1_54_0/boost/spirit/home/classic/core/primitives/primitives.hpp~ boost_1_54_0/boost/spirit/home/classic/core/primitives/primitives.hpp +--- boost_1_54_0/boost/spirit/home/classic/core/primitives/primitives.hpp~ 2008-06-22 08:05:38.000000000 -0700 ++++ boost_1_54_0/boost/spirit/home/classic/core/primitives/primitives.hpp 2013-07-22 06:35:38.417914083 -0700 +@@ -47,7 +47,6 @@ BOOST_SPIRIT_CLASSIC_NAMESPACE_BEGIN + typename parser_result::type + parse(ScannerT const& scan) const + { +- typedef typename parser_result::type result_t; + typedef typename ScannerT::value_t value_t; + typedef typename ScannerT::iterator_t iterator_t; + diff --git a/boost-1.54.0-static_warning-unused_typedef.patch b/boost-1.54.0-static_warning-unused_typedef.patch new file mode 100644 index 0000000..9418a17 --- /dev/null +++ b/boost-1.54.0-static_warning-unused_typedef.patch @@ -0,0 +1,23 @@ +diff -up boost_1_54_0/boost/serialization/static_warning.hpp\~ boost_1_54_0/boost/serialization/static_warning.hpp +--- boost_1_54_0/boost/serialization/static_warning.hpp~ 2013-07-15 23:36:08.224983552 +0200 ++++ boost_1_54_0/boost/serialization/static_warning.hpp 2013-07-18 19:33:36.163463409 +0200 +@@ -72,6 +72,7 @@ + #include + #include + #include ++#include + + namespace boost { + namespace serialization { +@@ -101,7 +102,8 @@ struct BOOST_SERIALIZATION_SS {}; + #define BOOST_SERIALIZATION_BSW(B, L) \ + typedef boost::serialization::BOOST_SERIALIZATION_SS< \ + sizeof( boost::serialization::static_warning_test< B, L > ) \ +- > BOOST_JOIN(STATIC_WARNING_LINE, L); ++ > BOOST_JOIN(STATIC_WARNING_LINE, L) \ ++ BOOST_STATIC_ASSERT_UNUSED_ATTRIBUTE; + + #define BOOST_STATIC_WARNING(B) BOOST_SERIALIZATION_BSW(B, __LINE__) + + +Diff finished. Fri Jul 19 01:38:59 2013 diff --git a/boost-1.54.0-tuple-unused_typedef.patch b/boost-1.54.0-tuple-unused_typedef.patch new file mode 100644 index 0000000..51481c2 --- /dev/null +++ b/boost-1.54.0-tuple-unused_typedef.patch @@ -0,0 +1,12 @@ +Index: boost/tuple/detail/tuple_basic.hpp +=================================================================== +--- boost/tuple/detail/tuple_basic.hpp (revision 85075) ++++ boost/tuple/detail/tuple_basic.hpp (working copy) +@@ -225,7 +225,6 @@ + get(const cons& c BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(int, N)) { + typedef BOOST_DEDUCED_TYPENAME detail::drop_front::BOOST_NESTED_TEMPLATE + apply > impl; +- typedef BOOST_DEDUCED_TYPENAME impl::type cons_element; + return impl::call(c).head; + } + diff --git a/boost-1.54.0-unordered-unused_typedef.patch b/boost-1.54.0-unordered-unused_typedef.patch new file mode 100644 index 0000000..27e900a --- /dev/null +++ b/boost-1.54.0-unordered-unused_typedef.patch @@ -0,0 +1,14 @@ +diff -up boost_1_54_0/boost/unordered/detail/unique.hpp\~ boost_1_54_0/boost/unordered/detail/unique.hpp +--- boost_1_54_0/boost/unordered/detail/unique.hpp~ 2012-12-05 23:06:57.000000000 +0100 ++++ boost_1_54_0/boost/unordered/detail/unique.hpp 2013-07-22 23:54:29.222516306 +0200 +@@ -334,8 +334,6 @@ namespace boost { namespace unordered { + + value_type& operator[](key_type const& k) + { +- typedef typename value_type::second_type mapped_type; +- + std::size_t key_hash = this->hash(k); + iterator pos = this->find_node(key_hash, k); + + +Diff finished. Mon Jul 22 23:55:15 2013 diff --git a/boost-1.54.0-xpressive-unused_typedef.patch b/boost-1.54.0-xpressive-unused_typedef.patch new file mode 100644 index 0000000..60a4f5a --- /dev/null +++ b/boost-1.54.0-xpressive-unused_typedef.patch @@ -0,0 +1,11 @@ +diff -urp boost_1_54_0-orig/boost/xpressive/regex_algorithms.hpp boost_1_54_0/boost/xpressive/regex_algorithms.hpp +--- boost_1_54_0-orig/boost/xpressive/regex_algorithms.hpp 2013-07-23 00:47:50.804931313 +0200 ++++ boost_1_54_0/boost/xpressive/regex_algorithms.hpp 2013-07-23 00:50:40.721961072 +0200 +@@ -303,7 +303,6 @@ namespace detail + ) + { + typedef core_access access; +- typedef typename iterator_value::type char_type; + match_results &what = *state.context_.results_ptr_; + BOOST_ASSERT(0 != re.regex_id()); + diff --git a/boost.spec b/boost.spec index 8a2a1d6..f237b9f 100644 --- a/boost.spec +++ b/boost.spec @@ -32,14 +32,15 @@ Name: boost Summary: The free peer-reviewed portable C++ source libraries -Version: 1.53.0 -%define version_enc 1_53_0 -Release: 8%{?dist} +Version: 1.54.0 +%define version_enc 1_54_0 +Release: 1%{?dist} License: Boost and MIT and Python %define toplev_dirname %{name}_%{version_enc} URL: http://www.boost.org Group: System Environment/Libraries + Source0: http://downloads.sourceforge.net/%{name}/%{toplev_dirname}.tar.bz2 Source1: ver.py Source2: libboost_thread.so @@ -87,36 +88,92 @@ BuildRequires: libicu-devel%{?_isa} # https://svn.boost.org/trac/boost/ticket/6150 Patch4: boost-1.50.0-fix-non-utf8-files.patch -# Add a manual page for the sole executable, namely bjam, based on the -# on-line documentation: +# Add a manual page for bjam, based on the on-line documentation: # http://www.boost.org/boost-build2/doc/html/bbv2/overview.html Patch5: boost-1.48.0-add-bjam-man-page.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=756005 -# https://svn.boost.org/trac/boost/ticket/6131 -Patch7: boost-1.50.0-foreach.patch - # https://bugzilla.redhat.com/show_bug.cgi?id=781859 -# The following tickets have still to be fixed by upstream. -# https://svn.boost.org/trac/boost/ticket/6408 -# https://svn.boost.org/trac/boost/ticket/6410 +# The following tickets have yet to be fixed by upstream. # https://svn.boost.org/trac/boost/ticket/6413 +# https://svn.boost.org/trac/boost/ticket/8849 Patch9: boost-1.53.0-attribute.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=783660 -# https://svn.boost.org/trac/boost/ticket/6459 fixed -Patch10: boost-1.50.0-long-double-1.patch - # https://bugzilla.redhat.com/show_bug.cgi?id=828856 # https://bugzilla.redhat.com/show_bug.cgi?id=828857 Patch15: boost-1.50.0-pool.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=909888 -Patch16: boost-1.53.0-context.patch - # https://bugzilla.redhat.com/show_bug.cgi?id=977098 # https://svn.boost.org/trac/boost/ticket/8731 -Patch17: boost-1.53.0-__GLIBC_HAVE_LONG_LONG.patch +Patch18: boost-1.54.0-__GLIBC_HAVE_LONG_LONG.patch + +# Upstream patches posted as release notes: +# http://www.boost.org/users/history/version_1_54_0.html +Patch19: 001-coroutine.patch +Patch20: 002-date-time.patch +Patch21: 003-log.patch + +# https://svn.boost.org/trac/boost/ticket/8826 +Patch22: boost-1.54.0-context-execstack.patch + +# https://svn.boost.org/trac/boost/ticket/8844 +Patch23: boost-1.54.0-bind-static_assert.patch + +# https://svn.boost.org/trac/boost/ticket/8847 +Patch24: boost-1.54.0-concept-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/5637 +Patch25: boost-1.54.0-mpl-print.patch + +# https://svn.boost.org/trac/boost/ticket/8859 +Patch26: boost-1.54.0-static_warning-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8855 +Patch27: boost-1.54.0-math-unused_typedef.patch +Patch28: boost-1.54.0-math-unused_typedef-2.patch + +# https://svn.boost.org/trac/boost/ticket/8853 +Patch31: boost-1.54.0-tuple-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8854 +Patch32: boost-1.54.0-random-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8856 +Patch33: boost-1.54.0-date_time-unused_typedef.patch +Patch34: boost-1.54.0-date_time-unused_typedef-2.patch + +# https://svn.boost.org/trac/boost/ticket/8870 +Patch35: boost-1.54.0-spirit-unused_typedef.patch +Patch36: boost-1.54.0-spirit-unused_typedef-2.patch + +# https://svn.boost.org/trac/boost/ticket/8871 +Patch37: boost-1.54.0-numeric-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8872 +Patch38: boost-1.54.0-multiprecision-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8874 +Patch42: boost-1.54.0-unordered-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8876 +Patch43: boost-1.54.0-algorithm-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8877 +Patch44: boost-1.54.0-graph-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/8879 +Patch46: boost-1.54.0-property_tree-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8880 +Patch47: boost-1.54.0-xpressive-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8881 +Patch48: boost-1.54.0-mpi-unused_typedef.patch + +# https://svn.boost.org/trac/boost/ticket/8888 +Patch49: boost-1.54.0-python-unused_typedef.patch %bcond_with tests %bcond_with docs_generated @@ -519,15 +576,37 @@ a number of significant features and is now developed independently %prep %setup -q -n %{toplev_dirname} -# Fixes %patch4 -p1 %patch5 -p1 -%patch7 -p2 %patch9 -p1 -%patch10 -p1 %patch15 -p0 -%patch16 -p1 -%patch17 -p0 +%patch18 -p1 +%patch19 -p1 +%patch20 -p1 +%patch21 -p1 +%patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p0 +%patch26 -p1 +%patch27 -p1 +%patch28 -p0 +%patch31 -p0 +%patch32 -p0 +%patch33 -p0 +%patch34 -p1 +%patch35 -p1 +%patch36 -p1 +%patch37 -p1 +%patch38 -p1 +%patch42 -p1 +%patch43 -p1 +%patch44 -p1 +%patch45 -p1 +%patch46 -p1 +%patch47 -p1 +%patch48 -p1 +%patch49 -p1 # At least python2_version needs to be a macro so that it's visible in # %%install as well. @@ -575,7 +654,7 @@ echo ============================= build serial ================== ./b2 -d+2 -q %{?_smp_mflags} \ --without-mpi --without-graph_parallel --build-dir=serial \ %if !%{with context} - --without-context \ + --without-context --without-coroutine \ %endif variant=release threading=multi debug-symbols=on pch=off \ python=%{python2_version} stage @@ -624,7 +703,6 @@ echo ============================= build Boost.Build ================== %install rm -rf $RPM_BUILD_ROOT - cd %{_builddir}/%{toplev_dirname} %if %{with openmpi} || %{with mpich2} @@ -635,6 +713,8 @@ module purge ||: %if %{with openmpi} %{_openmpi_load} +# XXX We want to extract this from RPM flags +# b2 instruction-set=i686 etc. echo ============================= install $MPI_COMPILER ================== ./b2 -q %{?_smp_mflags} \ --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER \ @@ -669,7 +749,7 @@ echo ============================= install serial ================== ./b2 -d+2 -q %{?_smp_mflags} \ --without-mpi --without-graph_parallel --build-dir=serial \ %if !%{with context} - --without-context \ + --without-context --without-coroutine \ %endif --prefix=$RPM_BUILD_ROOT%{_prefix} \ --libdir=$RPM_BUILD_ROOT%{_libdir} \ @@ -1091,6 +1171,40 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/bjam.1* %changelog +* Thu Jul 18 2013 Petr Machata - 1.54.0-1 +- Rebase to 1.54.0 + - Boost.Coroutine is only enabled if Boost.Context is + - Drop boost-1.53-context.patch (interesting parts now upstream) + - Drop boost-1.50.0-foreach.patch (#define foreach now discouraged) + - Add release notes patches (001-coroutine.patch, + 002-date-time.patch, 003-log.patch) +- Add many patches for silencing unused local typedef warnings + (boost-1.54.0-bind-static_assert.patch, + boost-1.54.0-concept-unused_typedef.patch, + boost-1.54.0-static_warning-unused_typedef.patch, + boost-1.54.0-math-unused_typedef.patch, + boost-1.54.0-math-unused_typedef-2.patch, + boost-1.54.0-tuple-unused_typedef.patch, + boost-1.54.0-random-unused_typedef.patch, + boost-1.54.0-date_time-unused_typedef.patch, + boost-1.54.0-date_time-unused_typedef-2.patch, + boost-1.54.0-spirit-unused_typedef.patch, + boost-1.54.0-spirit-unused_typedef-2.patch, + boost-1.54.0-numeric-unused_typedef.patch, + boost-1.54.0-multiprecision-unused_typedef.patch, + boost-1.54.0-unordered-unused_typedef.patch, + boost-1.54.0-algorithm-unused_typedef.patch, + boost-1.54.0-graph-unused_typedef.patch, + boost-1.54.0-locale-unused_typedef.patch, + boost-1.54.0-property_tree-unused_typedef.patch, + boost-1.54.0-xpressive-unused_typedef.patch, + boost-1.54.0-mpi-unused_typedef.patch, + boost-1.54.0-python-unused_typedef.patch) +- Add a patch to turn off execstack in Boost.Context + (boost-1.54.0-context-execstack.patch) +- Fix boost::mpl::print on GCC (boost-1.54.0-mpl-print.patch) +- Add symlinks for /usr/lib/libboost_{thread,locale}.so -> *-mt.so + * Wed Jun 26 2013 Petr Machata - 1.53.0-8 - There's no physical difference between single-threaded and multi-threaded builds, except some libraries are only built in diff --git a/sources b/sources index faa245c..b83e24d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -a00d22605d5dbcfb4c9936a9b35bc4c2 boost_1_53_0.tar.bz2 +15cb8c0803064faef0c4ddf5bc5ca279 boost_1_54_0.tar.bz2