100db7afdSDavid E. O'Brienfile: libstdc++-v3/README 200db7afdSDavid E. O'Brien 300db7afdSDavid E. O'BrienNew users may wish to point their web browsers to the file 400db7afdSDavid E. O'Briendocumentation.html in the 'docs/html' subdirectory. It contains brief 500db7afdSDavid E. O'Brienbuilding instructions and notes on how to configure the library in 600db7afdSDavid E. O'Brieninteresting ways. 700db7afdSDavid E. O'Brien 800db7afdSDavid E. O'BrienInstructions for configuring and building appear in 900db7afdSDavid E. O'Briendocs/html/install.html. 1000db7afdSDavid E. O'Brien 1100db7afdSDavid E. O'BrienThis directory contains the files needed to create an ISO Standard C++ 1200db7afdSDavid E. O'BrienLibrary. 1300db7afdSDavid E. O'Brien 1400db7afdSDavid E. O'BrienIt has subdirectories: 1500db7afdSDavid E. O'Brien 1600db7afdSDavid E. O'Brien docs 1700db7afdSDavid E. O'Brien Files in HTML and text format that document usage, quirks of the 1800db7afdSDavid E. O'Brien implementation, and contributor checklists. 1900db7afdSDavid E. O'Brien 2000db7afdSDavid E. O'Brien include 2100db7afdSDavid E. O'Brien All header files for the C++ library are within this directory, 2200db7afdSDavid E. O'Brien modulo specific runtime-related files that are in the libsupc++ 2300db7afdSDavid E. O'Brien directory. 2400db7afdSDavid E. O'Brien 2500db7afdSDavid E. O'Brien include/std 2600db7afdSDavid E. O'Brien Files meant to be found by #include <name> directives in 2700db7afdSDavid E. O'Brien standard-conforming user programs. 2800db7afdSDavid E. O'Brien 2900db7afdSDavid E. O'Brien include/c 3000db7afdSDavid E. O'Brien Headers intended to directly include standard C headers. 3100db7afdSDavid E. O'Brien [NB: this can be enabled via --enable-cheaders=c] 3200db7afdSDavid E. O'Brien 3300db7afdSDavid E. O'Brien include/c_std 3400db7afdSDavid E. O'Brien Headers intended to include standard C headers, and put select 3500db7afdSDavid E. O'Brien names into the std:: namespace. 3600db7afdSDavid E. O'Brien [NB: this is the default, and is the same as --enable-cheaders=c_std] 3700db7afdSDavid E. O'Brien 3800db7afdSDavid E. O'Brien include/bits 3900db7afdSDavid E. O'Brien Files included by standard headers and by other files in 4000db7afdSDavid E. O'Brien the bits directory. 4100db7afdSDavid E. O'Brien 4200db7afdSDavid E. O'Brien include/backward 4300db7afdSDavid E. O'Brien Headers provided for backward compatibility, such as <iostream.h>. 4400db7afdSDavid E. O'Brien They are not used in this library. 4500db7afdSDavid E. O'Brien 4600db7afdSDavid E. O'Brien include/ext 4700db7afdSDavid E. O'Brien Headers that define extensions to the standard library. No 4800db7afdSDavid E. O'Brien standard header refers to any of them. 4900db7afdSDavid E. O'Brien 50*ffeaf689SAlexander Kabaev scripts 51*ffeaf689SAlexander Kabaev Scripts that are used during the configure, build, make, or test 52*ffeaf689SAlexander Kabaev process. 53*ffeaf689SAlexander Kabaev 5400db7afdSDavid E. O'Brien src 5500db7afdSDavid E. O'Brien Files that are used in constructing the library, but are not 5600db7afdSDavid E. O'Brien installed. 5700db7afdSDavid E. O'Brien 58*ffeaf689SAlexander Kabaev testsuites/[backward, demangle, ext, performance, thread, 17_* to 27_*] 5900db7afdSDavid E. O'Brien Test programs are here, and may be used to begin to exercise the 6000db7afdSDavid E. O'Brien library. Support for "make check" and "make check-install" is 6100db7afdSDavid E. O'Brien complete, and runs through all the subdirectories here when this 6200db7afdSDavid E. O'Brien command is issued from the build directory. Please note that 6300db7afdSDavid E. O'Brien "make check" requires DejaGNU 1.4 or later to be installed. Please 6400db7afdSDavid E. O'Brien note that "make check-script" calls the script mkcheck, which 6500db7afdSDavid E. O'Brien requires bash, and which may need the paths to bash adjusted to 6600db7afdSDavid E. O'Brien work properly, as /bin/bash is assumed. 6700db7afdSDavid E. O'Brien 6800db7afdSDavid E. O'BrienOther subdirectories contain variant versions of certain files 6900db7afdSDavid E. O'Brienthat are meant to be copied or linked by the configure script. 7000db7afdSDavid E. O'BrienCurrently these are: 7100db7afdSDavid E. O'Brien 72*ffeaf689SAlexander Kabaev config/abi 7300db7afdSDavid E. O'Brien config/cpu 7400db7afdSDavid E. O'Brien config/io 7500db7afdSDavid E. O'Brien config/locale 76*ffeaf689SAlexander Kabaev config/os 7700db7afdSDavid E. O'Brien 78*ffeaf689SAlexander KabaevIn addition, two subdirectories are convenience libraries: 7900db7afdSDavid E. O'Brien 8000db7afdSDavid E. O'Brien libmath 8100db7afdSDavid E. O'Brien Support routines needed for C++ math. Only needed if the 8200db7afdSDavid E. O'Brien underlying "C" implementation is non-existent, in particular 8300db7afdSDavid E. O'Brien required or optimal long double, long long, and C99 functionality. 8400db7afdSDavid E. O'Brien 8500db7afdSDavid E. O'Brien libsupc++ 8600db7afdSDavid E. O'Brien Contains the runtime library for C++, including exception 8700db7afdSDavid E. O'Brien handling and memory allocation and deallocation, RTTI, terminate 8800db7afdSDavid E. O'Brien handlers, etc. 8900db7afdSDavid E. O'Brien 9000db7afdSDavid E. O'BrienNote that glibc also has a bits/ subdirectory. We will either 9100db7afdSDavid E. O'Brienneed to be careful not to collide with names in its bits/ 9200db7afdSDavid E. O'Briendirectory; or rename bits to (e.g.) cppbits/. 9300db7afdSDavid E. O'Brien 9400db7afdSDavid E. O'BrienIn files throughout the system, lines marked with an "XXX" indicate 9500db7afdSDavid E. O'Briena bug or incompletely-implemented feature. Lines marked "XXX MT" 9600db7afdSDavid E. O'Brienindicate a place that may require attention for multi-thread safety. 97