$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Darin Adler (darin_at_[hidden])
Date: 2001-11-08 01:21:09
on 11/7/01 10:09 PM, Jesse Jones at jesjones_at_[hidden] wrote:
> As best I can determine what happens is that posix_features.hpp
> defines BOOST_HAS_PTHREADS because _POSIX_THREADS is defined. But
> suffix.hpp doesn't define BOOST_HAS_THREADS because none of __MT__,
> _REENTRANT, or _PTHREADS are defined. CodeWarrior currently doesn't
> provide single-threaded runtime or C/C++ libraries so maybe one of
> these should be defined on Mach-O...
Ah, I see now.
Now that I look more carefully at the results of the regression, I see that
the CodeWarrior test did not define BOOST_HAS_THREADS even though it did
define BOOST_HAS_PTHREADS, so we're both getting the same results. I was
confused because the gcc test did define BOOST_HAS_THREADS, and it never
occurred to me that there was a compiler-specific aspect.
I'll fix this. The simplest fix is probably to add an unconditional
BOOST_HAS_THREADS define to metrowerks.hpp. This makes it clear that
CodeWarrior is effectively always in "multi-threaded mode". If no supported
thread API is discovered, then suffix.hpp will undef BOOST_HAS_THREADS, so
there's no need for "#ifdef __MACH__" or anything like that.
-- Darin