* Make the library modular usable.
* Switch to library requirements instead of source. As source puts extra source in install targets.
* Add missing b2 testing module import.
* Add missing import-search for cconfig/predef checks.
* Add requires-b2 check to top-level build file.
* Bump B2 require to 5.2
* Update copyright dates.
* Move inter-lib dependencies to a project variable and into the build targets.
* Update build deps.
When running multiple different configurations of test_utf8_codecvt, e.g.
debug/release or different C++ versions, the test used to spuriously fail
because the test processes would conflict through the files the test creates.
To work around this, the test now creates the files in the same directory
where the test executable is located. With Boost.Build, that means the files
will be created in different directories for different configs.
This should fix spurious test failures in CI.
Test classes which I'm going to remove the MPL dependency from: blank,
allocator_utilities, is_xxx and reference_content. I'm also going to change
indirect_traits, but that's tested in the python module.
1. Ported to Boost.TypeTraits primitives for type inspection and simple
metaprogramming instead of local implementations. This effectively
drops any workarounds for compilers without support for partial template
specializations. Such compilers are long outdated.
2. Include more fine-grained headers from Boost.TypeTraits to optimize
compilation times.
3. Made numeric_distance function constexpr.
4. Updated the test accordingly (i.e. replaced the use of now removed local
components with Boost.TypeTraits). Also replaced lexical_cast with
standard streams to further reduce dependencies.
None of these changes should affect functionality.
Have a separate config stage, which by default disables forward
declaration of containers. Also add a test to check that if it is
disabled correctly.
Removed forward declaration of std::pair - since it's almost always
included by `<utility>`.
[SVN r72990]
On Linux, GNU's libstdc++, which is the default stdlib for icc and clang,
cannot parse the <iomanip> header in version 4.5+ (which thankfully neither
compiler advises the use of yet), as it's original C++98-friendly
implementation has been replaced with a gnu++0x implementation.
<boost/detail/iomanip.hpp> is a portable implementation of <iomanip>, providing
boost::detail::setfill, boost::detail::setbase, boost::detail::setw,
boost::detail::setprecision, boost::detail::setiosflags and
boost::detail::resetiosflags.
[SVN r68140]
contains an iomanip header which uses C++0x features that only GCC supports,
causing breakage with ICC and Clang. Also added a test, but I'm not sure how to
set it up to be run by the testing machines.
[SVN r67111]