Commit 1.41.0

This commit is contained in:
Petr Machata 2010-01-15 16:36:38 +00:00
parent 456c3cfce0
commit 1891c7ba66
19 changed files with 257 additions and 1283 deletions

View File

@ -1 +1 @@
boost_1_39_0.tar.bz2
boost-1.41.0.cmake0.tar.bz2

View File

@ -1,15 +0,0 @@
--- boost/dynamic_bitset/dynamic_bitset.hpp.debug 2008-10-22 03:13:59.000000000 +0900
+++ boost/dynamic_bitset/dynamic_bitset.hpp 2009-03-23 03:36:40.000000000 +0900
@@ -1017,8 +1017,11 @@
? access_by_bytes
: access_by_blocks;
+ if (mode)
+ return do_count(m_bits.begin(), num_blocks(), Block(0),
+ static_cast<value_to_type<true> *>(0));
return do_count(m_bits.begin(), num_blocks(), Block(0),
- static_cast<value_to_type<mode> *>(0));
+ static_cast<value_to_type<false> *>(0));
}

19
boost-cmake-soname.patch Normal file
View File

@ -0,0 +1,19 @@
*** 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 "6"
)
endif()
endif ()

View File

@ -1,163 +0,0 @@
Index: boost/filesystem/operations.hpp
===================================================================
--- boost/filesystem/operations.hpp (revision 52859)
+++ boost/filesystem/operations.hpp (working copy)
@@ -659,9 +659,9 @@
{ return is_symlink<wpath>( ph ); }
inline bool is_empty( const path & ph )
- { return is_empty<path>( ph ); }
+ { return boost::filesystem::is_empty<path>( ph ); }
inline bool is_empty( const wpath & ph )
- { return is_empty<wpath>( ph ); }
+ { return boost::filesystem::is_empty<wpath>( ph ); }
inline bool equivalent( const path & ph1, const path & ph2 )
{ return equivalent<path>( ph1, ph2 ); }
Index: libs/filesystem/test/path_test.cpp
===================================================================
--- libs/filesystem/test/path_test.cpp (revision 52859)
+++ libs/filesystem/test/path_test.cpp (working copy)
@@ -27,9 +27,8 @@
namespace fs = boost::filesystem;
using boost::filesystem::path;
-using boost::next;
-using boost::prior;
+
#include <boost/detail/lightweight_test.hpp>
#define PATH_CHECK( a, b ) check( a, b, __LINE__ )
@@ -480,18 +479,18 @@
itr_ck = "foo";
BOOST_TEST( *itr_ck.begin() == std::string( "foo" ) );
- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) );
- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() );
+ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) );
+ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() );
itr_ck = path( "/foo" );
BOOST_TEST( *itr_ck.begin() == std::string( "/" ) );
- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "foo" ) );
- BOOST_TEST( next(next( itr_ck.begin() )) == itr_ck.end() );
- BOOST_TEST( next( itr_ck.begin() ) == prior( itr_ck.end() ) );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) );
- BOOST_TEST( *prior(prior( itr_ck.end() )) == std::string( "/" ) );
- BOOST_TEST( prior(prior( itr_ck.end() )) == itr_ck.begin() );
+ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "foo" ) );
+ BOOST_TEST( boost::next(boost::next( itr_ck.begin() )) == itr_ck.end() );
+ BOOST_TEST( boost::next( itr_ck.begin() ) == boost::prior( itr_ck.end() ) );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) );
+ BOOST_TEST( *boost::prior(boost::prior( itr_ck.end() )) == std::string( "/" ) );
+ BOOST_TEST( boost::prior(boost::prior( itr_ck.end() )) == itr_ck.begin() );
itr_ck = "/foo/bar";
itr = itr_ck.begin();
@@ -1106,65 +1105,65 @@
itr_ck = path( "c:" );
BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) );
- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() );
- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "c:" ) );
+ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() );
+ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "c:" ) );
itr_ck = path( "c:/" );
BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) );
- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "/" ) );
- BOOST_TEST( next( next( itr_ck.begin() )) == itr_ck.end() );
- BOOST_TEST( prior( prior( itr_ck.end() )) == itr_ck.begin() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "/" ) );
- BOOST_TEST( *prior( prior( itr_ck.end() )) == std::string( "c:" ) );
+ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "/" ) );
+ BOOST_TEST( boost::next( boost::next( itr_ck.begin() )) == itr_ck.end() );
+ BOOST_TEST( boost::prior( boost::prior( itr_ck.end() )) == itr_ck.begin() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "/" ) );
+ BOOST_TEST( *boost::prior( boost::prior( itr_ck.end() )) == std::string( "c:" ) );
itr_ck = path( "c:foo" );
BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) );
- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "foo" ) );
- BOOST_TEST( next(next( itr_ck.begin() )) == itr_ck.end() );
- BOOST_TEST( prior(prior( itr_ck.end() )) == itr_ck.begin() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) );
- BOOST_TEST( *prior(prior( itr_ck.end() )) == std::string( "c:" ) );
+ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "foo" ) );
+ BOOST_TEST( boost::next(boost::next( itr_ck.begin() )) == itr_ck.end() );
+ BOOST_TEST( boost::prior(boost::prior( itr_ck.end() )) == itr_ck.begin() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) );
+ BOOST_TEST( *boost::prior(boost::prior( itr_ck.end() )) == std::string( "c:" ) );
itr_ck = path( "c:/foo" );
BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) );
- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "/" ) );
- BOOST_TEST( *next( next( itr_ck.begin() )) == std::string( "foo" ) );
- BOOST_TEST( next( next( next( itr_ck.begin() ))) == itr_ck.end() );
- BOOST_TEST( prior( prior( prior( itr_ck.end() ))) == itr_ck.begin() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) );
- BOOST_TEST( *prior( prior( itr_ck.end() )) == std::string( "/" ) );
- BOOST_TEST( *prior( prior( prior( itr_ck.end() ))) == std::string( "c:" ) );
+ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "/" ) );
+ BOOST_TEST( *boost::next( boost::next( itr_ck.begin() )) == std::string( "foo" ) );
+ BOOST_TEST( boost::next( boost::next( boost::next( itr_ck.begin() ))) == itr_ck.end() );
+ BOOST_TEST( boost::prior( boost::prior( boost::prior( itr_ck.end() ))) == itr_ck.begin() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) );
+ BOOST_TEST( *boost::prior( boost::prior( itr_ck.end() )) == std::string( "/" ) );
+ BOOST_TEST( *boost::prior( boost::prior( boost::prior( itr_ck.end() ))) == std::string( "c:" ) );
itr_ck = path( "//net" );
BOOST_TEST( *itr_ck.begin() == std::string( "//net" ) );
- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() );
- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "//net" ) );
+ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() );
+ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "//net" ) );
itr_ck = path( "//net/" );
CHECK_EQUAL( *itr_ck.begin(), "//net" );
- CHECK_EQUAL( *next( itr_ck.begin() ), "/" );
- BOOST_TEST( next(next( itr_ck.begin() )) == itr_ck.end() );
- BOOST_TEST( prior(prior( itr_ck.end() )) == itr_ck.begin() );
- CHECK_EQUAL( *prior( itr_ck.end() ), "/" );
- CHECK_EQUAL( *prior(prior( itr_ck.end() )), "//net" );
+ CHECK_EQUAL( *boost::next( itr_ck.begin() ), "/" );
+ BOOST_TEST( boost::next(boost::next( itr_ck.begin() )) == itr_ck.end() );
+ BOOST_TEST( boost::prior(boost::prior( itr_ck.end() )) == itr_ck.begin() );
+ CHECK_EQUAL( *boost::prior( itr_ck.end() ), "/" );
+ CHECK_EQUAL( *boost::prior(boost::prior( itr_ck.end() )), "//net" );
itr_ck = path( "//net/foo" );
BOOST_TEST( *itr_ck.begin() == std::string( "//net" ) );
- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "/" ) );
- BOOST_TEST( *next(next( itr_ck.begin() )) == std::string( "foo" ) );
- BOOST_TEST( next(next(next( itr_ck.begin() ))) == itr_ck.end() );
- BOOST_TEST( prior(prior(prior( itr_ck.end() ))) == itr_ck.begin() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) );
- BOOST_TEST( *prior(prior( itr_ck.end() )) == std::string( "/" ) );
- BOOST_TEST( *prior(prior(prior( itr_ck.end() ))) == std::string( "//net" ) );
+ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "/" ) );
+ BOOST_TEST( *boost::next(boost::next( itr_ck.begin() )) == std::string( "foo" ) );
+ BOOST_TEST( boost::next(boost::next(boost::next( itr_ck.begin() ))) == itr_ck.end() );
+ BOOST_TEST( boost::prior(boost::prior(boost::prior( itr_ck.end() ))) == itr_ck.begin() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) );
+ BOOST_TEST( *boost::prior(boost::prior( itr_ck.end() )) == std::string( "/" ) );
+ BOOST_TEST( *boost::prior(boost::prior(boost::prior( itr_ck.end() ))) == std::string( "//net" ) );
itr_ck = path( "prn:" );
BOOST_TEST( *itr_ck.begin() == std::string( "prn:" ) );
- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() );
- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() );
- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "prn:" ) );
+ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() );
+ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() );
+ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "prn:" ) );
} // Windows
else

View File

@ -1,15 +0,0 @@
diff -ru boost/function/function_template.hpp boost/function/function_template.hpp
--- boost/function/function_template.hpp 2009-05-10 10:31:29.000000000 +0100
+++ boost/function/function_template.hpp 2009-05-10 10:49:46.000000000 +0100
@@ -950,10 +950,10 @@
f.vtable->manager(f.functor, this->functor,
boost::detail::function::move_functor_tag);
f.vtable = 0;
-#if !defined(BOOST_NO_EXCEPTIONS)
} else {
clear();
}
+#if !defined(BOOST_NO_EXCEPTIONS)
} catch (...) {
vtable = 0;
throw;

View File

@ -1,204 +0,0 @@
Index: boost/gil/bit_aligned_pixel_reference.hpp
===================================================================
--- boost/gil/bit_aligned_pixel_reference.hpp (revision 53049)
+++ boost/gil/bit_aligned_pixel_reference.hpp (working copy)
@@ -145,7 +145,7 @@
// Construct from another compatible pixel type
bit_aligned_pixel_reference(const bit_aligned_pixel_reference& p) : _bit_range(p._bit_range) {}
- template <typename BF, typename CR> bit_aligned_pixel_reference(packed_pixel<BF,CR,Layout>& p) : _bit_range(static_cast<data_ptr_t>(&at_c<0>(p)), at_c<0>(p).first_bit()) {
+ template <typename BF, typename CR> bit_aligned_pixel_reference(packed_pixel<BF,CR,Layout>& p) : _bit_range(static_cast<data_ptr_t>(&gil::at_c<0>(p)), gil::at_c<0>(p).first_bit()) {
check_compatible<packed_pixel<BF,CR,Layout> >();
}
Index: boost/gil/color_base.hpp
===================================================================
--- boost/gil/color_base.hpp (revision 53049)
+++ boost/gil/color_base.hpp (working copy)
@@ -155,15 +155,15 @@
homogeneous_color_base(Element v0, Element v1, Element v2) : _v0(v0), _v1(v1), _v2(v2) {}
template <typename E2, typename L2> homogeneous_color_base(const homogeneous_color_base<E2,L2,3>& c) :
- _v0(at_c<mapping_transform<Layout,L2,0>::value>(c)),
- _v1(at_c<mapping_transform<Layout,L2,1>::value>(c)),
- _v2(at_c<mapping_transform<Layout,L2,2>::value>(c)) {}
+ _v0(gil::at_c<mapping_transform<Layout,L2,0>::value>(c)),
+ _v1(gil::at_c<mapping_transform<Layout,L2,1>::value>(c)),
+ _v2(gil::at_c<mapping_transform<Layout,L2,2>::value>(c)) {}
// Support for l-value reference proxy copy construction
template <typename E2, typename L2> homogeneous_color_base( homogeneous_color_base<E2,L2,3>& c) :
- _v0(at_c<mapping_transform<Layout,L2,0>::value>(c)),
- _v1(at_c<mapping_transform<Layout,L2,1>::value>(c)),
- _v2(at_c<mapping_transform<Layout,L2,2>::value>(c)) {}
+ _v0(gil::at_c<mapping_transform<Layout,L2,0>::value>(c)),
+ _v1(gil::at_c<mapping_transform<Layout,L2,1>::value>(c)),
+ _v2(gil::at_c<mapping_transform<Layout,L2,2>::value>(c)) {}
// Support for planar_pixel_iterator construction and dereferencing
template <typename P> homogeneous_color_base(P* p,bool) :
Index: boost/gil/color_base_algorithm.hpp
===================================================================
--- boost/gil/color_base_algorithm.hpp (revision 53049)
+++ boost/gil/color_base_algorithm.hpp (working copy)
@@ -101,7 +101,7 @@
template <typename ColorBase, int K> struct kth_semantic_element_reference_type {
BOOST_STATIC_CONSTANT(int, semantic_index = (mpl::at_c<typename ColorBase::layout_t::channel_mapping_t,K>::type::value));
typedef typename kth_element_reference_type<ColorBase,semantic_index>::type type;
- static type get(ColorBase& cb) { return at_c<semantic_index>(cb); }
+ static type get(ColorBase& cb) { return gil::at_c<semantic_index>(cb); }
};
/// \brief Specifies the return type of the constant semantic_at_c<K>(color_base);
@@ -109,7 +109,7 @@
template <typename ColorBase, int K> struct kth_semantic_element_const_reference_type {
BOOST_STATIC_CONSTANT(int, semantic_index = (mpl::at_c<typename ColorBase::layout_t::channel_mapping_t,K>::type::value));
typedef typename kth_element_const_reference_type<ColorBase,semantic_index>::type type;
- static type get(const ColorBase& cb) { return at_c<semantic_index>(cb); }
+ static type get(const ColorBase& cb) { return gil::at_c<semantic_index>(cb); }
};
/// \brief A mutable accessor to the K-th semantic element of a color base
Index: boost/gil/image_view_factory.hpp
===================================================================
--- boost/gil/image_view_factory.hpp (revision 53049)
+++ boost/gil/image_view_factory.hpp (working copy)
@@ -102,7 +102,7 @@
BOOST_STATIC_ASSERT((!is_planar<HomogeneousView>::value && view_is_basic<HomogeneousView>::value));
BOOST_STATIC_ASSERT((boost::is_pointer<typename HomogeneousView::x_iterator>::value));
- return &at_c<0>(view(0,0));
+ return &gil::at_c<0>(view(0,0));
}
/// \ingroup ImageViewConstructors
@@ -430,7 +430,7 @@
typedef typename type::xy_locator locator_t;
typedef typename type::x_iterator x_iterator_t;
typedef typename iterator_adaptor_get_base<x_iterator_t>::type x_iterator_base_t;
- x_iterator_t sit(x_iterator_base_t(&at_c<K>(src(0,0))),src.pixels().pixel_size());
+ x_iterator_t sit(x_iterator_base_t(&gil::at_c<K>(src(0,0))),src.pixels().pixel_size());
return type(src.dimensions(),locator_t(sit, src.pixels().row_size()));
}
};
@@ -444,7 +444,7 @@
typedef typename view_type<channel_t, gray_layout_t, false, false, view_is_mutable<View>::value>::type type;
static type make(const View& src) {
typedef typename type::x_iterator x_iterator_t;
- return interleaved_view(src.width(),src.height(),(x_iterator_t)&at_c<K>(src(0,0)), src.pixels().row_size());
+ return interleaved_view(src.width(),src.height(),(x_iterator_t)&gil::at_c<K>(src(0,0)), src.pixels().row_size());
}
};
@@ -494,7 +494,7 @@
template <typename P> kth_channel_deref_fn(const kth_channel_deref_fn<K,P>&) {}
result_type operator()(argument_type srcP) const {
- return result_type(at_c<K>(srcP));
+ return result_type(gil::at_c<K>(srcP));
}
};
Index: boost/gil/packed_pixel.hpp
===================================================================
--- boost/gil/packed_pixel.hpp (revision 53049)
+++ boost/gil/packed_pixel.hpp (working copy)
@@ -81,7 +81,7 @@
}
packed_pixel(int chan0, int chan1, int chan2) : _bitfield(0) {
BOOST_STATIC_ASSERT((num_channels<packed_pixel>::value==3));
- at_c<0>(*this)=chan0; at_c<1>(*this)=chan1; at_c<2>(*this)=chan2;
+ gil::at_c<0>(*this)=chan0; gil::at_c<1>(*this)=chan1; gil::at_c<2>(*this)=chan2;
}
packed_pixel(int chan0, int chan1, int chan2, int chan3) : _bitfield(0) {
BOOST_STATIC_ASSERT((num_channels<packed_pixel>::value==4));
Index: boost/gil/pixel.hpp
===================================================================
--- boost/gil/pixel.hpp (revision 53049)
+++ boost/gil/pixel.hpp (working copy)
@@ -143,11 +143,11 @@
private:
static void check_gray() { BOOST_STATIC_ASSERT((is_same<typename Layout::color_space_t, gray_t>::value)); }
- template <typename Channel> void assign(const Channel& chan, mpl::false_) { check_gray(); at_c<0>(*this)=chan; }
- template <typename Channel> bool equal (const Channel& chan, mpl::false_) const { check_gray(); return at_c<0>(*this)==chan; }
+ template <typename Channel> void assign(const Channel& chan, mpl::false_) { check_gray(); gil::at_c<0>(*this)=chan; }
+ template <typename Channel> bool equal (const Channel& chan, mpl::false_) const { check_gray(); return gil::at_c<0>(*this)==chan; }
public:
- pixel& operator= (channel_t chan) { check_gray(); at_c<0>(*this)=chan; return *this; }
- bool operator==(channel_t chan) const { check_gray(); return at_c<0>(*this)==chan; }
+ pixel& operator= (channel_t chan) { check_gray(); gil::at_c<0>(*this)=chan; return *this; }
+ bool operator==(channel_t chan) const { check_gray(); return gil::at_c<0>(*this)==chan; }
};
/////////////////////////////
Index: boost/gil/planar_pixel_iterator.hpp
===================================================================
--- boost/gil/planar_pixel_iterator.hpp (revision 53049)
+++ boost/gil/planar_pixel_iterator.hpp (working copy)
@@ -109,8 +109,8 @@
reference operator->() const { return **this; }
// PERFORMANCE_CHECK: Remove?
- bool operator< (const planar_pixel_iterator& ptr) const { return at_c<0>(*this)< at_c<0>(ptr); }
- bool operator!=(const planar_pixel_iterator& ptr) const { return at_c<0>(*this)!=at_c<0>(ptr); }
+ bool operator< (const planar_pixel_iterator& ptr) const { return gil::at_c<0>(*this)< gil::at_c<0>(ptr); }
+ bool operator!=(const planar_pixel_iterator& ptr) const { return gil::at_c<0>(*this)!=gil::at_c<0>(ptr); }
private:
friend class boost::iterator_core_access;
@@ -119,8 +119,8 @@
void advance(ptrdiff_t d) { static_transform(*this,*this,std::bind2nd(detail::plus_asymmetric<ChannelPtr,ptrdiff_t>(),d)); }
reference dereference() const { return this->template deref<reference>(); }
- ptrdiff_t distance_to(const planar_pixel_iterator& it) const { return at_c<0>(it)-at_c<0>(*this); }
- bool equal(const planar_pixel_iterator& it) const { return at_c<0>(*this)==at_c<0>(it); }
+ ptrdiff_t distance_to(const planar_pixel_iterator& it) const { return gil::at_c<0>(it)-gil::at_c<0>(*this); }
+ bool equal(const planar_pixel_iterator& it) const { return gil::at_c<0>(*this)==gil::at_c<0>(it); }
};
namespace detail {
Index: libs/gil/test/pixel.cpp
===================================================================
--- libs/gil/test/pixel.cpp (revision 53049)
+++ libs/gil/test/pixel.cpp (working copy)
@@ -34,8 +34,9 @@
// Testing pixel references and values, pixel operations, color conversion
using namespace boost::gil;
-using namespace std;
+using std::swap;
using namespace boost;
+
void error_if(bool condition);
struct increment {
@@ -63,8 +64,8 @@
// test homogeneous algorithms - fill, max, min
static const int num_chan = num_channels<typename C2::pixel_t>::value;
- static_fill(C2::_pixel, at_c<0>(C1::_pixel)+1);
- error_if(at_c<0>(C2::_pixel) != at_c<num_chan-1>(C2::_pixel));
+ static_fill(C2::_pixel, gil::at_c<0>(C1::_pixel)+1);
+ error_if(gil::at_c<0>(C2::_pixel) != gil::at_c<num_chan-1>(C2::_pixel));
C2::_pixel = C1::_pixel;
error_if(static_max(C2::_pixel) != static_max(C1::_pixel));
@@ -107,7 +108,7 @@
error_if(C1::_pixel!=C2::_pixel);
static_generate(C2::_pixel, set_to_one());
- error_if(at_c<0>(C2::_pixel) != 1);
+ error_if(gil::at_c<0>(C2::_pixel) != 1);
// Test swap if both are mutable and if their value type is the same
// (We know the second one is mutable)
@@ -313,7 +314,7 @@
bgr8_pixel_t bgr8(rgb8);
error_if(bgr8[0] == rgb8[0]);
error_if(dynamic_at_c(bgr8,0) == dynamic_at_c(rgb8,0));
- error_if(at_c<0>(bgr8) == at_c<0>(rgb8));
+ error_if(gil::at_c<0>(bgr8) == gil::at_c<0>(rgb8));
error_if(semantic_at_c<0>(bgr8) != semantic_at_c<0>(rgb8));
error_if(get_color(bgr8,blue_t()) != get_color(rgb8,blue_t()));

12
boost-graph-compile.patch Normal file
View File

@ -0,0 +1,12 @@
*** boost/graph/distributed/detail/mpi_process_group.ipp.orig 2009-12-16 15:46:32.410223363 -0800
--- boost/graph/distributed/detail/mpi_process_group.ipp 2009-12-16 15:47:28.700348300 -0800
***************
*** 19,24 ****
--- 19,25 ----
#endif
#include <cassert>
+ #include <cstdio>
#include <algorithm>
#include <boost/graph/parallel/detail/untracked_pair.hpp>
#include <numeric>

View File

@ -1,15 +0,0 @@
diff -up boost_1_39_0/boost/asio/ssl/detail/openssl_context_service.hpp.ossl10 boost_1_39_0/boost/asio/ssl/detail/openssl_context_service.hpp
--- boost_1_39_0/boost/asio/ssl/detail/openssl_context_service.hpp.ossl10 2008-08-09 03:59:54.000000000 +0200
+++ boost_1_39_0/boost/asio/ssl/detail/openssl_context_service.hpp 2009-08-26 11:26:25.000000000 +0200
@@ -67,7 +67,11 @@ public:
// Create a new context implementation.
void create(impl_type& impl, context_base::method m)
{
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+ const ::SSL_METHOD* ssl_method = 0;
+#else
::SSL_METHOD* ssl_method = 0;
+#endif
switch (m)
{
case context_base::sslv2:

View File

@ -1,160 +0,0 @@
Index: /trunk/boost/python/object_core.hpp
===================================================================
--- /trunk/boost/python/object_core.hpp (revision 45918)
+++ /trunk/boost/python/object_core.hpp (revision 47846)
@@ -42,4 +42,10 @@
namespace boost { namespace python {
+
+namespace detail
+{
+ class kwds_proxy;
+ class args_proxy;
+}
namespace converter
@@ -103,4 +109,9 @@
# define BOOST_PP_ITERATION_PARAMS_1 (3, (1, BOOST_PYTHON_MAX_ARITY, <boost/python/object_call.hpp>))
# include BOOST_PP_ITERATE()
+
+ detail::args_proxy operator* () const;
+ object operator()(detail::args_proxy const &args) const;
+ object operator()(detail::args_proxy const &args,
+ detail::kwds_proxy const &kwds) const;
// truth value testing
@@ -417,4 +428,60 @@
//
+namespace detail
+{
+
+class call_proxy
+{
+public:
+ call_proxy(object target) : m_target(target) {}
+ operator object() const { return m_target;}
+
+ private:
+ object m_target;
+};
+
+class kwds_proxy : public call_proxy
+{
+public:
+ kwds_proxy(object o = object()) : call_proxy(o) {}
+};
+class args_proxy : public call_proxy
+{
+public:
+ args_proxy(object o) : call_proxy(o) {}
+ kwds_proxy operator* () const { return kwds_proxy(*this);}
+};
+}
+
+template <typename U>
+detail::args_proxy api::object_operators<U>::operator* () const
+{
+ object_cref2 x = *static_cast<U const*>(this);
+ return detail::args_proxy(x);
+}
+
+template <typename U>
+object api::object_operators<U>::operator()(detail::args_proxy const &args) const
+{
+ U const& self = *static_cast<U const*>(this);
+ PyObject *result = PyObject_Call(get_managed_object(self, tag),
+ args.operator object().ptr(),
+ 0);
+ return object(detail::new_reference(result));
+
+}
+
+template <typename U>
+object api::object_operators<U>::operator()(detail::args_proxy const &args,
+ detail::kwds_proxy const &kwds) const
+{
+ U const& self = *static_cast<U const*>(this);
+ PyObject *result = PyObject_Call(get_managed_object(self, tag),
+ args.operator object().ptr(),
+ kwds.operator object().ptr());
+ return object(detail::new_reference(result));
+
+}
+
inline object::object()
: object_base(python::incref(Py_None))
Index: /trunk/libs/python/test/object.cpp
===================================================================
--- /trunk/libs/python/test/object.cpp (revision 45918)
+++ /trunk/libs/python/test/object.cpp (revision 47846)
@@ -187,4 +187,9 @@
return s.slice(2,-1).slice(1,-1) == "lo, wor";
}
+
+object test_call(object c, object args, object kwds)
+{
+ return c(*args, **kwds);
+}
bool check_binary_operators()
@@ -378,4 +383,5 @@
def("test_not_item", test_not_item);
+ def("test_call", test_call);
def("check_binary_operators", check_binary_operators);
def("check_inplace", check_inplace);
Index: /trunk/libs/python/test/object.py
===================================================================
--- /trunk/libs/python/test/object.py (revision 45918)
+++ /trunk/libs/python/test/object.py (revision 47846)
@@ -135,5 +135,10 @@
Operators
-
+>>> def print_args(*args, **kwds):
+... print args, kwds
+>>> test_call(print_args, (0, 1, 2, 3), {'a':'A'})
+(0, 1, 2, 3) {'a': 'A'}
+
+
>>> assert check_binary_operators()
Index: /trunk/libs/python/doc/v2/object.html
===================================================================
--- /trunk/libs/python/doc/v2/object.html (revision 45918)
+++ /trunk/libs/python/doc/v2/object.html (revision 47846)
@@ -656,4 +656,9 @@
object operator()(A0 const&amp;, A1 const&amp;,...An const&amp;) const;
+ detail::args_proxy operator* () const;
+ object operator()(detail::args_proxy const &amp;args) const;
+ object operator()(detail::args_proxy const &amp;args,
+ detail::kwds_proxy const &amp;kwds) const;
+
// truth value testing
//
@@ -705,4 +710,23 @@
a2,...aN)</dt>
</dl>
+
+<pre>
+object operator()(detail::args_proxy const &amp;args) const;
+</pre>
+<dl class="function-semantics">
+ <dt><b>Effects:</b>
+ call object with arguments given by the tuple <varname>args</varname></dt>
+</dl>
+<pre>
+object operator()(detail::args_proxy const &amp;args,
+ detail::kwds_proxy const &amp;kwds) const;
+</pre>
+<dl class="function-semantics">
+ <dt><b>Effects:</b>
+ call object with arguments given by the tuple <varname>args</varname>, and named
+ arguments given by the dictionary <varname>kwds</varname></dt>
+</dl>
+
+
<pre>
operator bool_type() const;

View File

@ -1,136 +0,0 @@
Index: /trunk/libs/python/test/enum.py
===================================================================
--- /trunk/libs/python/test/enum.py (revision 36256)
+++ /trunk/libs/python/test/enum.py (revision 53660)
@@ -5,6 +5,6 @@
>>> from enum_ext import *
->>> identity(color.red)
-enum_ext.color.red
+>>> identity(color.red) # in case of duplicated enums it always take the last enum
+enum_ext.color.blood
>>> identity(color.green)
@@ -14,6 +14,6 @@
enum_ext.color.blue
->>> identity(color(1))
-enum_ext.color.red
+>>> identity(color(1)) # in case of duplicated enums it always take the last enum
+enum_ext.color.blood
>>> identity(color(2))
@@ -29,5 +29,5 @@
>>> identity(red)
-enum_ext.color.red
+enum_ext.color.blood
>>> identity(green)
@@ -43,8 +43,16 @@
>>> c = colorized()
>>> c.x
-enum_ext.color.red
+enum_ext.color.blood
>>> c.x = green
>>> c.x
enum_ext.color.green
+>>> red == blood
+True
+>>> red == green
+False
+>>> hash(red) == hash(blood)
+True
+>>> hash(red) == hash(green)
+False
'''
Index: /trunk/libs/python/test/enum.cpp
===================================================================
--- /trunk/libs/python/test/enum.cpp (revision 24614)
+++ /trunk/libs/python/test/enum.cpp (revision 53660)
@@ -13,5 +13,5 @@
using namespace boost::python;
-enum color { red = 1, green = 2, blue = 4 };
+enum color { red = 1, green = 2, blue = 4, blood = 1 };
#if BOOST_WORKAROUND(__MWERKS__, <= 0x2407)
@@ -35,4 +35,5 @@
.value("green", green)
.value("blue", blue)
+ .value("blood", blood)
.export_values()
;
Index: /trunk/libs/python/src/object/enum.cpp
===================================================================
--- /trunk/libs/python/src/object/enum.cpp (revision 41521)
+++ /trunk/libs/python/src/object/enum.cpp (revision 53660)
@@ -15,5 +15,5 @@
#include <structmember.h>
-namespace boost { namespace python { namespace objects {
+namespace boost { namespace python { namespace objects {
struct enum_object
@@ -44,5 +44,5 @@
if (name == 0)
return 0;
-
+
return PyString_FromFormat("%s.%s.%s", mod, self_->ob_type->tp_name, name);
}
@@ -140,4 +140,5 @@
d["__slots__"] = tuple();
d["values"] = dict();
+ d["names"] = dict();
object module_name = module_prefix();
@@ -146,7 +147,7 @@
if (doc)
d["__doc__"] = doc;
-
+
object result = (object(metatype))(name, make_tuple(base), d);
-
+
scope().attr(name) = result;
@@ -168,5 +169,5 @@
= const_cast<converter::registration&>(
converter::registry::lookup(id));
-
+
converters.m_class_object = downcast<PyTypeObject>(this->ptr());
converter::registry::insert(to_python, id);
@@ -187,21 +188,22 @@
dict d = extract<dict>(this->attr("values"))();
d[value] = x;
-
+
// Set the name field in the new enum instanec
enum_object* p = downcast<enum_object>(x.ptr());
Py_XDECREF(p->name);
p->name = incref(name.ptr());
+
+ dict names_dict = extract<dict>(this->attr("names"))();
+ names_dict[x.attr("name")] = x;
}
void enum_base::export_values()
{
- dict d = extract<dict>(this->attr("values"))();
- list values = d.values();
+ dict d = extract<dict>(this->attr("names"))();
+ list items = d.items();
scope current;
-
- for (unsigned i = 0, max = len(values); i < max; ++i)
- {
- api::setattr(current, object(values[i].attr("name")), values[i]);
- }
+
+ for (unsigned i = 0, max = len(items); i < max; ++i)
+ api::setattr(current, items[i][0], items[i][1]);
}

View File

@ -1,13 +0,0 @@
diff -up /home/petr/fedora/boost/F-12/boost_1_39_0/boost/python/detail/translate_exception.hpp\~ /home/petr/fedora/boost/F-12/boost_1_39_0/boost/python/detail/translate_exception.hpp
--- boost_1_39_0/boost/python/detail/translate_exception.hpp~ 2004-08-20 13:10:24.000000000 +0200
+++ boost_1_39_0/boost/python/detail/translate_exception.hpp 2009-11-16 23:30:23.000000000 +0100
@@ -9,6 +9,7 @@
# include <boost/call_traits.hpp>
# include <boost/type_traits/add_const.hpp>
+# include <boost/type_traits/add_reference.hpp>
# include <boost/function/function0.hpp>
Diff finished. Mon Nov 16 23:30:41 2009

View File

@ -1,106 +0,0 @@
Index: /trunk/libs/python/test/test_builtin_converters.py
===================================================================
--- /trunk/libs/python/test/test_builtin_converters.py (revision 40714)
+++ /trunk/libs/python/test/test_builtin_converters.py (revision 54919)
@@ -4,4 +4,22 @@
r"""
>>> from builtin_converters_ext import *
+
+# Use ctypes to get native C type sizes
+>>> from ctypes import sizeof, c_char, c_short, c_int, c_long, c_longlong
+>>> def test_values_signed(t):
+... base = 2 ** (8 * sizeof(t) - 1)
+... return [[-base, -1, 1, base - 1], [-base - 1, base]]
+>>> def test_values_unsigned(t):
+... base = 2 ** (8 * sizeof(t))
+... return [[1, base - 1], [-1L, -1, base]]
+>>> def should_pass(method, values):
+... result = map(method, values)
+... if result != values:
+... print "Got %s but expected %s" % (result, values)
+>>> def test_overflow(method, values):
+... for v in values:
+... try: method(v)
+... except OverflowError: pass
+... else: print "OverflowError expected"
# Synthesize idendity functions in case long long not supported
@@ -63,13 +81,35 @@
show that we have range checking.
-
->>> try: rewrap_value_unsigned_short(-42)
-... except OverflowError: pass
-... else: print 'expected an OverflowError!'
-
->>> try: rewrap_value_int(sys.maxint * 2)
-... except OverflowError: pass
-... else: print 'expected an OverflowError!'
-
+
+>>> should_pass(rewrap_value_signed_char, test_values_signed(c_char)[0])
+>>> should_pass(rewrap_value_short, test_values_signed(c_short)[0])
+>>> should_pass(rewrap_value_int, test_values_signed(c_int)[0])
+>>> should_pass(rewrap_value_long, test_values_signed(c_long)[0])
+>>> should_pass(rewrap_value_long_long, test_values_signed(c_longlong)[0])
+
+>>> should_pass(rewrap_value_unsigned_char, test_values_unsigned(c_char)[0])
+>>> should_pass(rewrap_value_unsigned_short, test_values_unsigned(c_short)[0])
+>>> should_pass(rewrap_value_unsigned_int, test_values_unsigned(c_int)[0])
+>>> should_pass(rewrap_value_unsigned_long, test_values_unsigned(c_long)[0])
+>>> should_pass(rewrap_value_unsigned_long_long,
+... test_values_unsigned(c_longlong)[0])
+
+>>> test_overflow(rewrap_value_signed_char, test_values_signed(c_char)[1])
+>>> test_overflow(rewrap_value_short, test_values_signed(c_short)[1])
+>>> test_overflow(rewrap_value_int, test_values_signed(c_int)[1])
+>>> test_overflow(rewrap_value_long, test_values_signed(c_long)[1])
+>>> test_overflow(rewrap_value_long_long, test_values_signed(c_longlong)[1])
+
+>>> test_overflow(rewrap_value_unsigned_char, test_values_unsigned(c_char)[1])
+>>> test_overflow(rewrap_value_unsigned_short, test_values_unsigned(c_short)[1])
+>>> test_overflow(rewrap_value_unsigned_int, test_values_unsigned(c_int)[1])
+>>> test_overflow(rewrap_value_unsigned_long, test_values_unsigned(c_long)[1])
+
+# Exceptionally for PyLong_AsUnsignedLongLong(), a negative value raises
+# TypeError on Python versions prior to 2.7
+>>> for v in test_values_unsigned(c_longlong)[1]:
+... try: rewrap_value_unsigned_long_long(v)
+... except (OverflowError, TypeError): pass
+... else: print "OverflowError or TypeError expected"
>>> assert abs(rewrap_value_float(4.2) - 4.2) < .000001
Index: /trunk/libs/python/src/converter/builtin_converters.cpp
===================================================================
--- /trunk/libs/python/src/converter/builtin_converters.cpp (revision 52299)
+++ /trunk/libs/python/src/converter/builtin_converters.cpp (revision 54919)
@@ -156,8 +156,25 @@
static T extract(PyObject* intermediate)
{
- return numeric_cast<T>(
- PyLong_Check(intermediate)
- ? PyLong_AsUnsignedLong(intermediate)
- : PyInt_AS_LONG(intermediate));
+ if (PyLong_Check(intermediate)) {
+ // PyLong_AsUnsignedLong() checks for negative overflow, so no
+ // need to check it here.
+ unsigned long result = PyLong_AsUnsignedLong(intermediate);
+ if (PyErr_Occurred())
+ throw_error_already_set();
+ return numeric_cast<T>(result);
+ } else {
+ // None of PyInt_AsUnsigned*() functions check for negative
+ // overflow, so use PyInt_AS_LONG instead and check if number is
+ // negative, issuing the exception appropriately.
+ long result = PyInt_AS_LONG(intermediate);
+ if (PyErr_Occurred())
+ throw_error_already_set();
+ if (result < 0) {
+ PyErr_SetString(PyExc_OverflowError, "can't convert negative"
+ " value to unsigned");
+ throw_error_already_set();
+ }
+ return numeric_cast<T>(result);
+ }
}
};

View File

@ -1,168 +0,0 @@
*** tools/regression/src/run_tests.sh.orig 2007-07-31 19:44:25.000000000 -0500
--- tools/regression/src/run_tests.sh 2007-08-01 12:17:25.000000000 -0500
***************
*** 15,21 ****
# This can be either a non-exitent directory or an already complete Boost
# source tree.
#
! boost_root="$HOME/CVSROOTs/Boost/boost_regression"
#
# Wether to fetch the most current Boost code from CVS (yes/no):
--- 15,21 ----
# This can be either a non-exitent directory or an already complete Boost
# source tree.
#
! boost_root="/usr/src/redhat/BUILD/boost_1_34_1"
#
# Wether to fetch the most current Boost code from CVS (yes/no):
*************** test_tools=gcc
*** 42,58 ****
toolset=gcc
#
- # "comment_path" is the path to an html-file describing the test environment.
- # The content of this file will be embedded in the status pages being produced.
- #
- comment_path="$boost_root/../regression_comment.html"
- #
# "test_dir" is the relative path to the directory to run the tests in,
# defaults to "status" and runs all the tests, but could be a sub-directory
# for example "libs/regex/test" to run the regex tests alone.
#
test_dir="status"
### DEFAULTS ARE OK FOR THESE.
--- 42,59 ----
toolset=gcc
#
# "test_dir" is the relative path to the directory to run the tests in,
# defaults to "status" and runs all the tests, but could be a sub-directory
# for example "libs/regex/test" to run the regex tests alone.
#
test_dir="status"
+ #
+ # "comment_path" is the path to an html-file describing the test environment.
+ # The content of this file will be embedded in the status pages being produced.
+ #
+ comment_path="$boost_root/$test_dir/regression_comment.html"
+
### DEFAULTS ARE OK FOR THESE.
*************** exe_suffix=
*** 71,76 ****
--- 72,80 ----
#
bjam="$boost_root/tools/jam/src/bin/bjam$exe_suffix"
+ # bjam options
+ bjam_flags="--layout=system variant=release -sICU_PATH=/usr --user-config=$boost_root/user-config.jam"
+
#
# "process_jam_log", and "compiler_status" paths to built helper programs:
# The location of the executables of the regression help programs. These
*************** else
*** 98,103 ****
--- 102,115 ----
fi
export BOOST_BUILD_PATH
+ # For shared objects.
+ old_ld_library_path=$LD_LIBRARY_PATH
+ old_ld_run_path=$LD_RUN_PATH
+ LD_LIBRARY_PATH="$boost_root/stage/lib:$old_ld_library_path"
+ LD_RUN_PATH="$boost_root/stage/lib:$old_ld_run_path"
+ export LD_LIBRARY_PATH
+ export LD_RUN_PATH
+
#
# STEP 0:
#
*************** fi
*** 126,137 ****
# STEP 1:
# rebuild bjam if required:
#
! echo building bjam:
! cd "$boost_root/tools/jam/src" && \
! LOCATE_TARGET=bin sh ./build.sh
! if test $? != 0 ; then
! echo "bjam build failed."
! exit 256
fi
#
--- 138,152 ----
# STEP 1:
# rebuild bjam if required:
#
! echo "finding or building bjam":
! if test ! -f "$bjam" ; then
! echo "building bjam":
! cd "$boost_root/tools/jam/src" && \
! LOCATE_TARGET=bin sh ./build.sh
! if test $? != 0 ; then
! echo "bjam build failed."
! exit 256
! fi
fi
#
*************** fi
*** 139,146 ****
# rebuild the regression test helper programs if required:
#
echo building regression test helper programs:
! cd "$boost_root/tools/regression/build" && \
! "$bjam" $toolset release
if test $? != 0 ; then
echo "helper program build failed."
exit 256
--- 154,160 ----
# rebuild the regression test helper programs if required:
#
echo building regression test helper programs:
! cd "$boost_root/tools/regression/build" && "$bjam" $bjam_flags $toolset
if test $? != 0 ; then
echo "helper program build failed."
exit 256
*************** for tool in $test_tools ; do
*** 158,164 ****
#
echo running the $tool regression tests:
cd "$boost_root/$test_dir"
! "$bjam" $tool --dump-tests 2>&1 | tee regress.log
#
# STEP 4:
--- 172,180 ----
#
echo running the $tool regression tests:
cd "$boost_root/$test_dir"
! echo "<p> begin time: " `date` "</p>" >> "$comment_path"
! "$bjam" $bjam_flags $tool --dump-tests 2>&1 | tee regress.log
! echo "<p> end time: " `date` "</p>" >> "$comment_path"
#
# STEP 4:
*************** if test $? != 0 ; then
*** 185,190 ****
--- 201,212 ----
exit 256
fi
+ # cleanup
+ LD_LIBRARY_PATH="$old_ld_library_path"
+ LD_RUN_PATH="$old_ld_run_path"
+ export LD_LIBRARY_PATH
+ export LD_RUN_PATH
+
echo "done!"

View File

@ -1,37 +0,0 @@
*** tools/build/v2/tools/gcc.jam.orig 2009-05-05 12:45:31.000000000 -0700
--- tools/build/v2/tools/gcc.jam 2009-05-05 12:48:23.000000000 -0700
*************** if [ os.name ] != NT && [ os.name ] != O
*** 355,361 ****
# OSF does have an option called -soname but it does not seem to work as
# expected, therefore it has been disabled.
HAVE_SONAME = "" ;
! SONAME_OPTION = -h ;
}
--- 355,362 ----
# OSF does have an option called -soname but it does not seem to work as
# expected, therefore it has been disabled.
HAVE_SONAME = "" ;
! SONAME_OPTION = -soname ;
! SONAME_VERSION = _FEDORA_SONAME ;
}
*************** rule link.dll ( targets * : sources * :
*** 793,799 ****
# 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)
}
rule setup-threading ( targets * : sources * : properties * )
--- 794,800 ----
# 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=).$(SONAME_VERSION) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)
}
rule setup-threading ( targets * : sources * : properties * )

View File

@ -1,11 +0,0 @@
diff -ru boost/spirit/home/classic/iterator/multi_pass.hpp boost/spirit/home/classic/iterator/multi_pass.hpp
--- boost/spirit/home/classic/iterator/multi_pass.hpp 2009-01-09 10:38:36.000000000 +0000
+++ boost/spirit/home/classic/iterator/multi_pass.hpp 2009-01-09 10:39:41.000000000 +0000
@@ -12,7 +12,6 @@
#include <boost/throw_exception.hpp>
#include <deque>
#include <iterator>
-#include <iostream>
#include <algorithm> // for std::swap
#include <exception> // for std::exception
#include <boost/limits.hpp>

View File

@ -1,19 +0,0 @@
*** tools/build/v2/tools/gcc.jam.orig 2008-11-17 16:26:39.000000000 -0800
--- tools/build/v2/tools/gcc.jam 2008-11-17 16:31:08.000000000 -0800
*************** toolset.flags gcc.compile PCH_FILE <pch>
*** 292,298 ****
# Declare flags and action for compilation.
toolset.flags gcc.compile OPTIONS <optimization>off : -O0 ;
! toolset.flags gcc.compile OPTIONS <optimization>speed : -O3 ;
toolset.flags gcc.compile OPTIONS <optimization>space : -Os ;
toolset.flags gcc.compile OPTIONS <inlining>off : -fno-inline ;
--- 292,298 ----
# Declare flags and action for compilation.
toolset.flags gcc.compile OPTIONS <optimization>off : -O0 ;
! toolset.flags gcc.compile OPTIONS <optimization>speed : "_FEDORA_OPT_FLAGS" ;
toolset.flags gcc.compile OPTIONS <optimization>space : -Os ;
toolset.flags gcc.compile OPTIONS <inlining>off : -fno-inline ;

View File

@ -1,36 +0,0 @@
*** Jamroot.orig 2009-05-06 12:46:31.000000000 -0700
--- Jamroot 2009-05-06 18:18:17.000000000 -0700
*************** rule tag ( name : type ? : property-set
*** 344,350 ****
else
{
local result = [ common.format-name
! <base>
-$(BUILD_ID)
: $(name) : $(type) : $(property-set) ] ;
--- 344,350 ----
else
{
local result = [ common.format-name
! <base> <threading>
-$(BUILD_ID)
: $(name) : $(type) : $(property-set) ] ;
*************** rule tag ( name : type ? : property-set
*** 356,362 ****
# suffixes either. Pgi compilers can not accept library with version
# suffix.
if $(type) = SHARED_LIB &&
! ( ! ( [ $(property-set).get <target-os> ] in windows cygwin darwin aix ) &&
! ( [ $(property-set).get <toolset> ] in pgi ) )
{
result = $(result).$(BOOST_VERSION) ;
--- 356,362 ----
# suffixes either. Pgi compilers can not accept library with version
# suffix.
if $(type) = SHARED_LIB &&
! ( ! ( [ $(property-set).get <target-os> ] in windows cygwin darwin aix linux ) &&
! ( [ $(property-set).get <toolset> ] in pgi ) )
{
result = $(result).$(BOOST_VERSION) ;

View File

@ -1,37 +1,43 @@
# Support for documentation installation
# As the %%doc macro erases the target directory, namely
# $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}, manually installed
# documentation must be saved into a temporary dedicated directory.
%define boost_docdir __tmp_docdir
# Support for long double
%define disable_long_double 0
%ifarch %{arm}
%define disable_long_double 1
%define disable_long_double 1
%endif
Name: boost
Summary: The Boost C++ Libraries
Version: 1.39.0
Release: 11%{?dist}
Summary: The free peer-reviewed portable C++ source libraries
Version: 1.41.0
Release: 2%{?dist}
License: Boost
URL: http://www.boost.org/
URL: http://sodium.resophonic.com/boost-cmake/%{version}.cmake0/
Group: System Environment/Libraries
Source: http://downloads.sourceforge.net/project/boost/boost/1.39.0/boost_1_39_0.tar.bz2
Obsoletes: boost-doc <= 1.30.2
Obsoletes: boost-python <= 1.30.2
Provides: boost-doc = %{version}-%{release}
%define full_version %{name}-%{version}.cmake0
Source: %{full_version}.tar.bz2
# boost is an "umbrella" package that pulls in all other boost components
Requires: boost-date-time = %{version}-%{release}
Requires: boost-filesystem = %{version}-%{release}
Requires: boost-graph = %{version}-%{release}
Requires: boost-iostreams = %{version}-%{release}
Requires: boost-math = %{version}-%{release}
Requires: boost-test = %{version}-%{release}
Requires: boost-mpi = %{version}-%{release}
Requires: boost-program-options = %{version}-%{release}
Requires: boost-python = %{version}-%{release}
Requires: boost-regex = %{version}-%{release}
Requires: boost-serialization = %{version}-%{release}
Requires: boost-signals = %{version}-%{release}
Requires: boost-system = %{version}-%{release}
Requires: boost-test = %{version}-%{release}
Requires: boost-thread = %{version}-%{release}
Requires: boost-wave = %{version}-%{release}
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: cmake
BuildRequires: libstdc++-devel
BuildRequires: bzip2-libs
BuildRequires: bzip2-devel
@ -39,33 +45,13 @@ BuildRequires: zlib-devel
BuildRequires: python-devel
BuildRequires: libicu-devel
BuildRequires: chrpath
BuildRequires: mpich2-devel
# Fedora-centric patch.
Patch0: boost-version-override.patch
Patch1: boost-use-rpm-optflags.patch
Patch2: boost-run-tests.patch
Patch3: boost-soname.patch
# Upstream status unknown.
Patch4: boost-unneccessary_iostreams.patch
Patch5: boost-bitset.patch
Patch6: boost-function_template.patch
Patch7: boost-fs_gcc44.patch
Patch8: boost-openssl-1.0.patch
# These patches are taken from post-1.39.0 SVN (i.e. are all upstream
# and will likely go away when we rebase).
Patch9: boost-gil_gcc44.patch
Patch10: boost-python_call_operator.patch
Patch11: boost-python_enums.patch
Patch12: boost-python_uint.patch
# Not upstream
Patch13: boost-python_translate_exception.patch
Patch0: boost-graph-compile.patch
Patch1: boost-cmake-soname.patch
%bcond_with tests
%bcond_with docs_generated
%define sonamever 5
%description
Boost provides free peer-reviewed portable C++ source libraries. The
@ -115,21 +101,24 @@ Runtime support for Boost.IOStreams, a framework for defining streams,
stream buffers and i/o filters.
%package math
Summary: Runtime component of boost math library
Summary: Stub that used to contain boost math library
Group: System Environment/Libraries
%description math
Runtime support Boost.Math, a library of math and numeric tools.
This package is a stub that used to contain runtime component of boost
math library. Now that boost math library is header-only, this
package is empty. It's kept around only so that during yum-assisted
update, old libraries from boost-math package aren't left around.
%package test
Summary: Runtime component of boost test library
%package mpi
Summary: Runtime component of boost mpi library
Group: System Environment/Libraries
%description test
%description mpi
Runtime support for simple program testing, full unit testing, and for
program execution monitoring.
Runtime support for Boost MPI, library providing a clean C++ API over
the OpenMPI implementation of MPI.
%package program-options
Summary: Runtime component of boost program_options library
@ -187,15 +176,14 @@ Runtime component of Boost operating system support library, including
the diagnostics support that will be part of the C++0x standard
library.
%package wave
Summary: Runtime component of boost C99/C++ preprocessing library
%package test
Summary: Runtime component of boost test library
Group: System Environment/Libraries
%description wave
%description test
Runtime support for the Boost.Wave library, a Standards conformant,
and highly configurable implementation of the mandated C99/C++
preprocessor functionality.
Runtime support for simple program testing, full unit testing, and for
program execution monitoring.
%package thread
Summary: Runtime component of boost thread library
@ -208,6 +196,16 @@ functions for managing multiple threads of execution, and for
synchronizing data between the threads or providing separate copies of
data specific to individual threads.
%package wave
Summary: Runtime component of boost C99/C++ preprocessing library
Group: System Environment/Libraries
%description wave
Runtime support for the Boost.Wave library, a Standards conformant,
and highly configurable implementation of the mandated C99/C++
preprocessor functionality.
%package devel
Summary: The Boost C++ headers and shared development libraries
Group: Development/Libraries
@ -228,243 +226,286 @@ Provides: boost-devel-static = %{version}-%{release}
Static Boost C++ libraries.
%package doc
Summary: The Boost C++ html docs
Summary: HTML documentation for the Boost C++ libraries
Group: Documentation
%if 0%{?fedora} >= 10
BuildArch: noarch
%endif
Provides: boost-python-docs = %{version}-%{release}
%description doc
HTML documentation files for Boost C++ libraries.
This package contains the documentation in the HTML format of the Boost C++
libraries. The documentation provides the same content as that on the Boost
web page (http://www.boost.org/doc/libs/1_40_0).
%prep
%setup -q -n %{name}_1_39_0
%setup -q -n %{full_version}
%patch0 -p0
sed 's/_FEDORA_OPT_FLAGS/%{optflags}/' %{PATCH1} | %{__patch} -p0 --fuzz=0
%patch2 -p0
sed 's/_FEDORA_SONAME/%{sonamever}/' %{PATCH3} | %{__patch} -p0 --fuzz=0
%patch4 -p0
%patch5 -p0
%patch6 -p0
%patch7 -p0
%patch8 -p1
%patch9 -p0
%patch10 -p2
%patch11 -p2
%patch12 -p2
%patch13 -p1
#%patch1 -p0
%build
BOOST_ROOT=`pwd`
export BOOST_ROOT
%{__mkdir_p} build
cd build
# build make tools, ie bjam, necessary for building libs, docs, and testing
(cd tools/jam/src && ./build.sh)
BJAM=`find tools/jam/src/ -name bjam -a -type f`
CONFIGURE_FLAGS="--with-toolset=gcc"
PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]')
PYTHON_FLAGS="--with-python-root=/usr --with-python-version=$PYTHON_VERSION"
REGEX_FLAGS="--with-icu"
./bootstrap.sh $CONFIGURE_FLAGS $PYTHON_FLAGS $REGEX_FLAGS
BUILD_VARIANTS="variant=release threading=single,multi debug-symbols=on"
BUILD_FLAGS="-d2 --layout=system $BUILD_VARIANTS"
%if %{disable_long_double}
LONG_DOUBLE_FLAGS="--disable-long-double"
# Support for building tests.
%define boost_testflags -DBUILD_TESTS="NONE"
%if %{with tests}
%define boost_testflags -DBUILD_TESTS="ALL"
%endif
$BJAM $BUILD_FLAGS $LONG_DOUBLE_FLAGS %{?_smp_mflags} stage
# build docs, requires a network connection for docbook XSLT stylesheets
%if %{with docs_generated}
cd ./doc
chmod +x ../tools/boostbook/setup_boostbook.sh
../tools/boostbook/setup_boostbook.sh
USER_CFG=$BOOST_ROOT/tools/build/v2/user-config.jam
$BOOST_ROOT/$BJAM --v2 -sICU_PATH=/usr --user-config=$USER_CFG html
cd ..
%endif
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo %{boost_testflags} \
-DENABLE_SINGLE_THREADED=YES -DINSTALL_VERSIONED=OFF ..
make VERBOSE=1 %{?_smp_mflags}
cd %{_builddir}/%{full_version}
%check
%if %{with tests}
echo "<p>" `uname -a` "</p>" > status/regression_comment.html
echo "" >> status/regression_comment.html
echo "<p>" `g++ --version` "</p>" >> status/regression_comment.html
echo "" >> status/regression_comment.html
cd build
cd tools/regression/build
#$BOOST_ROOT/$BJAM
cd ../test
#python ./test.py
cd ../../..
results1=status/cs-`uname`.html
results2=status/cs-`uname`-links.html
email=benjamin.kosnik@gmail.com
if [ -f $results1 ] && [ -f $results2 ]; then
echo "sending results starting"
# Standard test with CMake, depends on installed boost-test.
ctest --verbose --output-log testing.log
if [ -f testing.log ]; then
echo "" >> testing.log
echo `date` >> testing.log
echo "" >> testing.log
echo `uname -a` >> testing.log
echo "" >> testing.log
echo `g++ --version` >> testing.log
echo "" >> testing.log
testdate=`date +%Y%m%d`
testarch=`uname -m`
results=boost-results-$testdate-$testarch.tar.bz2
tar -cvf boost-results-$testdate-$testarch.tar $results1 $results2
bzip2 -f boost-results-$testdate-$testarch.tar
echo | mutt -s "$testdate boost regression $testarch" -a $results $email
email=benjamin.kosnik@gmail.com
bzip2 -f testing.log
echo "sending results starting"
echo | mutt -s "$testdate boost test $testarch" -a testing.log.bz2 $email
echo "sending results finished"
else
echo "error sending results"
echo "error with results"
fi
cd %{_builddir}/%{full_version}
%endif
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_libdir}
mkdir -p $RPM_BUILD_ROOT%{_includedir}
mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
%{__rm} -rf $RPM_BUILD_ROOT
# install lib
for i in `find stage -type f -name \*.a`; do
NAME=`basename $i`;
install -p -m 0644 $i $RPM_BUILD_ROOT%{_libdir}/$NAME;
done;
for i in `find stage -type f -name \*.so`; do
NAME=$i;
SONAME=$i.%{sonamever};
VNAME=$i.%{version};
base=`basename $i`;
NAMEbase=$base;
SONAMEbase=$base.%{sonamever};
VNAMEbase=$base.%{version};
mv $i $VNAME;
cd %{_builddir}/%{full_version}/build
DESTDIR=$RPM_BUILD_ROOT make VERBOSE=1 install
# remove rpath
chrpath --delete $VNAME;
# Suppress the wrongly generated mpi.so library
# (it is temporary until upstream Boost-CMake fixes that)
%{__rm} -f $RPM_BUILD_ROOT%{_libdir}/mpi.so
ln -s $VNAMEbase $SONAME;
ln -s $VNAMEbase $NAME;
install -p -m 755 $VNAME $RPM_BUILD_ROOT%{_libdir}/$VNAMEbase;
# Kill any debug library versions that may show up un-invited.
%{__rm} -f $RPM_BUILD_ROOT%{_libdir}/*-d.*
mv $SONAME $RPM_BUILD_ROOT%{_libdir}/$SONAMEbase;
mv $NAME $RPM_BUILD_ROOT%{_libdir}/$NAMEbase;
done;
# Prepare the place to temporary store the generated documentation
%{__rm} -rf %{boost_docdir} && %{__mkdir_p} %{boost_docdir}/html
# install include files
find %{name} -type d | while read a; do
mkdir -p $RPM_BUILD_ROOT%{_includedir}/$a
find $a -mindepth 1 -maxdepth 1 -type f \
| xargs -r install -m 644 -p -t $RPM_BUILD_ROOT%{_includedir}/$a
done
# install doc files
DOCPATH=$RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/
# Install documentation files (HTML pages) within the temporary place
cd %{_builddir}/%{full_version}
DOCPATH=%{boost_docdir}
find libs doc more -type f \( -name \*.htm -o -name \*.html \) \
| sed -n '/\//{s,/[^/]*$,,;p}' \
| sort -u > tmp-doc-directories
sed "s:^:$DOCPATH:" tmp-doc-directories | xargs -r mkdir -p
cat tmp-doc-directories | while read a; do
find $a -mindepth 1 -maxdepth 1 -name \*.htm\* \
| xargs install -m 644 -p -t $DOCPATH$a
sed "s:^:$DOCPATH/:" tmp-doc-directories \
| xargs --no-run-if-empty %{__install} -d
cat tmp-doc-directories | while read tobeinstalleddocdir; do
find $tobeinstalleddocdir -mindepth 1 -maxdepth 1 -name \*.htm\* \
| xargs %{__install} -p -m 644 -t $DOCPATH/$tobeinstalleddocdir
done
rm tmp-doc-directories
install -p -m 644 -t $DOCPATH LICENSE_1_0.txt index.htm index.html
%{__rm} -f tmp-doc-directories
%{__install} -p -m 644 -t $DOCPATH LICENSE_1_0.txt index.htm index.html
# remove scripts used to generate include files
find $RPM_BUILD_ROOT%{_includedir}/ \( -name '*.pl' -o -name '*.sh' \) -exec rm {} \;
# Remove scripts used to generate include files
find $RPM_BUILD_ROOT%{_includedir}/ \( -name '*.pl' -o -name '*.sh' \) -exec %{__rm} -f {} \;
# Remove cmake configuration files used to build the Boost libraries
find $RPM_BUILD_ROOT%{_libdir}/ -name '*.cmake' -exec %{__rm} -f {} \;
%clean
rm -rf $RPM_BUILD_ROOT
%{__rm} -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%post date-time -p /sbin/ldconfig
%postun date-time -p /sbin/ldconfig
%post filesystem -p /sbin/ldconfig
%postun filesystem -p /sbin/ldconfig
%post graph -p /sbin/ldconfig
%postun graph -p /sbin/ldconfig
%post iostreams -p /sbin/ldconfig
%postun iostreams -p /sbin/ldconfig
%post mpi -p /sbin/ldconfig
%postun mpi -p /sbin/ldconfig
%post program-options -p /sbin/ldconfig
%postun program-options -p /sbin/ldconfig
%post python -p /sbin/ldconfig
%postun python -p /sbin/ldconfig
%post regex -p /sbin/ldconfig
%postun regex -p /sbin/ldconfig
%post serialization -p /sbin/ldconfig
%postun serialization -p /sbin/ldconfig
%post signals -p /sbin/ldconfig
%postun signals -p /sbin/ldconfig
%post system -p /sbin/ldconfig
%postun system -p /sbin/ldconfig
%post test -p /sbin/ldconfig
%postun test -p /sbin/ldconfig
%post thread -p /sbin/ldconfig
%postun thread -p /sbin/ldconfig
%post wave -p /sbin/ldconfig
%postun wave -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%files date-time
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_date_time*.so.%{version}
%{_libdir}/libboost_date_time*.so.%{sonamever}
%files filesystem
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_filesystem*.so.%{version}
%{_libdir}/libboost_filesystem*.so.%{sonamever}
%files graph
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_graph*.so.%{version}
%{_libdir}/libboost_graph*.so.%{sonamever}
%files iostreams
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_iostreams*.so.%{version}
%{_libdir}/libboost_iostreams*.so.%{sonamever}
%files math
%defattr(-, root, root, -)
%{_libdir}/libboost_math*.so.%{version}
%{_libdir}/libboost_math*.so.%{sonamever}
%files test
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_prg_exec_monitor*.so.%{version}
%{_libdir}/libboost_prg_exec_monitor*.so.%{sonamever}
%{_libdir}/libboost_unit_test_framework*.so.%{version}
%{_libdir}/libboost_unit_test_framework*.so.%{sonamever}
%files program-options
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_program_options*.so.%{version}
%{_libdir}/libboost_program_options*.so.%{sonamever}
%files python
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_python*.so.%{version}
%{_libdir}/libboost_python*.so.%{sonamever}
%files regex
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_regex*.so.%{version}
%{_libdir}/libboost_regex*.so.%{sonamever}
%files serialization
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_serialization*.so.%{version}
%{_libdir}/libboost_serialization*.so.%{sonamever}
%{_libdir}/libboost_wserialization*.so.%{version}
%{_libdir}/libboost_wserialization*.so.%{sonamever}
%files signals
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_signals*.so.%{version}
%{_libdir}/libboost_signals*.so.%{sonamever}
%files system
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_system*.so.%{version}
%{_libdir}/libboost_system*.so.%{sonamever}
%files thread
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_thread*.so.%{version}
%{_libdir}/libboost_thread*.so.%{sonamever}
%files wave
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_wave*.so.%{version}
%{_libdir}/libboost_wave*.so.%{sonamever}
%files mpi
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/libboost_mpi*.so.%{version}
%files doc
%defattr(-, root, root, -)
%doc %{_docdir}/%{name}-%{version}
%doc %{boost_docdir}/*
%files devel
%defattr(-, root, root, -)
%{_includedir}/boost
%doc LICENSE_1_0.txt
%{_includedir}/%{name}
%{_libdir}/*.so
%{_datadir}/%{name}-%{version}
%{_datadir}/cmake/%{name}/BoostConfig*.cmake
%files static
%defattr(-, root, root, -)
%doc LICENSE_1_0.txt
%{_libdir}/*.a
%changelog
* Thu Jan 14 2010 Petr Machata <pmachata@redhat.com> - 1.41.0-2
- Replace a boost-math subpackage with a stub
- Drop _cmake_lib_suffix and CMAKE_INSTALL_PREFIX magic, the rpm macro
does that for us
- Drop LICENSE from the umbrella package
- Drop obsolete Obsoletes: boost-python and boost-doc <= 1.30.2
* Tue Jan 12 2010 Benjamin Kosnik <bkoz@redhat.com> - 1.41.0-1
- Don't package generated debug libs, even with
(-DCMAKE_BUILD_TYPE=RelWithDebInfo | Release).
- Update and include boost-cmake-soname.patch.
- Uncomment ctest.
- Fix up --with tests to run tests.
* Sat Dec 19 2009 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.41.0-0.7
- Switched off the delivery into a versioned sub-directory
* Thu Dec 17 2009 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.41.0-0.6
- Boost-CMake upstream integration
* Wed Dec 16 2009 Benjamin Kosnik <bkoz@redhat.com> - 1.41.0-0.5
- Rebase to 1.41.0
- Set build type to RelWithDebInfo
- Resolves: #533922
* Mon Nov 16 2009 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.40.0-1
- Add support for the Boost.MPI sub-package
- Build with CMake (https://svn.boost.org/trac/boost/wiki/CMake)
- Resolves: #529563
* Mon Nov 16 2009 Petr Machata <pmachata@redhat.com> - 1.39.0-11
- Move comment in Patch13 out of line
@ -486,7 +527,7 @@ rm -rf $RPM_BUILD_ROOT
- Disable long double support for ARM
* Tue Sep 08 2009 Karsten Hopp <karsten@redhat.com> 1.39.0-6
- bump release and rebuild as the package was linked with an old libicu
- bump release and rebuild as the package was linked with an old libicu
during the mass rebuild on s390x
* Wed Aug 26 2009 Tomas Mraz <tmraz@redhat.com> - 1.39.0-5
@ -503,8 +544,8 @@ rm -rf $RPM_BUILD_ROOT
- Resolves: #509250
* Mon May 11 2009 Benjamin Kosnik <bkoz@redhat.com> - 1.39.0-2
- Apply patch from Caolan McNamara
- Resolves: #500030 function_template bug is back...
- Apply patch from Caolan McNamara
- Resolves: #500030 function_template bug is back...
* Thu May 07 2009 Benjamin Kosnik <bkoz@redhat.com> - 1.39.0-1
- Update release.
@ -613,7 +654,7 @@ rm -rf $RPM_BUILD_ROOT
- Source via http.
- Philipp Thomas <pth.suse.de> fix for RPM_OPT_FLAGS
- Philipp Thomas <pth.suse.de> fix for .so sym links.
- (#225622) Patrice Dumas review comments.
- (#225622) Patrice Dumas review comments.
* Tue Jun 26 2007 Benjamin Kosnik <bkoz@redhat.com> 1.34.1.rc1-0.1
- Update to boost_1_34_1_RC1.
@ -635,7 +676,7 @@ rm -rf $RPM_BUILD_ROOT
Remove Obsoletes.
Add Provides boost-python.
Remove mkdir -p $RPM_BUILD_ROOT%%{_docdir}
Added periods for decription text.
Added periods for decription text.
Fix Group field.
Remove doc Requires boost.
Preserve timestamps on install.
@ -719,7 +760,7 @@ rm -rf $RPM_BUILD_ROOT
- Use SONAMEVERSION instead of dllversion.
* Wed Mar 16 2005 Benjamin Kosnik <bkoz@redhat.com> 1.32.0-4
- (#142612: Compiling Boost 1.32.0 Failed in RHEL 3.0 on Itanium2)
- (#142612: Compiling Boost 1.32.0 Failed in RHEL 3.0 on Itanium2)
- (#150069: libboost_python.so is missing)
- (#141617: bad patch boost-base.patch)
- (#122817: libboost_*.so symlinks missing)
@ -750,14 +791,14 @@ rm -rf $RPM_BUILD_ROOT
* Wed May 05 2004 Warren Togami <wtogami@redhat.com> 1.31.0-7
- missing Obsoletes boost-python
* Mon May 03 2004 Benjamin Kosnik <bkoz@redhat.com>
* Mon May 03 2004 Benjamin Kosnik <bkoz@redhat.com>
- (#121630: gcc34 patch needed)
* Wed Apr 21 2004 Warren Togami <wtogami@redhat.com>
- #121415 FC2 BLOCKER: Obsoletes boost-python-devel, boost-doc
- other cleanups
* Tue Mar 30 2004 Benjamin Kosnik <bkoz@redhat.com>
* Tue Mar 30 2004 Benjamin Kosnik <bkoz@redhat.com>
- Remove bjam dependency. (via Graydon).
- Fix installed library names.
- Fix SONAMEs in shared libraries.

View File

@ -1 +1 @@
a17281fd88c48e0d866e1a12deecbcc0 boost_1_39_0.tar.bz2
15a7d1a22c61363f607508eff43a2da5 boost-1.41.0.cmake0.tar.bz2