[kde-freebsd] [Bug 207600] databases/akonadi: fix build with boost 1.60 on 9.x

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Feb 29 20:52:59 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=207600

            Bug ID: 207600
           Summary: databases/akonadi: fix build with boost 1.60 on 9.x
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: kde at FreeBSD.org
          Reporter: amdmi3 at FreeBSD.org
             Flags: maintainer-feedback?(kde at FreeBSD.org)
          Assignee: kde at FreeBSD.org

Created attachment 167576
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=167576&action=edit
Patch

akonadi fails to build with boost 1.60 on 9.x:

---
/usr/local/include/boost/bind/bind.hpp:882:65: error: no member named 'forward'
in namespace 'std'
    A1 && operator[] (boost::arg<1> (*) ()) const { return std::forward<A1>(
a1_ ); }
                                                           ~~~~~^
---

full log: http://people.freebsd.org/~amdmi3/akonadi-1.13.0.log

I haven't digged deep, but it seems that combination of libstdc++ and clang (as
akonadi is built with clang on 9.x due to USES=compiler:c++11-lang) makes boost
misdetect support for c++11 features, and it tries to use std::forward which is
not present in the library. Another solution would be to switch akonadi to
USES=compiler:c++11-lib (which may be more desirable, as building c++ libraries
with clang while most ports are built with gcc may lead to ABI compatibility
issues, and c++11-lib will use gcc to build), but it will also require
additional testing.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the kde-freebsd mailing list