Hi,
just to signal an issue that I encounter with the boost (1.70) thread library compiling my library.
I got this linking problem:

Undefined first referenced
 symbol      in file
void boost::detail::set_tss_data(const void*,void(*)(void(*)(void*),void*),void(*)(void*),void*,bool) CMakeFiles/basic.dir/containers/MemoryPool.cpp.o
void*boost::detail::get_tss_data(const void*) CMakeFiles/basic.dir/containers/MemoryPool.cpp.o

So I investigated and I found that was missing the export keyword for Sun Solaris. I modified the file boost/thread/detail/config.hpp:498 in this way

#elif (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4) || (__SUNPRO_CC)

and I solved it.

I hope this could be useful for someone.

Regards,
   Mirko