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...            
     
    
       
               
  
              - Modify the build environment so that the LLVM utilities 
can be built  outside of the research group.  This entails:
          - Modify the build environment so that it does not use absolute 
 paths.
- Make the build environment more configurable via Makefile.config.
 
- Add support for dynamic build configuration (i.e. autoconf
or  imake support).
- Ensure that all build types (debug, optimized, profile) work
correctly.
 
- Ensure that the C front end compiles and installs nicely.
- Place the C front end into the CVS repository.
 
- Get the Reoptimizer code to work, ensuring that it does not rely
  upon code outside of the source tree.
 
- Create a structure that allows for the easy addition of outside 
 projects to the LLVM source tree.
- Create a system for managing development and releases (i.e. CVS 
 branching, labeling revisions, etc).
 
    
    
       
               
  
        - Improve the testing framework.
         - Cleanup Reoptimizer tests so that they fit into the framework.
 
- Create descriptions of what each test is doing (test specifications).
- Get the Reoptimizer tests to compile under x86.
 
- Determine which sub-projects of LLVM will be distributed.
- Review and update documentation.
- Create an installer for the software.
 
    
    
       
               
  
        - Find and implement a bug reporting system (i.e. Bugzilla).
- Test installations on various Linux distributions.
- Create a license for the UIUC specific LLVM code.
- Add a license file to the distribution.
- Add a copyright notice and license information to each source 
file.
- Create man pages for the LLVM utilities.
 
John Criswell
      
Last modified: Sat May 31 14:54:03 CDT 2003