index.html revision 8c21737c03f3b266d8679d56faa6b6d091e7f2f1
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
2          "http://www.w3.org/TR/html4/strict.dtd">
3<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
4<html>
5<head>
6  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
7  <title>"libc++" C++ Standard Library</title>
8  <link type="text/css" rel="stylesheet" href="menu.css">
9  <link type="text/css" rel="stylesheet" href="content.css">
10</head>
11
12<body>
13<div id="menu">
14  <div>
15    <a href="http://llvm.org/">LLVM Home</a>
16  </div>
17  
18  <div class="submenu">
19    <label>libc++ Info</label>
20    <a href="/index.html">About</a>
21  </div>
22
23  <div class="submenu">
24    <label>Quick Links</label>
25    <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">llvmdev</a>
26    <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">llvm-commits</a>
27    <a href="http://llvm.org/bugs/">Bug Reports</a>
28    <a href="http://llvm.org/svn/llvm-project/compiler-rt/trunk/">Browse SVN</a>
29    <a href="http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/">Browse ViewVC</a>
30  </div>
31</div>
32
33<div id="content">
34  <!--*********************************************************************-->
35  <h1>"libc++" C++ Standard Library</h1>
36  <!--*********************************************************************-->
37  
38  <p>libc++ is a new implementation of the C++ standard library, targeting
39     C++0X.</p>
40
41  <p>All of the code in libc++ is available under the standard
42     <a href="http://llvm.org/docs/DeveloperPolicy.html#license">LLVM
43     License</a>, a "BSD-style" license.</p>
44  
45  <!--=====================================================================-->
46  <h2 id="goals">Features and Goals</h2>
47  <!--=====================================================================-->
48  
49    <ul>
50        <li>Correctness as defined by the (currently draft) C++0X standard.</li>
51        <li>Fast execution.</li>
52        <li>Minimal memory use.</li>
53        <li>Fast compile times.</li>
54        <li>ABI compatibility with gcc's libstdc++ for some low-level features
55            such as exception objects, rtti and memory allocation.</li>
56        <li>Extensive unit tests.</li>
57    </ul>
58
59  <!--=====================================================================-->
60  <h2 id="requirements">Platform Support</h2>
61  <!--=====================================================================-->
62
63   <p>libc++ is known to work on the following platforms, using g++-4.2 and
64      clang (lack of C++0X language support disables some functionality).</p>
65
66    <ul>
67     <li>Mac OS X i386</li>
68     <li>Mac OS X x86_64</li>
69    </ul>
70
71  <!--=====================================================================-->
72  <h2 id="dir-structure">Current Status</h2>
73  <!--=====================================================================-->
74
75   <p>libc++ is still under development.  It has about 85% of
76      <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3092.pdf">N3092</a>
77      implemented/tested.</p>
78
79   <ul>
80        <li>Missing <code>&lt;future&gt;</code></li>
81        <li>Missing <code>&lt;regex&gt;</code></li>
82        <li>Under construction <code>&lt;random&gt;</code></li>
83   </ul>
84
85   <p>libc++ is currently dependent upon a separate library for the low-level
86      ABI compatibility with gcc.  As a workaround it can be linked against
87      gcc's libstdc++.</p>
88
89  <!--=====================================================================-->
90  <h2>Get it and get involved!</h2>
91  <!--=====================================================================-->
92  
93  <p>To check out the code, use:</p>
94  
95  <ul>
96  <li><code>svn co http://llvm.org/svn/llvm-project/libcpp/trunk libcpp</code></li>
97  <li><code>cd libcpp/lib</code></li>
98  <li><code>/buildit</code></li>
99  </ul>
100
101  <p>To run the libc++ test suit (recommended):</p>
102
103  <ul>
104  <li><code>cd libcpp/test</code></li>
105  <li><code>/testit</code></li>
106  </ul>
107
108  <p>Send discussions to the 
109  (<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev">clang mailing list</a>).</p>
110
111</div>
112</body>
113</html>