]> gcc.gnu.org Git - gcc.git/blame - libstdc++-v3/README
Makefile.am (sources): Add guard.cc.
[gcc.git] / libstdc++-v3 / README
CommitLineData
89e37ad7 1file: libstdc++-v3/README
b2dad0e3 2
c01bfdbf
BK
3New users may wish to point their web browsers to the file
4documentation.html in the 'docs/html' subdirectory. It contains brief
5building instructions and notes on how to configure the library in
6interesting ways.
b2dad0e3 7
9560d353
BK
8Instructions for configuring and building appear in
9docs/html/install.html.
b2dad0e3 10
9560d353
BK
11This directory contains the files needed to create an ISO Standard C++
12Library.
b2dad0e3
BK
13
14It has subdirectories:
15
89e37ad7 16 docs
c01bfdbf
BK
17 Files in HTML and text format that document usage, quirks of the
18 implementation, and contributor checklists.
19
20 include
21 All header files for the C++ library are within this directory,
22 modulo specific runtime-related files that are in the libsupc++
23 directory.
24
25 include/std
26 Files meant to be found by #include <name> directives in
27 standard-conforming user programs.
28
29 include/c
30 Headers intended to directly include standard C headers.
31 [NB: this can be enabled via --enable-cheaders=c]
32
33 include/c_std
34 Headers intended to include standard C headers, and put select
35 names into the std:: namespace.
36 [NB: this is the default, and is the same as --enable-cheaders=c_std]
37
38 include/c_shadow
39 Headers intended to shadow standard C headers provided by an
40 underlying OS or C library, and other headers depended on directly
41 by C++ headers (e.g. unistd.h). These are meant to wrap the names
42 defined there into the _C_legacy namespace.
43 [NB: this can be enabled via --enable-cheaders=c_shadow]
44
45 include/bits
46 Files included by standard headers and by other files in
47 the bits directory.
48
49 include/backward
50 Headers provided for backward compatibility, such as <iostream.h>.
51 They are not used in this library.
52
53 include/ext
54 Headers that define extensions to the standard library. No
55 standard header refers to any of them.
9560d353 56
b2dad0e3 57 src
c01bfdbf
BK
58 Files that are used in constructing the library, but are not
59 installed.
b2dad0e3 60
f5d09ce7 61 testsuites/[thread, 17_* to 27_*]
c01bfdbf
BK
62 Test programs are here, and may be used to begin to exercise the
63 library. Support for "make check" and "make check-install" is
64 complete, and runs through all the subdirectories here when this
65 command is issued from the build directory. Please note that
66 "make check" requires DejaGNU 1.4 or later to be installed. Please
67 note that "make check-script" calls the script mkcheck, which
68 requires bash, and which may need the paths to bash adjusted to
69 work properly, as /bin/bash is assumed.
b2dad0e3 70
b2dad0e3
BK
71Other subdirectories contain variant versions of certain files
72that are meant to be copied or linked by the configure script.
73Currently these are:
74
89e37ad7
BK
75 config/cpu
76 config/os
69bcf124
BK
77 config/io
78 config/locale
b2dad0e3 79
9560d353
BK
80In addition, three subdirectories are convenience libraries:
81
82 libio
c01bfdbf
BK
83 Contains the subset of the GNU libio library needed for
84 C++. Currently not used.
9560d353
BK
85
86 libmath
c01bfdbf 87 Support routines needed for C++ math. Only needed if the
251a817e
BK
88 underlying "C" implementation is non-existent, in particular
89 required or optimal long double, long long, and C99 functionality.
9560d353
BK
90
91 libsupc++
c01bfdbf
BK
92 Contains the runtime library for C++, including exception
93 handling and memory allocation and deallocation, RTTI, terminate
94 handlers, etc.
b2dad0e3 95
b2dad0e3
BK
96Note that glibc also has a bits/ subdirectory. We will either
97need to be careful not to collide with names in its bits/
98directory; or rename bits to (e.g.) cppbits/.
99
b2dad0e3
BK
100In files throughout the system, lines marked with an "XXX" indicate
101a bug or incompletely-implemented feature. Lines marked "XXX MT"
102indicate a place that may require attention for multi-thread safety.
This page took 0.225818 seconds and 5 git commands to generate.