Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2006-09-04 08:34:41

David Abrahams <dave_at_[hidden]> writes:

> [Taking this back to the list where it belongs]
> "MANSION, James, GBM" <James.MANSION_at_[hidden]> writes:
>> # Even where Python itself uses pthreads, it never allows
>> # extension modules to be entered concurrently (unless they
>> # explicitly give up the interpreter lock). Therefore,
>> # extension modules don't need the efficiency overhead of
>> # threadsafe code as produced by <threading>multi, and we
>> # handle libpthread along with other libraries here.
>> Is that absolutely right? I mean, errno is sometimes different if
>> you are a single-threaded or multi-threaded build,
> In what way is errno different?

James wasn't allowed to post to this list, and I quite impolitely
forwarded his comments here, for which I have apologized. But he has
a point. Suffice it to say that he convinced me <threading>multi is
required in general, even if on many systems it can probably be left
out for many programs. Basically -mt has to be assumed to change the
ABI used by the standard library.

So I think <threading>multi should be the default way to link with
pthreads, and the user should have to supply an explicit override if
she wants to live dangerously.

Dave Abrahams
Boost Consulting

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at