| 1 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" |
|---|
| 2 | "http://www.w3.org/TR/REC-html40/strict.dtd"> |
|---|
| 3 | |
|---|
| 4 | <title>Boost.Compatibilty library</title> |
|---|
| 5 | |
|---|
| 6 | <div> |
|---|
| 7 | |
|---|
| 8 | <img src="../../boost.png" |
|---|
| 9 | alt="boost.png (6897 bytes)" |
|---|
| 10 | align="center" |
|---|
| 11 | width="277" height="86"> |
|---|
| 12 | |
|---|
| 13 | <hr> |
|---|
| 14 | <h1>Boost.Compatibilty library</h1> |
|---|
| 15 | |
|---|
| 16 | <p> |
|---|
| 17 | This library provides workarounds which allow the other Boost libraries |
|---|
| 18 | to be used on otherwise non-conforming platforms. We hope that it will |
|---|
| 19 | be possible to remove this library at some time in the future as |
|---|
| 20 | standard library suppliers become more conforming. |
|---|
| 21 | |
|---|
| 22 | <h2> |
|---|
| 23 | Missing C++ standard library CXX headers (e.g <cstdio>) workaround</h2> |
|---|
| 24 | |
|---|
| 25 | <p> |
|---|
| 26 | The Python script: |
|---|
| 27 | <tt><a href="generate_cpp_c_headers.py">generate_cpp_c_headers.py</a> </tt>creates a full set of C++ C header files |
|---|
| 28 | (e.g. <cstdio>) that are missing on some platforms. |
|---|
| 29 | The header files created by this script reside in the directory <tt><a href="../../boost/compatibility/cpp_c_headers/">boost/compatibility/cpp_c_headers</a></tt>. |
|---|
| 30 | To use the header files, add this directory to the include |
|---|
| 31 | file search path. For example: |
|---|
| 32 | |
|---|
| 33 | <pre> |
|---|
| 34 | cxx -I/usr/local/boost/boost/compatibility/cpp_c_headers ... |
|---|
| 35 | </pre> |
|---|
| 36 | |
|---|
| 37 | <p> |
|---|
| 38 | Supported platforms are: |
|---|
| 39 | <ul> |
|---|
| 40 | <li>Compaq Alpha, RedHat 6.2 Linux, Compaq C++ V6.3 (cxx) |
|---|
| 41 | <li>Compaq Alpha, Tru64 Unix V5.0, Compaq C++ V6.2 (cxx) |
|---|
| 42 | <li>Silicon Graphics, IRIX 6.5, MIPSpro Compilers: Version 7.3.1.1m (CC) |
|---|
| 43 | </ul> |
|---|
| 44 | |
|---|
| 45 | <p> |
|---|
| 46 | There are more powerful alternatives to using |
|---|
| 47 | the Boost.Compatibility library CXX headers, e.g. |
|---|
| 48 | <a href="http://www.stlport.org/">STLport</a> or |
|---|
| 49 | <a href="http://www.fnal.gov/docs/working-groups/fpcltf/Pkg/ISOcxx/doc/0ISOcxx.html">ISOCXX</a>. |
|---|
| 50 | However, in contrast to these alternatives, the |
|---|
| 51 | <tt>generate_cpp_c_headers.py</tt> script is very light-weight (less |
|---|
| 52 | than 100 non-comment lines of Python code), much less ambitious, |
|---|
| 53 | significantly easier to maintain and therefore more suitable as an interim workaround. |
|---|
| 54 | |
|---|
| 55 | <p> |
|---|
| 56 | Contributed by Ralf W. Grosse-Kunstleve. |
|---|
| 57 | |
|---|
| 58 | <h2> |
|---|
| 59 | Missing C++ standard library <limits> header workaround <a href="../../boost/limits.hpp">boost/limits.hpp</a></h2> |
|---|
| 60 | <p>Several Boost libraries require the standard library's <limits> header, |
|---|
| 61 | yet this header is not always supplied by non-conforming compilers and |
|---|
| 62 | libraries. Header <a href="../../boost/limits.hpp">boost/limits.hpp</a> |
|---|
| 63 | simply includes the standard library <limits> header if available, |
|---|
| 64 | otherwise includes <a href="../../boost/detail/limits.hpp">boost/detail/limits.hpp</a>. |
|---|
| 65 | BOOST_NO_LIMITS from <a href="../config/config.htm">boost/config.hpp</a> is used |
|---|
| 66 | to determine <limits> availability. |
|---|
| 67 | <p>Note also the test program <a href="../config/test/limits_test.cpp">limits_test.cpp</a> |
|---|
| 68 | |
|---|
| 69 | <p> |
|---|
| 70 | Contributed by Jens Maurer. |
|---|
| 71 | |
|---|
| 72 | <p> |
|---|
| 73 | |
|---|
| 74 | |
|---|
| 75 | <hr> |
|---|
| 76 | © Copyright Ralf W. Grosse-Kunstleve 2001. Permission to copy, |
|---|
| 77 | use, modify, sell and distribute this document is granted provided this |
|---|
| 78 | copyright notice appears in all copies. This document is provided "as |
|---|
| 79 | is" without express or implied warranty, and with no claim as to its |
|---|
| 80 | suitability for any purpose. |
|---|
| 81 | |
|---|
| 82 | <p> |
|---|
| 83 | Updated: April 16, 2001 |
|---|
| 84 | </div> |
|---|