| Summary: | kdeedu (rocs) FTBFS against boost-1.47.0 | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Rex Dieter <rdieter> |
| Component: | kdeedu | Assignee: | Than Ngo <than> |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | rawhide | CC: | jreznik, kevin, ltinkl, pmachata, rdieter, rnovacek, ry, smparrish, than |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-07-23 22:20:38 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Bug Depends On: | |||
| Bug Blocks: | 711845 | ||
The problem is in boost/numeric/conversion, which should throw exceptions with boost::throw_exception, not literal throw, to aid compilation with -fno-exceptions. I'm spinning a build that should fix this.
Note that boost::throw_exception is then defined in the client. In rocs, it's in src/Plugins/dotParser/dotgrammar.cpp:
namespace boost
{
void throw_exception(std::exception const &) {}
}
But, from boost documentation, "callers of throw_exception are allowed to assume that the function never returns; therefore, if the user-defined throw_exception returns, the behavior is undefined". Just FYI.
FWIW, I think it sucks that we're building KDE with -fno-exceptions when the rest of Fedora is using -fexceptions even for C code. We should probably patch the kdelibs CMakeLists.txt to kill that -fno-exceptions use. Build requeued, https://koji.fedoraproject.org/koji/taskinfo?taskID=3224594 in the meantime, I would tend to agree with kevin's sentiments about exceptions. anyone interested to poke kde upstream about that? new build looks like a winner, thanks! |
build.log snippet: In file included from /usr/include/boost/numeric/conversion/converter.hpp:14:0, from /usr/include/boost/numeric/conversion/cast.hpp:32, from /usr/include/boost/lexical_cast.hpp:31, from /usr/include/boost/math/constants/constants.hpp:15, from /usr/include/boost/graph/topology.hpp:17, from /builddir/build/BUILD/kdeedu-4.6.95/rocs-4.6.95/src/Plugins/AssignValues/assignvalueswidget.h:25, from /builddir/build/BUILD/kdeedu-4.6.95/rocs-4.6.95/src/Plugins/AssignValues/assignvaluestoolsplugin.cpp:20: /usr/include/boost/numeric/conversion/converter_policies.hpp: In member function 'void boost::numeric::def_overflow_handler::operator()(boost::numeric::range_check_result)': /usr/include/boost/numeric/conversion/converter_policies.hpp:162:31: error: exception handling disabled, use -fexceptions to enable