...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Boost.Build's stlport supports the use of STLport standard library implementation with the various Boost.Build toolsets. It is designed to allow you to build and test with multiple installed versions of STLPort, so that objects built in each configuration will be built into separate directories. The configuration and features describe here are in addition to those provided by the specific toolsets that can be configured use the STLport library.
The stlport
support responds to the following variables,
which can be set in the environment or configured on the jam command-line
using -sVARIABLE_NAME=
value.
In the table below, version corresponds to an STLPort version
number, e.g. "5.0
".
Variable Name | Semantics | Default | Notes |
---|---|---|---|
STLPORT_PATH |
A directory containing at least one subdirectory of the form
/STLPort- version where an STLPort installation can
be found. |
empty | Allows easy configuration for an installation where several STLPort versions are installed under a single directory. |
STLPORT_ version_PATH |
The directory where the specific STLPort version
installation can be found, in case there is no central location
appropriate for STLPORT_PATH , above, or a particular
version's installation is not located in the usual place. |
empty | Allows configuration of a specific STLPort installation. |
STLPORT_VERSION |
The version of STLPort in use by default. | 4.6.2 |
Other values can be selected in parallel setting the build property
<stlport-version> to values from the list of
$(STLPORT_VERSIONS) |
STLPORT_VERSIONS |
A space-separated list of alternate versions of STLport available on this machine. | 5.0 4.6.2 4.6 4.5.3 4.5 |
The following stlport
specific features can be used in target build
requirements or in the BUILD
variable:
Feature | Values | Default | Semantics |
---|---|---|---|
stlport-version |
$(STLPORT_VERSION) $(STLPORT_VERSIONS) (see
above) |
$(STLPORT_VERSION) |
Selects a version of STLPort for each target |
stlport-iostream |
on off |
on |
Controls whether STLPort's own iostreams are in use. The default for this is now "on". This is because overwhelmingly STLport is used for it's iostreams support to the extent that non-iostream mode is no longer available on version 5.0. Since this mode is not available in 5.0 this feature is ignored when using version 5.0. |
stlport-cstd-namespace |
std global |
std |
Controls whether or not names from the "C" library headers such as
<cstdlib> are imported into namespace std . |
stlport-debug-alloc |
off on |
off |
Enables STLport support for debugging memory allocations, i.e. it
defines _STLP_DEBUG_ALLOC appropriately. |
stlport-cross |
off on |
off |
For STLport 5.0, with it's new library naming scheme, it is possible to build using compiler specific targets. This tells Boost.Build that you built STLport in it's "cross compile" mode and will adjust how it looks for the STLport libraries to match. |
stlport-extensions |
on off |
on |
Defines _STLP_NO_EXTENSIONS appropriately. |
stlport-anachronisms |
on off |
on |
Defines _STLP_NO_ANACHRONISMS appropriately. |
Revised $Date: 2005/12/01 04:52:04 $
Copyright © Dave Abrahams 2002, Aleksey Gurtovoy 2004, Rene Rivera 2005.
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at www.boost.org/LICENSE_1_0.txt)