boost-1.55.0-r2 does not build with gcc5. Patch taken from here: https://bugs.freebsd.org/bugzilla/attachment.cgi?id=153273&action=diff Reproducible: Always --- boost/thread/pthread/once.hpp.orig 2013-03-23 01:48:21 UTC +++ boost/thread/pthread/once.hpp @@ -42,7 +42,7 @@ namespace boost } #ifdef BOOST_THREAD_PROVIDES_ONCE_CXX11 -#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) template<typename Function, class ...ArgTypes> inline void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args); #else @@ -65,7 +65,7 @@ namespace boost private: volatile thread_detail::uintmax_atomic_t epoch; -#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) template<typename Function, class ...ArgTypes> friend void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args); #else @@ -118,7 +118,7 @@ namespace boost // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2444.html -#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) template<typename Function, class ...ArgTypes> --- boost/thread/pthread/once_atomic.hpp.orig 2013-03-23 01:48:21 UTC +++ boost/thread/pthread/once_atomic.hpp @@ -115,7 +115,7 @@ namespace boost #endif -#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) template<typename Function, class ...ArgTypes> inline void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args)
Is this problem reproducible with Boost 1.56.0 or 1.57.0?
I'm goint to check that during the weekend. But in the original bug report (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197594) one can read: "The following problem was already fixed version 1.56 and 1.57 is the current release" so the chances are everything should be OK.
I need to temporarily unmerge libreoffice-bin: [ebuild R ] dev-libs/boost-1.55.0-r2:0/1.55.0 USE="nls threads -context -debug -doc -icu -mpi -python -static-libs -tools" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7 python3_3 -python3_4" 56784 KiB Total: 1 package (1 reinstall), Size of downloads: 56784 KiB WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict: dev-libs/boost:0 (dev-libs/boost-1.56.0-r1:0/1.56.0::gentoo, ebuild scheduled for merge) conflicts with >=dev-libs/boost-1.55:0/1.55.0= required by (app-office/libreoffice-bin-4.4.1.2:0/0::gentoo, installed) ^^^^^^^^^^ dev-libs/boost:0/1.55.0 required by (app-office/libreoffice-bin-4.4.1.2:0/0::gentoo, installed) ^^^^^^^^^
dev-libs/boost-1.56.0-r1 emerged OK with gcc5. boost-1.57 is masked in portage, so I'll skip it.
*** Bug 548336 has been marked as a duplicate of this bug. ***
Later versions do work, but we still need 1.55 fixed since libreoffice-bin depends on it.
Unfortunately, suggested fix is not enough to build Boost 1.55 in Gentoo. Looking at bug #522474 i see that we have pretty low count of packages, that does not build with 1.56, so i will open stable request for Boost 1.56, where this bug is definitely fixed
*** Bug 555952 has been marked as a duplicate of this bug. ***
+ 27 Jul 2015; Sergey Popov <pinkbyte@gentoo.org> boost-1.55.0-r2.ebuild, + boost-1.56.0-r1.ebuild, +files/boost-1.55.0-variadic-templates.patch: + Fix building with USE=context and GCC 5.1 and higher, wrt bugs #546882 and + #555580 I have backported some fixes, so it should be able to build 1.55 with newer GCC too. Please check(or update to 1.56)
*** Bug 555580 has been marked as a duplicate of this bug. ***