Add warning about how you have to put cl::init after cl::location, if both
[oota-llvm.git] / docs / ReleaseTasks.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4   <title>LLVM Public Release Project</title>
5 </head>
6   <body bgcolor="white">
7                  
8 <center>        
9 <h1><font size="7">LLVM Public Release Project</font></h1>
10     </center>
11                   
12 <ul>
13            <li><a href="#what">What is this?</a>   </li>
14           <li><a href="#priorities">Priorities</a>                      
15                     
16     <ol>
17              <li><a href="#high">High Priority</a>     </li>
18               <li><a href="#medium">Medimum Priority</a>     </li>
19               <li><a href="#low">Low Priority</a>     </li>
20                                                
21     </ol>
22           </li>
23                
24 </ul>
25           <br>
26      <!-- *********************************************************************** -->
27                  
28 <table width="100%" bgcolor="#330077" border="0" cellpadding="4"
29  cellspacing="0">
30          <tbody>
31             <tr>
32               <td align="center"><font color="#eeeeff" size="+2"
33  face="Georgia,Palatino"><b> <a name="what">What is this? </a></b><a
34  name="what"></a></font></td>
35             </tr>
36                                
37   </tbody>        
38 </table>
39                
40 <ul>
41          <!-- *********************************************************************** --> 
42      This document is a list of things to do before the LLVM project is publicly
43     released. &nbsp;It will provide a checklist so that we know what has
44 been    done and what is left to be done. &nbsp;It will also keep a "wishlist"
45 of   desirable features.                                   
46   <p>   <!-- *********************************************************************** --> 
47       </p>
48                
49 </ul>
50                
51 <table width="100%" bgcolor="#330077" border="0" cellpadding="4"
52  cellspacing="0">
53          <tbody>
54             <tr>
55               <td align="center"><font color="#eeeeff" size="+2"
56  face="Georgia,Palatino"><b> <a name="priorities">Priorities</a></b><a
57  name="improving"></a></font></td>
58             </tr>
59                                
60   </tbody>        
61 </table>
62                
63 <ul>
64          <!-- *********************************************************************** -->The
65     list of things to do...                        
66   <p>  <!-- ======================================================================= --> 
67       </p>
68                
69 </ul>
70                
71 <table width="50%" bgcolor="#441188" border="0" cellpadding="4"
72  cellspacing="0">
73          <tbody>
74             <tr>
75               <td>&nbsp;</td>
76               <td width="100%">&nbsp;&nbsp;<font color="#eeeeff"
77  size="+1" face="Georgia,Palatino"><b><a name="high">High Priority</a></b><a
78  name="glibc"></a></font></td>
79             </tr>
80                                
81   </tbody>        
82 </table>
83                
84 <ul>
85                                
86   <ul>
87                                                               
88     <ul>
89                                                                         
90               
91     </ul>
92                  <li>Fix currently known bugs and write regression tests.</li>
93            
94     <ul>
95         <li>The gccld segfault from GlobalDCE.cpp.</li>
96         <li>The infinite loop for Tail Recursion.</li>
97         <li>The C++ constructor on dlopen() bug on Solaris.<br>
98         </li>
99            
100     </ul>
101             <li>Get autoconf to configure source and build directories according
102  to normal autoconf procedures.</li>
103            
104     <ul>
105         <li>Get test tree to work properly when configuring for a different
106  object root.</li>
107         <li>Get lex/yacc/etc output to be placed into the build tree, not 
108 the source tree.<br>
109         </li>
110            
111     </ul>
112       <li>Test Suite</li>
113            
114     <ul>
115         <li>Create a nightly tester for Sparc.</li>
116         <li>Modify the test suite to have consistent output.</li>
117         <li>Add Pass/Fail tests to nightly tester.<br>
118         </li>
119         <li>Make the USE_SPEC option work for the test directory.</li>
120         <li>Cleanup test/Programs.</li>
121            
122     </ul>
123       <li>Move the pool allocator and Reoptimizer code out of mainline CVS
124  and the release.</li>
125      <li>Add autoconf checks to ensure that the compiler is GCC 3.x or higher.<br>
126      </li>
127       <li>Documentation</li>
128            
129     <ul>
130         <li>Write documentation on the LLVM tools.</li>
131         <li>Review docs, ensuring that the information is up to date.</li>
132            
133     </ul>
134       <li>GCC C Front End<br>
135       </li>
136            
137     <ul>
138         <li>Create a fix (i.e. better hack) for the sys/select.h hack.</li>
139            
140     </ul>
141       <li>Licenses</li>
142            
143     <ul>
144         <li>Ensure all software in source tree has proper license.<br>
145         </li>
146            
147     </ul>
148            
149     <ul>
150         <li>Check licenses in test/Programs to ensure everything is good.</li>
151         <li>Create license files for anything in the distribution that is 
152 not under our license.<br>
153         </li>
154            
155     </ul>
156       <li>Ensure SafeCode builds.</li>
157                      <li>Create a system for managing development and releases 
158  (i.e. CVS   branching, labeling revisions, etc).<br>
159             </li>
160                                
161   </ul>
162                                
163   <p>   <!-- ======================================================================= --> 
164       </p>
165                
166 </ul>
167                
168 <table width="50%" bgcolor="#441188" border="0" cellpadding="4"
169  cellspacing="0">
170          <tbody>
171             <tr>
172               <td>&nbsp;</td>
173               <td width="100%">&nbsp;&nbsp;<font color="#eeeeff"
174  size="+1" face="Georgia,Palatino"><b><a name="medium">Medium Priority</a></b><a
175  name="NightlyTest"></a></font></td>
176             </tr>
177                                
178   </tbody>        
179 </table>
180                
181 <ul>
182                                
183   <ul>
184             <li>Improve documentation on how to create an LLVM project.<br>
185    </li>
186             <li>Testing</li>
187                                          
188     <ul>
189              <li>Cleanup Reoptimizer tests so that they fit into the framework.<br>
190             </li>
191                                                           
192     </ul>
193                                          <li>Create an installer for the
194 software.</li>
195       <li>Put autoconf files into a separate directory (i.e. not llvm).<br>
196       </li>
197                                          
198   </ul>
199                                
200   <p>   <!-- ======================================================================= --> 
201       </p>
202                
203 </ul>
204                
205 <table width="50%" bgcolor="#441188" border="0" cellpadding="4"
206  cellspacing="0">
207          <tbody>
208             <tr>
209               <td>&nbsp;</td>
210               <td width="100%">&nbsp;&nbsp;<font color="#eeeeff"
211  size="+1" face="Georgia,Palatino"><b><a name="low">Low Priority</a></b><a
212  name="programs"></a></font></td>
213             </tr>
214                                
215   </tbody>        
216 </table>
217                
218 <ul>
219                                
220   <ul>
221             <li>GCC C Front End</li>
222            
223     <ul>
224         <li>Place the C front end into the CVS repository.</li>
225         <li>Ensure that the C front end compiles and installs nicely.</li>
226         <li>Add C++ support.<br>
227         </li>
228            
229     </ul>
230       <li>Release Management</li>
231            
232     <ul>
233         <li>Find and implement a bug reporting system (i.e. Bugzilla).</li>
234            
235     </ul>
236       <li>Make the projects/sample directory an actual example of LLVM code.</li>
237                       <li>Testing</li>
238            
239     <ul>
240         <li>Create descriptions of what each test is doing (test specifications).<br>
241         </li>
242         <li>Test LLVM on various Linux distributions.</li>
243         <li>Test LLVM on various Solaris distributions.</li>
244         <li>Test LLVM on Solaris/x86.<br>
245         </li>
246            
247     </ul>
248             <li>Licenses</li>
249            
250     <ul>
251         <li>Create a license for the UIUC specific LLVM code.</li>
252         <li>Add a license file to the distribution.</li>
253         <li>Add a copyright notice and license information to each source 
254  file.</li>
255            
256     </ul>
257                                <li>Documentation</li>
258            
259     <ul>
260         <li>Create man pages for the LLVM utilities.</li>
261         <li>Create man pages for the LLVM libraries.</li>
262            
263     </ul>
264     <li>Rewrite this page without Netscape Composer :)<br>
265     </li>
266                                
267   </ul>
268                
269 </ul>
270         <font size-1="">         
271 <address><a href="mailto:criswell@cs.uiuc.edu">John Criswell</a></address>
272          <!-- Created: Tue Aug  6 15:00:33 CDT 2002 --> <!-- hhmts start -->
273   Last modified: Sat May 31 14:54:03 CDT 2003 <!-- hhmts end --></font> <br>
274        <br>
275        <br>
276     <br>
277    <br>
278   <br>
279  <br>
280 </body>
281 </html>