]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/libstdc++-v3/contrib/libstdc++-v3-4.7/doc/html/manual/source_organization.html
update
[l4.git] / l4 / pkg / libstdc++-v3 / contrib / libstdc++-v3-4.7 / doc / html / manual / source_organization.html
1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml"><head><title>Directory Layout and Source Conventions</title><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"/><meta name="keywords" content="&#10;      ISO C++&#10;    , &#10;      library&#10;    "/><meta name="keywords" content="&#10;      ISO C++&#10;    , &#10;      runtime&#10;    , &#10;      library&#10;    "/><link rel="home" href="../index.html" title="The GNU C++ Library"/><link rel="up" href="appendix_contributing.html" title="Appendix A.  Contributing"/><link rel="prev" href="appendix_contributing.html" title="Appendix A.  Contributing"/><link rel="next" href="source_code_style.html" title="Coding Style"/></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Directory Layout and Source Conventions</th></tr><tr><td align="left"><a accesskey="p" href="appendix_contributing.html">Prev</a> </td><th width="60%" align="center">Appendix A. 
4   Contributing
5   
6 </th><td align="right"> <a accesskey="n" href="source_code_style.html">Next</a></td></tr></table><hr/></div><div class="section" title="Directory Layout and Source Conventions"><div class="titlepage"><div><div><h2 class="title"><a id="contrib.organization"/>Directory Layout and Source Conventions</h2></div></div></div><p>
7     The unpacked source directory of libstdc++ contains the files
8     needed to create the GNU C++ Library.
9   </p><div class="literallayout"><p><br/>
10 It has subdirectories:<br/>
11 <br/>
12   doc<br/>
13     Files in HTML and text format that document usage, quirks of the<br/>
14     implementation, and contributor checklists.<br/>
15 <br/>
16   include<br/>
17     All header files for the C++ library are within this directory,<br/>
18     modulo specific runtime-related files that are in the libsupc++<br/>
19     directory.<br/>
20 <br/>
21     include/std<br/>
22       Files meant to be found by #include &lt;name&gt; directives in<br/>
23       standard-conforming user programs.<br/>
24 <br/>
25     include/c<br/>
26       Headers intended to directly include standard C headers.<br/>
27       [NB: this can be enabled via --enable-cheaders=c]<br/>
28 <br/>
29     include/c_global<br/>
30       Headers intended to include standard C headers in<br/>
31       the global namespace, and put select names into the std::<br/>
32       namespace.  [NB: this is the default, and is the same as<br/>
33       --enable-cheaders=c_global]<br/>
34 <br/>
35     include/c_std<br/>
36       Headers intended to include standard C headers<br/>
37       already in namespace std, and put select names into the std::<br/>
38       namespace.  [NB: this is the same as --enable-cheaders=c_std]<br/>
39 <br/>
40     include/bits<br/>
41       Files included by standard headers and by other files in<br/>
42       the bits directory.<br/>
43 <br/>
44     include/backward<br/>
45       Headers provided for backward compatibility, such as &lt;iostream.h&gt;.<br/>
46       They are not used in this library.<br/>
47 <br/>
48     include/ext<br/>
49       Headers that define extensions to the standard library.  No<br/>
50       standard header refers to any of them.<br/>
51 <br/>
52   scripts<br/>
53     Scripts that are used during the configure, build, make, or test<br/>
54     process.<br/>
55 <br/>
56   src<br/>
57     Files that are used in constructing the library, but are not<br/>
58     installed.<br/>
59 <br/>
60   testsuites/[backward, demangle, ext, performance, thread, 17_* to 30_*]<br/>
61     Test programs are here, and may be used to begin to exercise the<br/>
62     library.  Support for "make check" and "make check-install" is<br/>
63     complete, and runs through all the subdirectories here when this<br/>
64     command is issued from the build directory.  Please note that<br/>
65     "make check" requires DejaGNU 1.4 or later to be installed.  Please<br/>
66     note that "make check-script" calls the script mkcheck, which<br/>
67     requires bash, and which may need the paths to bash adjusted to<br/>
68     work properly, as /bin/bash is assumed.<br/>
69 <br/>
70 Other subdirectories contain variant versions of certain files<br/>
71 that are meant to be copied or linked by the configure script.<br/>
72 Currently these are:<br/>
73 <br/>
74   config/abi<br/>
75   config/cpu<br/>
76   config/io<br/>
77   config/locale<br/>
78   config/os<br/>
79 <br/>
80 In addition, a subdirectory holds the convenience library libsupc++.<br/>
81 <br/>
82   libsupc++<br/>
83     Contains the runtime library for C++, including exception<br/>
84     handling and memory allocation and deallocation, RTTI, terminate<br/>
85     handlers, etc.<br/>
86 <br/>
87 Note that glibc also has a bits/ subdirectory.  We will either<br/>
88 need to be careful not to collide with names in its bits/<br/>
89 directory; or rename bits to (e.g.) cppbits/.<br/>
90 <br/>
91 In files throughout the system, lines marked with an "XXX" indicate<br/>
92 a bug or incompletely-implemented feature.  Lines marked "XXX MT"<br/>
93 indicate a place that may require attention for multi-thread safety.<br/>
94   </p></div></div><div class="navfooter"><hr/><table width="100%" summary="Navigation footer"><tr><td align="left"><a accesskey="p" href="appendix_contributing.html">Prev</a> </td><td align="center"><a accesskey="u" href="appendix_contributing.html">Up</a></td><td align="right"> <a accesskey="n" href="source_code_style.html">Next</a></td></tr><tr><td align="left" valign="top">Appendix A. 
95   Contributing
96   
97  </td><td align="center"><a accesskey="h" href="../index.html">Home</a></td><td align="right" valign="top"> Coding Style</td></tr></table></div></body></html>