Boost 1.37 released!
alexanderchuranov at gmail.com
Sun Nov 9 14:30:58 PST 2008
I'm glad to announce that I have working patch that makes possible to build
boost-1.37 on FreeBSD. At present, I am investigating into port for
boost-1.34 in order to create a working port for 1.37 with no regressions.
Three things do not enable boost to compile out-of-box: First is the math
library. It uses c99 and SUSv3 long double functions that are absent in
6.2-RELEASE and 7.0-RELEASE (for example. sinhl() ). I've checked out
CURRENT source and found these functions, so probably 8.0-RELEASE would not
suffer of this issue.
The second is the test framework. Authors made error reports more detailed
and rely on UNIX 03 features that provide information about the reason why a
signal was delivered (see siginfo_t::si_code). FreeBSD 6.x does not comply
with this in full and some signal-specific codes are missing. This is
however, not a problem for 7.x branch - as I know all necessary constants
are in place.
The solution for the second issue is obvious: make error reporting in
Boost.Test more coarse-grained on 6.x. I mean report that SIGILL was
received, but do not tell what exactly has happened. My patch does exactly
The Boost.Math issue is more complicated since we have either to disable the
whole math library or to disable the part of it that deals with
std::sinhl(), etc. A more expensive option is to drop support for particular
long double variants of functions. Could anybody comment on that?
More information about the freebsd-ports