Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2002-07-08 14:16:50


At 06:43 AM 7/7/2002, John Maddock wrote:

>> >Because there are some libraries that need access to platform specific
>> >APIs. For example, to access the files or the timer. The problem is
>> >still unsolved here: Comeau in strict mode can't be seen as a
>> >fully-compliant Windows platform (because e.g. windows.h doesn't
>> >compile in strict mode). On the other hand, under Windows we don't
>> >have support for POSIX or similar. So currently, for instance,
>> >there is no way Comeau (strict mode) can pass the Boost.Regex
>> >regression test.
>>
>> Doesn't that mean no compiler can either then?
>
>Possibly: there are some boost libs that need either <windows.h> or some
>POSIX specific API's. I think regex should be configurable to use
neither
>if necessary now, but obviously things like the thread lib won't be able
to
>do that.

The filesystem library in the sandbox is an example of that.

If BOOST_WINDOWS is defined (I'm just doing that on the command line, not
via the Boost config system) the windows.h API is used.

If BOOST_POSIX is defined (again, I'm doing that manually), the direct.h
and similar POSIX headers are used.

Several Win32 compilers supply both windows.h and the POSIX headers, so for
these compilers either flavor works. I'm giving a #error if neither is
defined.

>You are probably right that this is not your problem though.

Yes, we need to settle on how Boost is going to deal with this API choice.

--Beman


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk