Merge fixes from Trunk - mainly warning suppression.

[SVN r65720]
This commit is contained in:
John Maddock
2010-10-02 11:34:33 +00:00
parent 09c9e93572
commit cfedb49110
132 changed files with 4159 additions and 3739 deletions

View File

@ -34,34 +34,64 @@ please refer to the
[h4 Building With Unicode and ICU Support]
A default build of this library does not enable Unciode support via ICU.
There is no need to enable this support if you don't need it, but if you
use ICU for your Unicode support already, and want to work with
Unicode-aware regular expressions then read on.
Boost.Regex is now capable of performing a configuration check
to test whether ICU is already installed in your compiler's
search paths. When you build you should see a message like
this:
Most of the information you will need is in the getting started guide,
the only additional step you need to take is to tell bjam that you want
Boost.Regex to use ICU and optionally to tell bjam where ICU is located.
Performing configuration checks
If you're building on a Unix-like platform, and ICU is already installed in
your compilers search path (with an install prefix of `/usr` or
`/usr/local` for example), then set the environment variable `HAVE_ICU` to
enable ICU support. For example you might build with the command line:
- has_icu builds : yes
[pre bjam -sHAVE_ICU=1 --toolset=toolset-name install]
Whick means that ICU has been found, and support for it will be enabled
in the library build.
If ICU is not already in your compiler's path then you need to set the
environment variable `ICU_PATH` to point to the root directory of your
ICU installation, for example if ICU was installed to `/usr/local/icu/3.3` you
[tip If you don't want the regex library to use ICU then build with the
"--disable-icu" command line option.]
If instead you see:
Performing configuration checks
- has_icu builds : no
Then ICU was not found and support for it will not be compiled into the library.
If you think that it should have been found, then you will need to take a look
at the contents of the file ['boost-root/bin.v2/config.log] for the actual error
messages obtained when the build carried out the configuration check. You will
then need to fix these errors by ensuring your compiler gets invoked with the correct
options, for example:
[pre bjam include=some-include-path --toolset=toolset-name install]
will add "some-include-path" to your compilers header include path, or if ICU
has been built with non-standard names for it's binaries, then:
[pre bjam -sICU_LINK="linker-options-for-icu" --toolset=toolset-name install]
Will use ['"linker-options-for-icu"] when linking the library rather than the default
ICU binary names.
You might also need to use the options "cxxflags=-option" and "linkflags=-option" to set compiler and linker
specific options.
[important Configuration results are cached - if you try rebuilding with different compiler
options then add an "-a" to the bjam command line to force all targets to be rebuilt.]
If ICU is not already in your compiler's path, but instead headers, libraries and binaries
are located at ['path-to-icu/include], ['path-to-icu/lib] and ['path-to-icu/bin] respectively
then you need to set the environment variable `ICU_PATH` to point to the root directory of your
ICU installation: this typically happens if you're building with MSVC.
For example if ICU was installed to `c:\download\icu` you
might use:
[pre bjam -sICU_PATH=/usr/local/icu/3.3 --toolset=toolset-name install]
[pre bjam -sICU_PATH=c:\download\icu --toolset=toolset-name install]
Note that ICU is a C++ library just like Boost is, as such your copy of
[important ICU is a C++ library just like Boost is, as such your copy of
ICU must have been built with the same C++ compiler (and compiler version)
that you are using to build Boost. Boost.Regex will not work correctly unless
you ensure that this is the case: it is up to you to ensure that the version
of ICU you are using is binary compatible with the toolset you use to build Boost.
of ICU you are using is binary compatible with the toolset you use to build Boost.]
[h4 Building via makefiles]