Patch fix for boost@1.60.0%gcc@4.4.7

This commit is contained in:
Alfredo Gimenez 2016-01-22 13:02:18 -08:00
parent 04a8439c39
commit 10de5a3ec7
2 changed files with 37 additions and 0 deletions

View File

@ -0,0 +1,34 @@
--- a/libs/container/src/pool_resource.cpp 2015-11-06 12:49:55.000000000 -0800
+++ b/libs/container/src/pool_resource.cpp 2015-12-22 07:54:36.202131121 -0800
@@ -32,11 +32,11 @@
class pool_data_t
: public block_slist_base<>
{
- typedef block_slist_base<> block_slist_base;
+ typedef block_slist_base<> block_slist_base_t;
public:
explicit pool_data_t(std::size_t initial_blocks_per_chunk)
- : block_slist_base(), next_blocks_per_chunk(initial_blocks_per_chunk)
+ : block_slist_base_t(), next_blocks_per_chunk(initial_blocks_per_chunk)
{ slist_algo::init_header(&free_slist); }
void *allocate_block() BOOST_NOEXCEPT
@@ -59,7 +59,7 @@
void release(memory_resource &upstream)
{
slist_algo::init_header(&free_slist);
- this->block_slist_base::release(upstream);
+ this->block_slist_base_t::release(upstream);
next_blocks_per_chunk = pool_options_minimum_max_blocks_per_chunk;
}
@@ -72,7 +72,7 @@
//Minimum block size is at least max_align, so all pools allocate sizes that are multiple of max_align,
//meaning that all blocks are max_align-aligned.
- char *p = static_cast<char *>(block_slist_base::allocate(blocks_per_chunk*pool_block, mr));
+ char *p = static_cast<char *>(block_slist_base_t::allocate(blocks_per_chunk*pool_block, mr));
//Create header types. This is no-throw
for(std::size_t i = 0, max = blocks_per_chunk; i != max; ++i){

View File

@ -54,6 +54,9 @@ class Boost(Package):
depends_on('bzip2', when='+compression')
depends_on('zlib', when='+compression')
# Patch fix from https://svn.boost.org/trac/boost/ticket/11856
patch('boost_11856.patch', when='@1.60.0%gcc@4.4.7')
def url_for_version(self, version):
"""Handle Boost's weird URLs, which write the version two different ways."""
parts = [str(p) for p in Version(version)]