LLVM Public Release Project
     
                    
           
       
                  
                 
          
      This document is a list of things to do before the LLVM project is
publicly     released.  It will provide a checklist so that we know
what has been    done and what is left to be done.  It will also keep
a "wishlist" of   desirable features.                                    
 
     
       
                 
          The 
    list of things to do...                           
    
       
                 
                                   
  
                                                                    
    
                  - Write regression tests.
         - The gccld segfault from GlobalDCE.cpp.
- The infinite loop for Tail Recursion.
- The C++ constructor on dlopen() bug on Solaris.
 
- Get autoconf to configure source and build directories according 
 to normal autoconf procedures.
         - Get test tree to work properly when configuring for a different 
 object root.
- Get lex/yacc/etc output to be placed into the build tree, not
 the source tree.
 
- Test Suite
         - Move Test Suite to QMTest.
- Add Feature and Regression tests to nightly tester.
 
- Move the Reoptimizer code out of mainline CVS  and the release.
- Documentation
         - Write documentation on the LLVM tools.
- Review docs, ensuring that the information is up to date.
- GCC C Front End
 
- Licenses
         - Ensure all software in source tree has proper license.
 
         - Check licenses in test/Programs to ensure everything is good.
- Create license files for anything in the distribution that is
 not under our license.
 
- Ensure SafeCode builds.
- Create a system for managing development and releases
  (i.e. CVS   branching, labeling revisions, etc).
 
   
       
                 
                                   
  
             - Improve documentation on how to create an LLVM project.
 
- Testing
              - Cleanup Reoptimizer tests so that they fit into the framework.
 
- Create an installer for the 
software.
   
       
                 
                                   
  
             - GCC C Front End
         - Place the C front end into the CVS repository.
- Ensure that the C front end compiles and installs nicely.
- Add C++ support.
 
- Release Management
         - Find and implement a bug reporting system (i.e. Bugzilla).
- Make the projects/sample directory an actual example of LLVM code.
- Testing
         - Create descriptions of what each test is doing (test specifications).
 
- Test LLVM on various Linux distributions.
- Test LLVM on various Solaris distributions.
- Test LLVM on Solaris/x86.
 
- Licenses
         - Create a license for the UIUC specific LLVM code.
- Add a license file to the distribution.file.
- Documentation
         - Create man pages for the LLVM utilities.
- Create man pages for the LLVM libraries.
- Rewrite this page without Netscape Composer :)
 
John Criswell
            
  Last modified: Sat May 31 14:54:03 CDT 2003